{"models":[{"id":"caption-fast","name":"Caption Fast","description":"Lightweight captioning + visual question-answering. Sub-second responses, ideal for high-volume pipelines.","tasks":["caption","vqa"],"credits_per_call":2,"input_fields":{"image_url":"string (required)","question":"string (optional — for VQA)"},"output_fields":{"answer":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=caption-fast","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=caption-fast","title":"Caption Fast request","type":"object","properties":{"model_id":{"type":"string","const":"caption-fast"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"question":{"type":"string"}},"required":["model_id","image_url"],"additionalProperties":false}},{"id":"caption-pro","name":"Caption Pro","description":"Larger vision-language model. Accurate VQA, OCR, and detailed image analysis when fidelity matters more than speed.","tasks":["vqa","ocr","caption"],"credits_per_call":3,"input_fields":{"image_url":"string (required)","prompt":"string (required)"},"output_fields":{"output":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=caption-pro","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=caption-pro","title":"Caption Pro request","type":"object","properties":{"model_id":{"type":"string","const":"caption-pro"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","image_url"],"anyOf":[{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}},{"id":"vision-omni","name":"Vision Omni","description":"Multimodal model with strong reasoning and structured-output support. Pair an image with a prompt and get a reasoned answer.","tasks":["vqa","caption","reasoning"],"credits_per_call":4,"input_fields":{"image_url":"string (required)","prompt":"string (required)"},"output_fields":{"text":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=vision-omni","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=vision-omni","title":"Vision Omni request","type":"object","properties":{"model_id":{"type":"string","const":"vision-omni"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","image_url"],"anyOf":[{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}},{"id":"multimodal-omni","name":"Multimodal Omni","description":"Full multimodal model — accepts image, audio, and video input simultaneously with strong reasoning.","tasks":["vqa","caption","reasoning","multimodal"],"credits_per_call":4,"input_fields":{"image_url":"string (required)","prompt":"string (required)"},"output_fields":{"text":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=multimodal-omni","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=multimodal-omni","title":"Multimodal Omni request","type":"object","properties":{"model_id":{"type":"string","const":"multimodal-omni"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","image_url"],"anyOf":[{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}},{"id":"detect","name":"Detect","description":"Vision foundation detector. Returns bounding boxes + labels for every object in the image — no prompt needed.","tasks":["detection"],"credits_per_call":2,"input_fields":{"image_url":"string (required)"},"output_fields":{"results.bboxes":"array of { label, bbox }"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=detect","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=detect","title":"Detect request","type":"object","properties":{"model_id":{"type":"string","const":"detect"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"question":{"type":"string"}},"required":["model_id","image_url"],"additionalProperties":false}},{"id":"detect-targeted","name":"Detect Targeted","description":"Targeted detector. Provide a text label and it returns an annotated image with bounding boxes for that specific object.","tasks":["detection"],"credits_per_call":2,"input_fields":{"image_url":"string (required)","object":"string (required — e.g. \"car\", \"person\")"},"output_fields":{"image":"annotated image URL"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=detect-targeted","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=detect-targeted","title":"Detect Targeted request","type":"object","properties":{"model_id":{"type":"string","const":"detect-targeted"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"object":{"type":"string"},"question":{"type":"string"}},"required":["model_id","image_url"],"anyOf":[{"required":["object"]},{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}},{"id":"detect-pro","name":"Detect Pro","description":"Frontier detection model. Returns structured bounding boxes (x_min, y_min, x_max, y_max) plus a visualised output image.","tasks":["detection"],"credits_per_call":2,"input_fields":{"image_url":"string (required)","prompt":"string (required — e.g. \"traffic lights\")"},"output_fields":{"objects":"array of { label, x_min, y_min, x_max, y_max }","image":"visualised image URL"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=detect-pro","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=detect-pro","title":"Detect Pro request","type":"object","properties":{"model_id":{"type":"string","const":"detect-pro"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","image_url"],"anyOf":[{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}},{"id":"safety-classifier","name":"Safety Classifier","description":"Fast binary safety classifier. Returns a boolean flag — safe or unsafe. Checks up to 10 images at once.","tasks":["moderation"],"credits_per_call":2,"input_fields":{"image_url":"string (required)"},"output_fields":{"result.is_nsfw":"boolean"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=safety-classifier","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=safety-classifier","title":"Safety Classifier request","type":"object","properties":{"model_id":{"type":"string","const":"safety-classifier"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"question":{"type":"string"}},"required":["model_id","image_url"],"additionalProperties":false}},{"id":"caption-detailed","name":"Caption Detailed","description":"Frontier captioning model. Auto-generates a long-form, detailed caption for any image — no prompt required.","tasks":["caption"],"credits_per_call":2,"input_fields":{"image_url":"string (required)","length":"\"short\" | \"normal\" | \"long\" (optional, default: normal)"},"output_fields":{"result.text":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=caption-detailed","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=caption-detailed","title":"Caption Detailed request","type":"object","properties":{"model_id":{"type":"string","const":"caption-detailed"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"length":{"type":"string","enum":["short","normal","long"]},"question":{"type":"string"}},"required":["model_id","image_url"],"additionalProperties":false}},{"id":"query-pro","name":"Query Pro","description":"Frontier visual question-answering. Ask any question about an image and get a reasoned answer.","tasks":["vqa"],"credits_per_call":2,"input_fields":{"image_url":"string (required)","prompt":"string (required — question to ask)"},"output_fields":{"result.text":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=query-pro","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=query-pro","title":"Query Pro request","type":"object","properties":{"model_id":{"type":"string","const":"query-pro"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","image_url"],"anyOf":[{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}},{"id":"vision-next","name":"Vision Next","description":"Next-generation vision model. Supports both auto-captioning and visual Q&A via task_type.","tasks":["caption","vqa"],"credits_per_call":2,"input_fields":{"image_url":"string (required)","task_type":"\"caption\" | \"query\" (optional — defaults to \"caption\" with no prompt, \"query\" when prompt is provided)","prompt":"string (required when task_type is \"query\")"},"output_fields":{"result.text":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=vision-next","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=vision-next","title":"Vision Next request","type":"object","properties":{"model_id":{"type":"string","const":"vision-next"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"task_type":{"type":"string","enum":["caption","query"]},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","image_url"],"additionalProperties":false}},{"id":"safety-probability","name":"Safety Probability","description":"Fine-grained safety probability scorer. Returns a 0–1 float instead of a binary flag — useful for threshold-based moderation pipelines.","tasks":["moderation"],"credits_per_call":2,"input_fields":{"image_url":"string (required)"},"output_fields":{"result.is_nsfw":"boolean (probability > 0.5)","result.nsfw_probability":"number (0–1)"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=safety-probability","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=safety-probability","title":"Safety Probability request","type":"object","properties":{"model_id":{"type":"string","const":"safety-probability"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"image_url":{"type":"string","format":"uri"},"question":{"type":"string"}},"required":["model_id","image_url"],"additionalProperties":false}},{"id":"multimodal-video","name":"Multimodal Video","description":"NVIDIA Nemotron Omni for video understanding. Pair a video clip with a prompt and get a reasoned answer about its contents.","tasks":["vqa","caption","reasoning"],"credits_per_call":4,"input_fields":{"video_url":"string (required — HTTPS URL to a public video)","prompt":"string (required)"},"output_fields":{"result.text":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=multimodal-video","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=multimodal-video","title":"Multimodal Video request","type":"object","properties":{"model_id":{"type":"string","const":"multimodal-video"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"video_url":{"type":"string","format":"uri"},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","video_url"],"anyOf":[{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}},{"id":"multimodal-audio","name":"Multimodal Audio","description":"NVIDIA Nemotron Omni for audio understanding. Pair an audio clip with a prompt and get a reasoned answer about its contents.","tasks":["vqa","caption","reasoning"],"credits_per_call":4,"input_fields":{"audio_url":"string (required — HTTPS URL to a public audio file)","prompt":"string (required)"},"output_fields":{"result.text":"string"},"api_gross_margin_percent":20,"schema_url":"/api/v1/vision?model_id=multimodal-audio","input_schema":{"$schema":"https://json-schema.org/draft/2020-12/schema","$id":"https://www.artemotion.ai/api/v1/vision?model_id=multimodal-audio","title":"Multimodal Audio request","type":"object","properties":{"model_id":{"type":"string","const":"multimodal-audio"},"webhook_url":{"type":"string","format":"uri","maxLength":2048},"webhook_secret":{"type":"string","maxLength":512},"audio_url":{"type":"string","format":"uri"},"prompt":{"type":"string"},"question":{"type":"string"}},"required":["model_id","audio_url"],"anyOf":[{"required":["prompt"]},{"required":["question"]}],"additionalProperties":false}}],"version":"1","rate_limit":"20 req/min"}