B2B · REST API · SDKs

Cosmetic ingredient data, API-first

Query ingredient profiles and analyze full INCI lists over HTTPS. Severity labels, comedogenicity & irritancy scores (0–5), batch safety status, synonyms, and per-row matches — structured fields for the apps and backends you build.

Official SDKs: npm · PyPI · Trusted by 300+ developers

Example API Call
import { Dermalytics } from "dermalytics";

const client = new Dermalytics({
  apiKey: process.env.DERMALYTICS_API_KEY,
});

// Single ingredient lookup
const ingredient = await client.getIngredient("niacinamide");
// → severity, comedogenicity (0–5), irritancy (0–5),
//   synonyms[], category, functions[], cas_no, ec_no

// Batch INCI analysis
const result = await client.analyzeProduct([
  "Aqua", "Glycerin", "Niacinamide",
]);
// → safety_status, per-ingredient rows, credits_remaining

300+

Developers

25,000+

Ingredients indexed

99.9%

Uptime SLA

<100ms

Median latency

Live Demo

Try the Ingredient API

Paste an INCI-style list and preview the structured scores and fields the API returns.

Paste a comma-separated ingredient list — we'll check each one against our database

API Capabilities

Everything you need to build better skincare apps

Research-backed data from thousands of ingredients, inspired by INCIDecoder's trusted methodology

GET /v1/ingredients/{name}

Ingredient lookup

Returns a rich profile for one INCI name or synonym over a single authenticated request.

  • Severity labels and comedogenicity / irritancy (0–5)
  • CAS / EC identifiers and optional Ph. Eur. naming
  • Category and cosmetic function lists
  • Synonyms for alternate INCI or trade names
POST /v1/analyze

Batch analysis

Send a JSON array of ingredient names and receive a full formulation report in one response.

  • Overall formulation safety_status
  • Per-ingredient rows with found flag and nullable category
  • Same detail fields as single lookup when matched
  • credits_remaining after charging matched rows only
severity · safety_status

Safety signals

Structured severity enums and formulation-level safety_status ready for your own UI and business rules.

  • Four-level severity scale (safe → high_risk)
  • Per-ingredient severity and match status on batch analyze
  • Overall safety_status for the analyzed INCI list
  • Designed for building your own UX and filters
credits_remaining

Credits and contract

Predictable per-lookup pricing: credits only charged on successful matches.

  • credits_remaining in JSON and X-Credits-Remaining header
  • 1 credit per successful single-ingredient GET
  • 1 credit per analyze row with found: true
  • Official SDKs: dermalytics on npm and PyPI

Who It's For

Built for modern development teams

Whether you're building the next viral skincare app or enhancing an existing platform, our API scales with your needs

Mobile Apps

Mobile App Developers

Build ingredient scanners, product analyzers, and recommendation features using our HTTP API and SDKs.

  • Real-time ingredient lookup for barcode scanning
  • Product analysis for recommendation engines
  • User profile matching for skincare routines
  • Integration with camera APIs for label scanning
Wellness Platforms

Wellness & Lifestyle Apps

Enrich product catalogues and power filters with ingredient metadata — your app defines UX, copy, and compliance.

  • Batch lookups for catalogue and search
  • Severity and signal fields for your own rules and badges
  • Consistent data across web and mobile clients
  • You decide how to label results for end users
E-commerce

E-commerce Solutions

Enhance product pages with detailed ingredient insights and automated safety information.

  • Automated product data enrichment
  • Trust badges and safety certifications
  • Ingredient-based search and filters
  • Customer education and transparency

Quick Start

How It Works

Get started in minutes with our developer-friendly API

01

Install the official client

Use the published npm package or call the REST API directly — Bearer auth either way.

02

Send ingredient or product data

Query individual ingredients or analyze complete product formulations.

03

Receive detailed analysis

Get safety_status, per-ingredient rows with severity and identifiers, and remaining credits.

FAQ

Frequently Asked Questions

Everything you need to know about our API

We combine public regulatory and reference sources (for example FDA, EU CosIng, Health Canada where applicable), peer-reviewed literature, and established cosmetic-ingredient references, then normalize fields for use in software. The API is built for developers integrating ingredient data into apps—not for clinical diagnosis. Methodology evolves as sources update; see our docs for the current response schema.

Scores and labels in API responses come from a documented, weighted model (irritation, comedogenicity, and related signals). They are informational fields for your product logic—not a medical or dermatological assessment, and not a guarantee about how any individual will react to a product. Always validate critical use cases in your own UX and legal review.

Yes. The API is intended for commercial products: mobile apps, e-commerce, internal tools, and SaaS. Plans, rate limits, and pricing are described on our pricing page (subscriptions plus usage-style options). Enterprise customers can discuss custom terms, SLAs, and integrations on our contact page.

We target high availability for production use and document SLA-style expectations with paid tiers where applicable. Infrastructure is monitored around the clock; status and incidents are communicated through our status page when available. Exact numbers depend on your plan—ask sales for Enterprise guarantees.

Yes. You can start with a limited free allocation for development and testing (see the pricing page for current call limits and rate limits). Paid tiers add higher limits and support. Details change over time—always check /pricing for the live numbers.

Our API is optimized for speed with typical response times under 300ms for ingredient lookups and under 500ms for complete product analysis. We use global CDN distribution and intelligent caching to ensure low latency regardless of your location.

Any language that can send HTTPS requests with a Bearer token works. We also publish official alpha SDKs: JavaScript/TypeScript on npm (https://www.npmjs.com/package/dermalytics) and Python on PyPI (https://pypi.org/project/dermalytics/). For interactive API tests, use the hosted Swagger UI at https://api.dermalytics.dev/docs. The REST contract is defined in OpenAPI 3 at https://api.dermalytics.dev/openapi.json. Guides and examples are on our /docs page.

We refresh data on a rolling basis as new regulatory listings and reference updates appear. Breaking or safety-critical public notices are prioritized. API consumers receive updated fields through the same endpoints without schema surprises—check release notes or contact us for Enterprise change notifications.

Ship ingredient features faster

Sign in to get your API key instantly and start building with first-class developer support.

No credit card required · Free trial available · Cancel anytime

Our insights are generated using statistical algorithms informed by scientific research and best practices. They are provided for informational purposes only and do not constitute medical or dermatological advice. Accuracy is not guaranteed, and results may not account for individual health conditions or sensitivities. Always consult a qualified healthcare professional before using skincare products.

Read full disclaimer