{
    "schema_version": "1.0",
    "name": "Curly Sale",
    "description": "CGM product aggregator and navigator for Spain. Compares prices across 10+ specialized stores, analyzes ingredient compatibility with the Curly Girl Method, and monitors discounts.",
    "url": "https://curly.sale",
    "type": "product-aggregator",
    "locale": "es-ES",
    "currency": "EUR",
    "updated_at": "2026-06-01T11:47:47+02:00",
    "stats": {
        "products_count": 14,
        "tools_count": 7,
        "discounts_active": 332
    },
    "agent_files": {
        "llms_txt": "https://curly.sale/llms.txt",
        "agents_md": "https://curly.sale/agents.md",
        "sitemap": "https://curly.sale/sitemap_index.xml"
    },
    "capabilities": [
        "product-search",
        "ingredient-analysis",
        "price-comparison",
        "discount-monitoring",
        "cgm-score-lookup",
        "hair-type-filtering",
        "brand-filtering",
        "affiliate-redirect"
    ],
    "not_supported": [
        "checkout",
        "cart",
        "payment",
        "ucp",
        "shop-pay"
    ],
    "api": {
        "base_url": "https://curly.sale/wp-json/curly/v1/",
        "auth_required": false,
        "rate_limit": "60 req/min per IP",
        "endpoints": [
            {
                "method": "GET",
                "path": "/prices/discounts",
                "description": "Active product discounts across monitored stores",
                "params": {
                    "min_discount": "integer, default 10",
                    "limit": "integer, default 12, max 48",
                    "currency": "string, default EUR"
                },
                "freshness_ttl_hours": 72
            }
        ]
    },
    "taxonomies": {
        "hair_types": [
            {
                "slug": "ondulado",
                "label": "Wavy 2A-2B",
                "url": "/pelo/ondulado/"
            },
            {
                "slug": "rizado",
                "label": "Curly 2C-3A",
                "url": "/pelo/rizado/"
            },
            {
                "slug": "muy-rizado",
                "label": "Very Curly 3B-3C",
                "url": "/pelo/muy-rizado/"
            },
            {
                "slug": "afro",
                "label": "Afro 4A-4C",
                "url": "/pelo/afro/"
            },
            {
                "slug": "muy-afro",
                "label": "Very Afro 4Z",
                "url": "/pelo/muy-afro/"
            }
        ],
        "product_types": [
            {
                "slug": "accesorios-adornos",
                "label": "Accesorios y Adornos",
                "url": "/productos/accesorios-adornos/"
            },
            {
                "slug": "aceite-capilar",
                "label": "Aceite Capilar",
                "url": "/productos/aceite-capilar/"
            },
            {
                "slug": "acondicionador",
                "label": "Acondicionador",
                "url": "/productos/acondicionador/"
            },
            {
                "slug": "activador-rizos",
                "label": "Activador de Rizos",
                "url": "/productos/activador-rizos/"
            },
            {
                "slug": "champu-sin-sulfatos",
                "label": "Champús para pelo rizado sin sulfatos",
                "url": "/productos/champu-sin-sulfatos/"
            },
            {
                "slug": "cowash",
                "label": "Cowash",
                "url": "/productos/cowash/"
            },
            {
                "slug": "crema-peinar",
                "label": "Crema de Peinar",
                "url": "/productos/crema-peinar/"
            },
            {
                "slug": "gel-rizos",
                "label": "Gel para Rizos",
                "url": "/productos/gel-rizos/"
            },
            {
                "slug": "leave-in",
                "label": "Leave-In",
                "url": "/productos/leave-in/"
            },
            {
                "slug": "mascarilla",
                "label": "Mascarilla",
                "url": "/productos/mascarilla/"
            },
            {
                "slug": "peine-cepillo",
                "label": "Peine y Cepillo",
                "url": "/productos/peine-cepillo/"
            },
            {
                "slug": "plantas-arcillas-tintes",
                "label": "Plantas, Arcillas y Tintes",
                "url": "/productos/plantas-arcillas-tintes/"
            },
            {
                "slug": "tratamiento",
                "label": "Tratamiento",
                "url": "/productos/tratamiento/"
            }
        ],
        "tool_types": [
            {
                "slug": "cepillos-rizos",
                "label": "Cepillos para Rizos",
                "url": "/herramientas/cepillos-rizos/"
            },
            {
                "slug": "difusores",
                "label": "Difusores",
                "url": "/herramientas/difusores/"
            },
            {
                "slug": "gorros-saten",
                "label": "Gorros y Fundas de Satén",
                "url": "/herramientas/gorros-saten/"
            },
            {
                "slug": "peines-rizos",
                "label": "Peines para Rizos",
                "url": "/herramientas/peines-rizos/"
            },
            {
                "slug": "secadores",
                "label": "Secadores con Difusor",
                "url": "/herramientas/secadores/"
            },
            {
                "slug": "toallas-microfibra",
                "label": "Toallas de Microfibra",
                "url": "/herramientas/toallas-microfibra/"
            }
        ]
    },
    "brands": [
        {
            "slug": "cantu",
            "label": "Cantu",
            "url": "/marcas/cantu/",
            "product_count": 9
        },
        {
            "slug": "afroricci",
            "label": "AfroRicci",
            "url": "/marcas/afroricci/",
            "product_count": 4
        },
        {
            "slug": "k89",
            "label": "K89",
            "url": "/marcas/k89/",
            "product_count": 1
        },
        {
            "slug": "la-nueva-perfecta",
            "label": "La Nueva Perfecta",
            "url": "/marcas/la-nueva-perfecta/",
            "product_count": 1
        },
        {
            "slug": "schwarzkopf-professional",
            "label": "Schwarzkopf Professional",
            "url": "/marcas/schwarzkopf-professional/",
            "product_count": 1
        },
        {
            "slug": "shea-moisture",
            "label": "Shea Moisture",
            "url": "/marcas/shea-moisture/",
            "product_count": 1
        },
        {
            "slug": "acemelia",
            "label": "Acemelia",
            "url": "/marcas/acemelia/",
            "product_count": 1
        },
        {
            "slug": "carmen-cosmeticos",
            "label": "Carmen Cosméticos",
            "url": "/marcas/carmen-cosmeticos/",
            "product_count": 1
        },
        {
            "slug": "umberto-giannini",
            "label": "Umberto Giannini",
            "url": "/marcas/umberto-giannini/",
            "product_count": 1
        },
        {
            "slug": "renee-blanche",
            "label": "Reneé Blanche",
            "url": "/marcas/renee-blanche/",
            "product_count": 1
        }
    ],
    "top_products": [
        {
            "title": "Acemelia Aceite de Camelia Bio 50ml",
            "url": "https://curly.sale/producto/acemelia-aceite-de-camelia-bio-50ml/",
            "cgm_score": 100,
            "product_type": "Aceite Capilar",
            "brand": "Acemelia",
            "min_price_eur": 33.99
        },
        {
            "title": "AfroRicci Ciao Bellissima Bálsamo Districante, Maschera e Co-Wash 100ml",
            "url": "https://curly.sale/producto/afroricci-ciao-bellissima-balsamo-districante-maschera-e-co-wash-100ml/",
            "cgm_score": 100,
            "product_type": "Acondicionador",
            "brand": "AfroRicci",
            "min_price_eur": 7.69
        },
        {
            "title": "AfroRicci Ciao Bellissima Bálsamo Districante, Maschera e Co-Wash 300ml",
            "url": "https://curly.sale/producto/afroricci-ciao-bellissima-balsamo-districante-maschera-e-co-wash-300ml/",
            "cgm_score": 100,
            "product_type": "Acondicionador",
            "brand": "AfroRicci",
            "min_price_eur": 13.99
        },
        {
            "title": "AfroRicci Ciao Bellissima Crema Definizione Chantilly 300ml",
            "url": "https://curly.sale/producto/afroricci-ciao-bellissima-crema-definizione-chantilly-300ml/",
            "cgm_score": 100,
            "product_type": "Crema de Peinar",
            "brand": "AfroRicci",
            "min_price_eur": 17.49
        },
        {
            "title": "AfroRicci Ciao Bellissima Gel Sérum Activo Rizado 250ml",
            "url": "https://curly.sale/producto/afroricci-ciao-bellissima-gel-serum-activo-rizado-250ml/",
            "cgm_score": 100,
            "product_type": "Gel para Rizos",
            "brand": "AfroRicci",
            "min_price_eur": 15.39
        },
        {
            "title": "Cantu Anti Fade Color Protecting Oil 4oz",
            "url": "https://curly.sale/producto/cantu-anti-fade-color-protecting-oil-4oz/",
            "cgm_score": 100,
            "product_type": "Aceite Capilar",
            "brand": "Cantu",
            "min_price_eur": null
        },
        {
            "title": "Cantu Avocado Hydrating Hair Milk 355ml",
            "url": "https://curly.sale/producto/cantu-avocado-hydrating-hair-milk-355ml/",
            "cgm_score": 100,
            "product_type": "Leave-In",
            "brand": "Cantu",
            "min_price_eur": null
        },
        {
            "title": "Cantu Flaxseed Smoothing Cream Gel 453g",
            "url": "https://curly.sale/producto/cantu-flaxseed-smoothing-cream-gel-453g/",
            "cgm_score": 100,
            "product_type": "Gel para Rizos",
            "brand": "Cantu",
            "min_price_eur": 8.29
        },
        {
            "title": "Carmen Cosméticos Mousse Activadora de Rizos 150ml",
            "url": "https://curly.sale/producto/carmen-cosmeticos-mousse-activadora-de-rizos-150ml/",
            "cgm_score": 100,
            "product_type": "Activador de Rizos",
            "brand": "Carmen Cosméticos",
            "min_price_eur": 15.9
        },
        {
            "title": "K89 Professional Curly Hair Cowash Conditioner 500ml",
            "url": "https://curly.sale/producto/k89-professional-curly-hair-cowash-conditioner-500ml/",
            "cgm_score": 100,
            "product_type": "Cowash",
            "brand": "K89",
            "min_price_eur": 20.95
        },
        {
            "title": "Schwarzkopf Professional Crema Colorante Igora Royal 60ml 4-60 Castaño Medio Chocolate Natural",
            "url": "https://curly.sale/producto/schwarzkopf-professional-crema-colorante-igora-royal-60ml-4-60-castano-medio-chocolate-natural/",
            "cgm_score": 100,
            "product_type": "Tratamiento",
            "brand": "Schwarzkopf Professional",
            "min_price_eur": 29.04
        },
        {
            "title": "Shea Moisture Coconut and Hibiscus Curl Enhancing Smoothie 340g",
            "url": "https://curly.sale/producto/shea-moisture-coconut-and-hibiscus-curl-enhancing-smoothie-340g/",
            "cgm_score": 100,
            "product_type": "Activador de Rizos",
            "brand": "Shea Moisture",
            "min_price_eur": 11.98
        },
        {
            "title": "Umberto Giannini Curl Jelly Scrunching Jelly 200 ml",
            "url": "https://curly.sale/producto/curl-jelly-scrunching-jelly-200-ml-gel-definidor-de-rizos-2/",
            "cgm_score": 100,
            "product_type": "Gel para Rizos",
            "brand": "Umberto Giannini",
            "min_price_eur": 10.98
        },
        {
            "title": "Reneé Blanche Tinte Permanente 6.51 Rubio Oscuro Rojo Escarlata 100ml",
            "url": "https://curly.sale/producto/renee-blanche-tinte-permanente-651-rubio-oscuro-rojo-escarlata-100ml/",
            "cgm_score": 80,
            "product_type": "Tratamiento",
            "brand": "Reneé Blanche",
            "min_price_eur": 13.55
        }
    ],
    "cgm_score": {
        "range": [
            0,
            100
        ],
        "thresholds": {
            "cgm_ok": {
                "min": 80,
                "max": 100,
                "label": "CGM OK",
                "emoji": "✅"
            },
            "cgm_check": {
                "min": 50,
                "max": 79,
                "label": "CGM Check",
                "emoji": "⚠️"
            },
            "not_cgm": {
                "min": 0,
                "max": 49,
                "label": "Not CGM",
                "emoji": "❌"
            }
        }
    },
    "affiliate_redirect": {
        "pattern": "/go/{store_slug}/{ean13}/",
        "human_approval_required": true
    },
    "prices": {
        "source": "automated-parser",
        "update_schedule": "daily at 03:00 Europe/Madrid",
        "freshness_warning_hours": 72,
        "currency": "EUR"
    },
    "rules": {
        "human_approval_for_purchase": true,
        "max_scraping_rate": "60 req/min",
        "attribution_required": true,
        "not_medical_advice": true
    },
    "policies": {
        "privacy": "https://curly.sale/politica-privacidad/",
        "terms": "https://curly.sale/aviso-legal/",
        "cookies": "https://curly.sale/politica-cookies/",
        "affiliate_disclosure": "https://curly.sale/aviso-afiliados/"
    },
    "platform": {
        "cms": "WordPress",
        "version": "6.x",
        "commerce": "none",
        "ucp_supported": false,
        "shop_pay_supported": false
    }
}