AuthenticationNone (public, read-only)
BasePOST → ProductIntelligenceApi backend function (action-routed)
VersioningEvery response carries api_version (semver). Additive-only changes.
RatePagination max 50 per page

search_products

Search approved products by keyword, brand, ingredient, concern, skin type, or category. Supports pagination & sorting.

Params: q, brand, category, ingredient, concern, skin_type, sort (name|brand|created|updated|confidence, prefix - for desc), page, page_size (max 50)

{"action":"search_products","q":"retinol","page":1,"page_size":3}

get_product

Get a single product by canonical product id.

Params: canonical_product_id (string)

⚠ Use a canonical_product_id returned by search_products.

{"action":"get_product","canonical_product_id":"<paste a canonical_product_id from a search result>"}

get_products_by_ids

Bulk retrieve up to 100 products by canonical id in a single request. One DB query, requested order preserved, duplicates ignored, unknown IDs omitted. Same product schema as get_product.

Params: canonical_product_ids (string[], max 100)

⚠ Limits: max 100 IDs/request · duplicates ignored · unknown IDs omitted · Draft/Unpublished/Inactive/non-Production never exposed.

{"action":"get_products_by_ids","canonical_product_ids":["<id1>","<id2>","<id3>"]}

list_brands

All distinct brands with product counts.

Params: none

{"action":"list_brands"}

get_api_docs

Machine-readable endpoint metadata.

Params: none

{"action":"get_api_docs"}

Product response fields

canonical_product_idproduct_namebrandcategorydescriptionai_summaryingredient_summarykey_ingredientsingredientsskin_concernsskin_typescontraindicationsroutine_positionconfidence_scoreproduct_imagesmanufacturer_urlpurchase_urlaffiliate_urlretail_pricecurrencysizeapproval_statuspublishing_statusactivelast_updatedcreated_datelegacy_source_system

Before you continue — important notice

DermaGenome provides AI-assisted skincare guidance reviewed by licensed specialists. By using this platform you agree to our terms and acknowledge the following:

✓Not a substitute for medical advice or diagnosis
✓Photos processed by AI for skincare analysis only
✓Specialist recommendations are professional opinions, not prescriptions
✓Data retained per our Privacy Policy — delete anytime in Settings