Loading...
Animal Detect logo

Batch Filter Urban

1 credit / image
POST /api/v1/batch-filter-urban

Best for urban, indoor, roadside, zoo, farm, and other human-modified image sets when you want fast empty-vs-object screening.

Try in Playground

Required Parameters

  • images (file[] | base64[]) Array of 1-10 images. Combined raw image limit is 10MB.

Optional Parameters

  • country (string) Optional shared geofencing hint (CCA2/CCA3/full country name).
  • threshold (number) Confidence threshold between 0.01 and 0.99. Default: 0.2.
  • metadata (boolean) Optional. Set to `true` to include available image metadata on each batch result item.

Supports multipart/form-data (`images` repeated) and application/json with base64 string array. Set `metadata=true` to request available image metadata on each batch result item. This Vertex-backed route accepts combined raw image payloads up to 10MB.

Status Codes

200Batch filtering completed.
400Validation error (empty list, too many images, invalid threshold).
413Batch payload too large for the Vertex-backed request limit.
401Invalid, missing, or revoked API key.
402Credit limit exceeded.
429Rate limit exceeded.
503Upstream Vertex service error.
  • When `metadata=true`, each batch result item includes a `metadata` object only for the fields that image actually contains.
Node.js / Express
const form = new FormData()
form.append('images', firstFile)
form.append('images', secondFile)
form.append('threshold', '0.2')
form.append('metadata', 'true')

const response = await fetch('https://www.animaldetect.com/api/v1/batch-filter-urban', {
  method: 'POST',
  headers: {
    Authorization: 'Bearer ' + process.env.ANIMAL_DETECT_API_KEY,
  },
  body: form,
})

const data = await response.json()

Example Response

JSON
{
  "id": "6be17806-c5cf-4416-9865-529e6d8ac08c",
  "expires_at": "2026-03-12T09:44:20.954Z",
  "results": [
    {
      "index": 0,
      "filename": "street-1.jpg",
      "detections": [],
      "metadata": {
        "image_width": 4000,
        "image_height": 3000,
        "file_size": 2456789
      },
      "info": {
        "processing_time_ms": 297,
        "model_version": "mdv5",
        "model_id": "mdv5",
        "threshold_applied": 0.2
      }
    }
  ],
  "info": {
    "total_processed": 1,
    "total_time_ms": 297,
    "model_version": "mdv5",
    "model_id": "mdv5",
    "threshold_applied": 0.2
  }
}