Changelog

Every release, fix, and improvement to the classifaily API and platform - newest first.

v1.0.0 Launch

Initial public launch

classifaily is live. The first version of the API ships with everything you need to start classifying content inside your automation workflows, pipelines, and applications.

  • POST /v1/classify - Synchronous single-item classification. Pass any text content and a list of categories; get back a label, confidence score, and optional reasoning in a single structured JSON response. Targets <300 ms median latency.
  • POST /v1/batch - Classify up to 25 items in a single request. Responses include a per-item breakdown with label and confidence for every input. Starter and Growth plans only.
  • POST /v1/schemas - Create reusable classification schemas with named category sets. Reference a schema by ID instead of re-specifying your labels on every call.
  • GET /v1/usage - Query your own request count and token usage for the current billing period. Useful for building internal dashboards or alerting.
  • Async job queue - Long-running or batch jobs are queued and processed asynchronously. Poll GET /v1/jobs/{id} for status and results.
  • API key management - Create and revoke API keys from the dashboard. Keys follow the format cai_live_<40-hex> and are shown only once at creation.
  • Custom categories - Define per-account category libraries from the dashboard. Reuse them across multiple classification calls without repeating the category list in each request.
  • Usage dashboard - Real-time request and token counters, a 30-day sparkline chart, and a per-endpoint breakdown - all visible in the dashboard under the Usage section.
  • Three plans - Free (100 req/mo), Starter ($29/mo or $290/yr - 10k req/mo), and Growth ($79/mo or $790/yr - 100k req/mo). Annual plans save ~17%.
  • Stripe billing integration - Upgrade, downgrade, and cancel from within the dashboard. No redirect to a hosted portal - payment method updates and invoice history are inline.
  • Stripe webhook handler - Subscription lifecycle events (payment success, payment failure, cancellation, renewal) are handled server-side and reflected in account status in real time.
  • Confidence scores - Every classification response includes a confidence float (0–1). Use it to build fallback paths when the model is uncertain instead of blindly trusting every output.
  • Optional reasoning - Pass "explain": true in your request body to receive a short natural-language explanation of why the model chose the label it did.
  • TLS-only - all API traffic is encrypted in transit; HTTP requests are rejected.
  • Rate limiting enforced per API key. Requests beyond your plan limit return 429 rate_limit_exceeded.
  • CORS preflight support on all /api/ paths - use the API directly from browser-based automation tools and frontends.
  • All responses include a request_id field for tracing issues with support.
  • Gzip compression enabled for API and HTML responses.
  • Browser caching headers on all static assets (CSS, JS, images) with 1-year TTL.
  • API keys are hashed in the database - plaintext is shown only at creation time and never stored.
  • X-Content-Type-Options, X-Frame-Options, Referrer-Policy, and Permissions-Policy headers set on all responses.
  • Directory listing disabled across all paths.
  • Sensitive files (.env, .json, .sql, .log) are blocked at the web server level.
  • Passwords hashed with bcrypt. Password reset tokens are single-use and expire after 1 hour.