Optimizations
Optimizations are AI-generated improvements to product content. Each optimization follows a lifecycle: pending, approved or rejected, then applied or reverted.
The optimization model
The optimization model contains the AI-generated content suggestions, their status in the approval workflow, and the rationale behind each change.
Properties
-
- Name
id- Type
- string
- Description
-
- Name
product_id- Type
- string
- Description
-
- Name
product_title- Type
- string
- Description
-
- Name
field- Type
- string
- Description
-
- Name
status- Type
- string
- Description
-
- Name
score_before- Type
- integer
- Description
-
- Name
score_after- Type
- integer
- Description
-
- Name
approved_at- Type
- string
- Description
-
- Name
applied_at- Type
- string
- Description
-
- Name
reverted_at- Type
- string
- Description
-
- Name
created_at- Type
- string
- Description
-
- Name
updated_at- Type
- string
- Description
-
- Name
original_content- Type
- string
- Description
-
- Name
optimized_content- Type
- string
- Description
-
- Name
rejection_reason- Type
- string
- Description
-
- Name
shopify_error- Type
- string
- Description
-
- Name
image_shopify_id- Type
- integer
- Description
-
- Name
approved_by_name- Type
- string
- Description
Optimizations follow a strict status machine: pending → approved → applied or pending → rejected. Applied optimizations can be reverted.
GET
/v1/optimizations
List optimizations
Returns a paginated list of optimizations
Optional parameters
-
- Name
page- Type
- integer
- Description
-
- Name
per_page- Type
- integer
- Description
-
- Name
status- Type
- string
- Description
- One of
pending,approved,rejected,applied,reverted.
-
- Name
field- Type
- string
- Description
- One of
title,description,alt_text,meta_title,meta_description,tags,product_type,og_title,og_description.
-
- Name
product_id- Type
- string
- Description
-
- Name
since- Type
- string
- Description
Request
GET
/v1/optimizations
curl -G \
https://beaconed.ai/api/v1/optimizations \
-H "Authorization: Bearer {token}"
GET
/v1/optimizations/{id}
Get an optimization
Returns detailed information about an optimization
Request
GET
/v1/optimizations/{id}
curl https://beaconed.ai/api/v1/optimizations/{id} \
-H "Authorization: Bearer {token}"
POST
/v1/optimizations/{id}/approval
Approve an optimization
Approves a pending optimization
Request
POST
/v1/optimizations/{id}/approval
curl -X POST \
https://beaconed.ai/api/v1/optimizations/{id}/approval \
-H "Authorization: Bearer {token}"
POST
/v1/optimizations/{id}/rejection
Reject an optimization
Rejects a pending optimization
Optional attributes
-
- Name
reason- Type
- string
- Description
- Reason for rejection
Request
POST
/v1/optimizations/{id}/rejection
curl -X POST \
https://beaconed.ai/api/v1/optimizations/{id}/rejection \
-H "Authorization: Bearer {token}" \
-H "Content-Type: application/json" \
-d '{"reason": "Content does not match brand voice"}'
POST
/v1/optimizations/{id}/application
Apply an optimization
Pushes an approved optimization to Shopify
Request
POST
/v1/optimizations/{id}/application
curl -X POST \
https://beaconed.ai/api/v1/optimizations/{id}/application \
-H "Authorization: Bearer {token}"
POST
/v1/optimizations/{id}/reversion
Revert an optimization
Reverts an applied optimization back to original content
Request
POST
/v1/optimizations/{id}/reversion
curl -X POST \
https://beaconed.ai/api/v1/optimizations/{id}/reversion \
-H "Authorization: Bearer {token}"