apyhub
Back
ARTIFICIAL INTELLIGENCE

AI Image Objects Detection API

Hosted on ApyHub

What it does

Visual Object Detection identifies common objects in an image sent as a file upload or by URL. Send a file or a url, and choose which detector to use with requested_service (azure, google, or apyhub).

Use this service when you need to label images, filter uploads, or add image understanding to workflows that depend on object recognition. The file-based endpoint also accepts provider credentials where needed: Azure fields such as azure_key, azure_region, azure_endpoint, azure_account_id, and azure_access_token, plus google_key. The URL-based endpoint accepts nested azure and google credential objects, including Google service-account JSON and an optional google_language.

The response returns a data object with provider-specific results under azure, apyhub, and google. That lets you route results from the detector you selected without guessing at the response shape.

Typical uses include moderating user uploads, auto-tagging product photos, and building image search or inventory pipelines where you need basic object labels from a remote image or uploaded file.

Provider (requested_service)Atoms
Azure500
Google500
ApyHub2000
▣ ENDPOINT 01 / 02
POST
Detect common visual objects (file upload)
https://api.eu.apyhub.com/apyhub/detect-common-visual-objects/file

QUICKSTART

GUIDE

Quickstart

Upload one image file to detect common visual objects.

curl -X POST "https://api.eu.apyhub.com/apyhub/detect-common-visual-objects/file" \
  -H "apy-token: $APY_TOKEN" \
  -F "file=@/path/to/image.jpg"

What you'll get back

Returns a JSON object with a data object field. That data object may contain azure, apyhub, and/or google objects, depending on which detection service responds.

{
  "data": {
    "apyhub": {}
  }
}
TRY ITLIVE · 500 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.
body*

About this endpoint

What it does

Uploads an image file and runs common visual object detection against the selected service. The response returns a JSON object with a data object containing service-specific result objects for azure, apyhub, and google.

Request Body

ParameterTypeMandatoryDescription
fileStringYesBinary image file to analyze.
azure_keyStringNoAzure key.
google_keyStringNoGoogle key.
azure_regionStringNoAzure region.
azure_endpointStringNoAzure endpoint URL.
azure_account_idStringNoAzure account ID.
requested_serviceENUMNoService to use for detection. Allowed values: azure, google, apyhub. Default: apyhub.
azure_access_tokenStringNoAzure access token.

Response

Returns a JSON object with a data object field. The data object may include azure, apyhub, and google object fields, each representing the corresponding service's response object.

ParameterTypeMandatoryDescription
dataObjectNoContainer for service-specific detection results.
data.azureObjectNoResponse object from Microsoft Azure Computer Vision.
data.apyhubObjectNoResponse object from ApyHub Vision detector.
data.googleObjectNoResponse object from Google Cloud Vision.

Body

Name
Type
Description
bodyREQUIRED
object

Max 100MB total per request (all files combined). Larger? Use this API's URL-based endpoint instead, if it has one.

▣ ENDPOINT 02 / 02
POST
Detect common visual objects (URL input)
https://api.eu.apyhub.com/apyhub/detect-common-visual-objects/url

QUICKSTART

GUIDE

Quickstart

Send an image URL to detect common visual objects in it.

curl -X POST "https://api.eu.apyhub.com/apyhub/detect-common-visual-objects/url" \
  -H "apy-token: $APY_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"url":"https://assets.apyhub.com/samples/sample.png"}'

What you'll get back

Returns a JSON object with a data object. The data field may contain azure, apyhub, and google objects, depending on which detector response is returned.

{
  "data": {
    "apyhub": {}
  }
}
TRY ITLIVE · 500 ATOMS
Loading your default key…
The full key is used to call the gateway and stays in this tab — never sent to orbit or saved.
body*
azure
Custom credentials for Azure services.
Azure subscription key.
Azure service region.
Azure endpoint URL.
google
Custom credentials for Google services.
google_credential_json

About this endpoint

What it does

Detects common visual objects in an image referenced by URL. You provide the image URL in the request body and can choose which service to use; the response returns a JSON object with a data object containing the provider-specific result object.

Request Body

ParameterTypeMandatoryDescription
urlStringYesImage URL to analyze. Format: URI.
azureObjectNoCustom credentials for Azure services.
azure.keyStringNoAzure subscription key.
azure.regionStringNoAzure service region.
azure.endpointStringNoAzure endpoint URL.
azure.account_idStringNoAzure account ID.
azure.access_tokenStringNoOAuth access token for Azure service.
googleObjectNoCustom credentials for Google services.
google.google_languageStringNoTarget language locale.
google.google_credential_jsonObjectNoGoogle service account credential JSON. See schema for nested fields.
requested_serviceENUMNoService to use. Allowed values: azure, google, apyhub. Default: apyhub.

Response

Returns a JSON object with a data object field. The data object may contain azure, apyhub, and/or google result objects depending on the service used.

ParameterTypeMandatoryDescription
dataObjectNoContainer for provider-specific response objects.
data.azureObjectNoResponse object from Microsoft Azure Computer Vision.
data.apyhubObjectNoResponse object from ApyHub Vision detector.
data.googleObjectNoResponse object from Google Cloud Vision.

Body

Name
Type
Description
bodyREQUIRED
object
▣ COMMON ERRORS

Errors any endpoint can return

400bad_request

Required parameter missing or malformed body.

401unauthorized

API key missing, revoked, or not authorized for this service.

429rate_limited

Your plan's per-second rate exceeded. Retry with exponential backoff.

503upstream_busy

Backend temporarily unavailable. Try again in a few seconds.