---
title: "Analyze - Unidet"
method: POST
path: "/analyze/unidet"
tags: ["Analysis"]
---

# Analyze - Unidet

`POST /analyze/unidet`

Analyze an image using the [Unidet](https://cloudinary.com/documentation/cloudinary_ai_content_analysis_addon#ai_based_image_captioning) content-aware detection model. The [UniDet](https://github.com/xingyizhou/UniDet) model is a unified model, combining a number of object models, including [Objects365](https://www.objects365.org/overview.html), which focuses on diverse objects in the wild.

## Request body

- AnalyzeUnidetRequest
  - `source` union, required
    - object
      - `asset_id` string, required — The asset ID to analyze
      - `uri` string, uri — The URI of the asset to analyze
    - object
      - `asset_id` string — The asset ID to analyze
      - `uri` string, uri, required — The URI of the asset to analyze
  - `async` boolean — Whether to perform the analysis asynchronously. If true, the response is returned immediately and analysis is done in the background. Once complete, a webhook notification will be sent to the specified URL and/or to the URLs defined in the Webhook Notifications settings of your Cloudinary Console.
  - `notification_url` string — The webhook URL to notify when the analysis is complete. Only relevant when async is set to true.

## Response `200`

Analysis succeeded

- AnalyzeUnidetResponse, nullable
  - `data` object
    - `entity` string
    - `analysis` UnidetAnalysisData
      - `tags` object, required
      - `model_version` integer
  - `limits` LimitsObject, nullable
    - `items` object[]
      - `type` 'google_tagging' | 'object_detection' | 'ai_vision', required
      - `used_by_request` integer, nullable — The amount of quota used by the current request
      - `remaining` integer, nullable — The remaining quota
      - `limit` integer, nullable — The total quota limit
      - `reset_time` string, date-time, nullable — Time in UTC when the limit will be reset
  - `request_id` string

## Other responses

- `202` — Analysis accepted
- `400` — Bad request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not found
- `429` — Rate limited
- `500` — Internal server error

---

[API](https://skmtc.net/cloudinary/apis/analyze-api-beta.md) · [All operations](https://skmtc.net/cloudinary/apis/analyze-api-beta/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/cloudinary/analyze-api-beta/versions/b54402e987f1/schema)
