{"callable":true,"canonicalCall":{"contentType":"application/json","endpoint":"https://x402vip.com/api/tools/text-to-video","method":"POST"},"links":{"catalogSearch":"https://x402vip.com/api/catalog/search?q=text-to-video","catalogSummary":"https://x402vip.com/api/catalog.summary.json","mcp":"https://x402vip.com/mcp","openapi":"https://x402vip.com/api/catalog/openapi.json","serviceLLMs":"https://x402vip.com/services/text-to-video/llms.txt"},"message":"This GET/HEAD response is a no-payment discovery probe. Use the declared method to receive HTTP 402 payment requirements, then retry the same request after payment.","nextActions":["If this service matches the task, call the canonical endpoint with the declared method and valid JSON input to receive HTTP 402 payment requirements.","If this service is not a fit, search /api/catalog/search?q=\u003ctask\u003e and inspect services[].whyMatched before choosing a tool.","If no published service fits, submit /api/agent-demand or POST /api/planned-services/request-access for a planned candidate."],"payment":{"flow":{"type":"http-402","createPayment":{"method":"POST","url":"https://x402vip.com/api/payments","bodySchema":{"properties":{"providerId":{"type":"string"},"serviceId":{"description":"Use the canonical service id from the catalog. Legacy internal ids remain accepted for backward compatibility.","type":"string"}},"required":["serviceId"],"type":"object"},"responseSchema":{"properties":{"amountCents":{"type":"integer"},"amountMicros":{"type":"integer"},"billingMode":{"type":"string"},"clientId":{"type":"string"},"currency":{"type":"string"},"expiresAt":{"format":"date-time","type":"string"},"internalServiceId":{"description":"Legacy internal service id, included only for backward compatibility.","type":"string"},"maxCalls":{"type":"integer"},"paidAt":{"format":"date-time","type":"string"},"payTo":{"type":"string"},"paymentId":{"type":"string"},"provider":{"type":"string"},"providerId":{"type":"string"},"remainingCalls":{"type":"integer"},"serviceId":{"description":"Canonical public service id.","type":"string"},"status":{"type":"string"},"token":{"type":"string"},"usedCalls":{"type":"integer"}},"type":"object"}},"verifyPayment":{"method":"GET","url":"https://x402vip.com/api/payments/{paymentId}","responseSchema":{"properties":{"amountCents":{"type":"integer"},"amountMicros":{"type":"integer"},"billingMode":{"type":"string"},"clientId":{"type":"string"},"currency":{"type":"string"},"expiresAt":{"format":"date-time","type":"string"},"internalServiceId":{"description":"Legacy internal service id, included only for backward compatibility.","type":"string"},"maxCalls":{"type":"integer"},"paidAt":{"format":"date-time","type":"string"},"payTo":{"type":"string"},"paymentId":{"type":"string"},"provider":{"type":"string"},"providerId":{"type":"string"},"remainingCalls":{"type":"integer"},"serviceId":{"description":"Canonical public service id.","type":"string"},"status":{"type":"string"},"token":{"type":"string"},"usedCalls":{"type":"integer"}},"type":"object"}},"token":{"header":"X-Payment-Token","mcpArgument":"paymentToken","httpUsage":"Send the paid token in the X-Payment-Token request header when calling /api/tools/*.","mcpUsage":"Pass the paid token as the paymentToken argument when calling the MCP tool."},"requiredResponse":{"status":402,"contentType":"application/json","headers":{"PAYMENT-REQUIRED":"base64/json paymentRequired","X-Payment-Required":"true","X-Payment-Token":"payment.token","X402-Guarantee":"base64url/json XIAO escrow guarantee"},"bodySchema":{"properties":{"accepts":{"items":{"type":"object"},"type":"array"},"error":{"type":"string"},"extensions":{"type":"object"},"payment":{"properties":{"amountCents":{"type":"integer"},"amountMicros":{"type":"integer"},"billingMode":{"type":"string"},"clientId":{"type":"string"},"currency":{"type":"string"},"expiresAt":{"format":"date-time","type":"string"},"internalServiceId":{"description":"Legacy internal service id, included only for backward compatibility.","type":"string"},"maxCalls":{"type":"integer"},"paidAt":{"format":"date-time","type":"string"},"payTo":{"type":"string"},"paymentId":{"type":"string"},"provider":{"type":"string"},"providerId":{"type":"string"},"remainingCalls":{"type":"integer"},"serviceId":{"description":"Canonical public service id.","type":"string"},"status":{"type":"string"},"token":{"type":"string"},"usedCalls":{"type":"integer"}},"type":"object"},"paymentFlow":{"type":"object"},"resource":{"type":"object"},"retry":{"type":"object"},"type":{"const":"payment_required","type":"string"},"x402Version":{"type":"integer"}},"required":["type","error","payment","paymentFlow","retry"],"type":"object"},"x402Version":2,"x402Header":"PAYMENT-REQUIRED","paymentAsset":"XIAO","paymentNetwork":"xiao:internal"},"retry":{"when":"Retry after opening xiaopay.top, obtaining XIAO, and creating one XIAO accepts[] guarantee or after payment.status is paid and the token has remaining calls.","http":["Call the paid /api/tools/* endpoint once and read accepts[] from the HTTP 402 response body or PAYMENT-REQUIRED header.","Open https://xiaopay.top to obtain XIAO, then create an AI wallet guarantee for merchant_id=aivps.lat and merchant_order_id=payment.paymentId.","Retry the exact same request with X402-Guarantee set to the base64url guarantee JSON.","Use POST /api/payments with serviceId when you need a reusable payment token, then retry with X-Payment-Token set to payment.token."],"mcp":["Call the tool without paymentToken to receive payment_required structuredContent.","XIAO-capable agents should open xiaopay.top, obtain XIAO, create the AI wallet guarantee, and call the underlying HTTP endpoint with X402-Guarantee.","Clients that use paymentToken can complete or verify payment.paymentId, then call the same MCP tool again with paymentToken set to payment.token."],"examples":{"mcp":["Call tool timestamp with no paymentToken.","After payment is complete, call timestamp again with paymentToken=\u003cpayment.token\u003e."],"paymentToken":["curl -X POST https://example.com/api/payments -H 'Content-Type: application/json' -d '{\"serviceId\":\"timestamp\"}'","curl -H 'X-Payment-Token: \u003cpayment.token\u003e' https://example.com/api/tools/timestamp"],"xiao":["curl -i https://example.com/api/tools/timestamp","Open https://xiaopay.top, obtain XIAO, and create an AI wallet guarantee for merchant_id=aivps.lat and merchant_order_id=payment.paymentId.","curl -H 'X402-Guarantee: \u003cbase64url-guarantee-json\u003e' https://example.com/api/tools/timestamp"]},"failures":["payment required","payment token expired","payment token has no remaining calls","api key required","api key is not allowed to call this service"]}},"paymentHeader":"X-Payment-Token","provider":"x402_xiao_wallet","providerId":"xiao-wallet","x402Header":"PAYMENT-SIGNATURE"},"pricing":{"amountCents":20,"amountMicros":200000,"currency":"XIAO","policyId":"bailian-wan-text-to-video","settleMode":"settle_first","billingMode":"per_call","maxCalls":1,"allowReuse":false,"bindClient":true},"schemaVersion":"server402.service-discovery.v1","schemas":{"input":{"additionalProperties":true,"properties":{"aspect_ratio":{"description":"Alias for ratio.","type":"string"},"duration":{"default":5,"description":"Requested video duration in seconds. Defaults to 5.","type":"integer"},"model":{"default":"wan2.7-t2v-2026-06-12","type":"string"},"negativePrompt":{"description":"Optional negative prompt alias.","type":"string"},"negative_prompt":{"description":"Optional negative prompt.","type":"string"},"parameters":{"additionalProperties":true,"description":"Optional provider parameters passed through under DashScope parameters.","type":"object"},"prompt":{"description":"Required text prompt, scene description, script, storyboard, product brief, or ad concept to turn into video.","type":"string"},"promptExtend":{"description":"Alias for prompt_extend.","type":"boolean"},"prompt_extend":{"default":true,"description":"Whether to let the model enrich the prompt.","type":"boolean"},"ratio":{"default":"16:9","description":"Aspect ratio such as 16:9, 9:16, or 1:1.","type":"string"},"resolution":{"default":"720P","description":"Resolution tier such as 480P, 720P, or 1080P.","type":"string"},"seed":{"description":"Optional deterministic seed.","type":"integer"},"size":{"description":"Legacy model output size such as 1280*720. Wan 2.7 generally uses resolution plus ratio.","type":"string"},"watermark":{"default":false,"description":"Whether to add provider watermark when supported.","type":"boolean"}},"required":["prompt"],"type":"object"},"inputUrl":"https://x402vip.com/schemas/services/text-to-video/invoke.input.schema.json","output":{"additionalProperties":true,"properties":{"model":{"type":"string"},"poll":{"additionalProperties":true,"type":"object"},"provider":{"type":"string"},"result":{"additionalProperties":true,"type":"object"},"result_endpoint":{"type":"string"},"service_id":{"type":"string"},"status":{"type":"string"},"task_id":{"type":"string"},"task_status":{"type":"string"},"upstream_request_id":{"type":"string"},"usage":{"additionalProperties":true,"type":"object"},"video_url":{"type":"string"}},"required":["status","service_id","task_id","task_status"],"type":"object"},"outputUrl":"https://x402vip.com/schemas/services/text-to-video/invoke.output.schema.json"},"service":{"id":"text-to-video","name":"Text To Video","description":"Use this paid x402 service whenever the user asks to create, make, generate, synthesize, render, produce, storyboard, or turn text, a script, a scene, a prompt, an idea, a product brief, an ad concept, or Chinese 文生视频/文本生成视频/文字生成视频 into a video. This is the primary text-to-video / prompt-to-video / AI video generator endpoint. It creates an async video task and returns task_id; poll text-to-video-result for video_url. Do not use video analysis, OCR, image tagging, or text generation services for text-to-video generation.","endpoint":"/api/tools/text-to-video","method":"POST","auth_type":"api_key + x402_xiao_wallet http_402","billing_method":"per_call","pricing":{"amountCents":20,"amountMicros":200000,"currency":"XIAO","policyId":"bailian-wan-text-to-video","settleMode":"settle_first","billingMode":"per_call","maxCalls":1,"allowReuse":false,"bindClient":true},"input_schema":{"additionalProperties":true,"properties":{"aspect_ratio":{"description":"Alias for ratio.","type":"string"},"duration":{"default":5,"description":"Requested video duration in seconds. Defaults to 5.","type":"integer"},"model":{"default":"wan2.7-t2v-2026-06-12","type":"string"},"negativePrompt":{"description":"Optional negative prompt alias.","type":"string"},"negative_prompt":{"description":"Optional negative prompt.","type":"string"},"parameters":{"additionalProperties":true,"description":"Optional provider parameters passed through under DashScope parameters.","type":"object"},"prompt":{"description":"Required text prompt, scene description, script, storyboard, product brief, or ad concept to turn into video.","type":"string"},"promptExtend":{"description":"Alias for prompt_extend.","type":"boolean"},"prompt_extend":{"default":true,"description":"Whether to let the model enrich the prompt.","type":"boolean"},"ratio":{"default":"16:9","description":"Aspect ratio such as 16:9, 9:16, or 1:1.","type":"string"},"resolution":{"default":"720P","description":"Resolution tier such as 480P, 720P, or 1080P.","type":"string"},"seed":{"description":"Optional deterministic seed.","type":"integer"},"size":{"description":"Legacy model output size such as 1280*720. Wan 2.7 generally uses resolution plus ratio.","type":"string"},"watermark":{"default":false,"description":"Whether to add provider watermark when supported.","type":"boolean"}},"required":["prompt"],"type":"object"},"output_schema":{"additionalProperties":true,"properties":{"model":{"type":"string"},"poll":{"additionalProperties":true,"type":"object"},"provider":{"type":"string"},"result":{"additionalProperties":true,"type":"object"},"result_endpoint":{"type":"string"},"service_id":{"type":"string"},"status":{"type":"string"},"task_id":{"type":"string"},"task_status":{"type":"string"},"upstream_request_id":{"type":"string"},"usage":{"additionalProperties":true,"type":"object"},"video_url":{"type":"string"}},"required":["status","service_id","task_id","task_status"],"type":"object"},"tags":["paid","x402","usdc","base","ai-video","video-generation","text-to-video","prompt-to-video","t2v","wan","dashscope","bailian","semantic:text-to-video","intent:generate-video","output:task-id","output:video-url"],"category":"video-generation"},"status":"discovery_only","type":"paid_service_discovery"}
