Agoda API endpoint
Returns full activity detail from Agoda: title, description, stated duration, categories, and content images.
/agoda/activities/{activity_id}Path parameters:
activity_id (required) — numeric Agoda activity id, from a prior
activities search call's activity_id field (e.g. 1633875).Notable response behavior:
activity_id must be numeric; a non-numeric or non-positive value
returns 400 before any upstream request is made.404.duration and categories are exactly as Agoda's own content API
returns them (a display-oriented duration pair, not a structured
min/max range; categories are Agoda's own category codes, e.g.
FoodAndDrinks).images is a best-effort list of content images (up to 10); an activity
with no supplier-provided images returns an empty list.| Field | Filled in, of 10 checked | Values in the sample |
|---|---|---|
| url | 10 | pix6.agoda.net |
| image_type | 10 | UNKNOWN in all 10 |
| Parameter | Type | Required | Default | Description | Example |
|---|---|---|---|---|---|
| activity_id (path) | string | Yes | Numeric Agoda activity id, from a prior activities search call's activity_id field | 1633875 | |
| x-api-key (header) | string | Yes | API key required |
curl -X GET "https://api.crawlora.net/api/v1/agoda/activities/1633875" \ -H "x-api-key: $CRAWLORA_API_KEY"
{
"code": 200,
"msg": "OK",
"data": {
"activity_id": 1633875,
"title": "Bangkok Chim Chum | Bangkok",
"description": "<ul><li>Savor Bangkok Chim Chum's delicious Thai hot pot.</li></ul>",
"duration": {
"minutes": 60,
"type": "FIXED"
},
"categories": [
"FoodAndDrinks"
],
"images": [
{
"url": "https://pix6.agoda.net/generic/08092caf37fb2f99eb46f81fd210201e.png?ce=3",
"image_type": "SUPPLIER"
}
],
"source_url": "https://www.agoda.com/search?selectedActivity=1633875"
}
}Request schema
No body schema
Response schema
#/definitions/agoda.ActivityDetailResponse
| Field | Type | Required | Enum | Bounds | Example | Description |
|---|---|---|---|---|---|---|
| activity_id | integer | No | 1633875 | |||
| categories | array | No | FoodAndDrinks | |||
| description | string | No | ||||
| duration | agoda.ActivityDuration | No | ||||
| duration.minutes | integer | No | 60 | |||
| duration.type | string | No | FIXED | |||
| images | array | No | ||||
| images[].description | string | No | ||||
| images[].image_type | string | No | SUPPLIER | |||
| images[].url | string | No | https://pix6.agoda.net/generic/08092caf37fb2f99eb46f81fd210201e.png?ce=3 | |||
| source_url | string | No | https://www.agoda.com/search?selectedActivity=1633875 | SourceURL is a best-effort Agoda deep link built from the activity id alone (this detail call does not itself return a cityId to build the richer cityId+selectedActivity link ActivitiesSearch returns). | ||
| title | string | No | Bangkok Chim Chum | Bangkok |
| Status | Description | Schema |
|---|---|---|
| 400 | Bad Request | #/definitions/app.Response |
| 404 | Not Found | #/definitions/app.Response |
| 500 | Internal Server Error | #/definitions/app.Response |
| 503 | Service Unavailable | #/definitions/app.Response |
Use environment variables for secrets and keep Crawlora API keys server-side.
curl -X GET "https://api.crawlora.net/api/v1/agoda/activities/1633875" \
-H "x-api-key: $CRAWLORA_API_KEY"