# Special

Special product features (360° images, image transformation)

## Retrieve 360-degree product images

> Returns a list of images for 360-degree product viewing functionality.\
> \
> \*\*360° Product Views:\*\*\
> Enables interactive product visualization where customers can rotate the product view. The images are typically:\
> \* Captured at fixed angle intervals (e.g., every 10°)\
> \* Sequenced for smooth rotation animation\
> \* Optimized for web viewing\
> \
> \*\*Response:\*\*\
> \* \`activate\`: Boolean indicating if 360° view is available\
> \* \`images\`: Array of image URLs in rotation sequence\
> \
> \*\*Usage:\*\*\
> Client-side JavaScript libraries can use the image sequence to create an interactive 360° viewer.

```json
{"openapi":"3.1.0","info":{"title":"Product API - Product Catalog & Detail Information","version":"1.0.0"},"tags":[{"name":"Special","description":"Special product features (360° images, image transformation)"}],"servers":[{"description":"Commerce API Server","url":"https://{commerce_url}","variables":{"commerce_url":{"default":"sandbox.akinon.com","description":"Commerce server URL (e.g., your-store.akinon.com)"}}}],"paths":{"/product/360/{code}/":{"get":{"tags":["Special"],"operationId":"getProduct360Images","summary":"Retrieve 360-degree product images","description":"Returns a list of images for 360-degree product viewing functionality.\n\n**360° Product Views:**\nEnables interactive product visualization where customers can rotate the product view. The images are typically:\n* Captured at fixed angle intervals (e.g., every 10°)\n* Sequenced for smooth rotation animation\n* Optimized for web viewing\n\n**Response:**\n* `activate`: Boolean indicating if 360° view is available\n* `images`: Array of image URLs in rotation sequence\n\n**Usage:**\nClient-side JavaScript libraries can use the image sequence to create an interactive 360° viewer.","parameters":[{"name":"code","in":"path","required":true,"description":"Product code for 360° image lookup.\n\nMust be alphanumeric (no slashes or special characters).","schema":{"type":"string","pattern":"^[a-zA-Z0-9]+$"}}],"responses":{"200":{"description":"360° images retrieved successfully","content":{"application/json":{"schema":{"$ref":"#/components/schemas/Product360Response"}}}},"400":{"description":"Invalid code format.\n\nThe code must be alphanumeric without special characters."}}}}},"components":{"schemas":{"Product360Response":{"type":"object","description":"Response containing 360-degree product image information.","required":["activate","images"],"properties":{"activate":{"type":"boolean","description":"Indicates if 360° viewing is available for this product.\n\nWhen false, the `images` array will be empty."},"images":{"type":"array","description":"Ordered list of image URLs for 360° rotation.\n\nImages should be displayed in sequence to create the rotation effect.\nTypical sequences contain 24-72 images (representing 15° or 5° intervals).","items":{"type":"string","format":"uri"}}}}}}}
```

## Proxy request to image transformation service

> Proxies requests to an external image transformation service (Bukalemun).\
> \
> \*\*Behavior:\*\*\
> This endpoint acts as a pass-through proxy. All query parameters are forwarded directly to the configured external image service \*(Source: Dynamic/Real-time Configuration - BUKALEMUN\_CONFIG)\*.\
> \
> \*\*Configuration:\*\*\
> The external service URL and path are configured via \`BUKALEMUN\_CONFIG\` setting:\
> \* \`base\_url\`: Base URL of the image service\
> \* \`path\`: Service endpoint path (default: \`/polo\_js/\`)\
> \
> \*\*Note:\*\*\
> The available query parameters depend on the external image service configuration. This endpoint does not validate or transform the parameters - they are passed through as-is to the external service.

```json
{"openapi":"3.1.0","info":{"title":"Product API - Product Catalog & Detail Information","version":"1.0.0"},"tags":[{"name":"Special","description":"Special product features (360° images, image transformation)"}],"servers":[{"description":"Commerce API Server","url":"https://{commerce_url}","variables":{"commerce_url":{"default":"sandbox.akinon.com","description":"Commerce server URL (e.g., your-store.akinon.com)"}}}],"paths":{"/bukalemun/":{"get":{"tags":["Special"],"operationId":"getBukalemunImage","summary":"Proxy request to image transformation service","description":"Proxies requests to an external image transformation service (Bukalemun).\n\n**Behavior:**\nThis endpoint acts as a pass-through proxy. All query parameters are forwarded directly to the configured external image service *(Source: Dynamic/Real-time Configuration - BUKALEMUN_CONFIG)*.\n\n**Configuration:**\nThe external service URL and path are configured via `BUKALEMUN_CONFIG` setting:\n* `base_url`: Base URL of the image service\n* `path`: Service endpoint path (default: `/polo_js/`)\n\n**Note:**\nThe available query parameters depend on the external image service configuration. This endpoint does not validate or transform the parameters - they are passed through as-is to the external service.","parameters":[],"responses":{"200":{"description":"Image URL retrieved successfully from external service","content":{"application/json":{"schema":{"$ref":"#/components/schemas/BukalemunResponse"}}}},"502":{"description":"External service error.\n\nThe upstream image service returned an error or is unavailable."}}}}},"components":{"schemas":{"BukalemunResponse":{"type":"object","description":"Response containing the transformed image URL.","required":["image_url"],"properties":{"image_url":{"type":"string","format":"uri","description":"URL of the transformed image.\n\nThis URL can be used directly in `<img>` tags or CSS backgrounds.\nThe transformed image is cached for performance."}}}}}}
```


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://apidocs.akinon.com/commerce-openapis/products/special.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
