curl --request POST \ --url https://toapis.com/v1/uploads/images \ --header 'Authorization: Bearer <token>' \ --form 'file=@/path/to/your/image.jpg'
{ "success": true, "message": "", "data": { "id": "upload_abc12345", "url": "https://files.toapis.com/uploads/123/1737568800_abc12345.jpg", "mime_type": "image/jpeg", "size": 89234 } }
上传图片获取 URL,用于图像/视频生成接口
Authorization: Bearer YOUR_API_KEY
generation
显示 返回数据
image/jpeg
import requests import time API_KEY = "your-ToAPIs-key" BASE_URL = "https://toapis.com" # 第一步:上传参考图片 def upload_image(file_path): with open(file_path, 'rb') as f: response = requests.post( f"{BASE_URL}/v1/uploads/images", headers={"Authorization": f"Bearer {API_KEY}"}, files={"file": f} ) return response.json()['data']['url'] # 第二步:创建生成任务 def create_generation(image_url, prompt): response = requests.post( f"{BASE_URL}/v1/images/generations", headers={ "Authorization": f"Bearer {API_KEY}", "Content-Type": "application/json" }, json={ "model": "gemini-3-pro-image-preview", "prompt": prompt, "image_urls": [{"url": image_url}], "size": "16:9" } ) return response.json()['id'] # 第三步:轮询任务状态 def wait_for_result(task_id): while True: response = requests.get( f"{BASE_URL}/v1/images/generations/{task_id}", headers={"Authorization": f"Bearer {API_KEY}"} ) result = response.json() if result['status'] == 'completed': return result['data']['url'] elif result['status'] == 'failed': raise Exception(f"生成失败: {result.get('fail_reason')}") time.sleep(2) # 执行工作流 image_url = upload_image("reference.jpg") print(f"✅ 图片已上传: {image_url}") task_id = create_generation(image_url, "将这张照片转换为赛博朋克风格") print(f"✅ 任务已创建: {task_id}") result_url = wait_for_result(task_id) print(f"✅ 生成完成: {result_url}")