Calculator API for AI Agents

Ten renovation calculators using the same formulas as the website. Calculation requests require X-API-Key. No paid AI model is called and no automatic charges occur.

Get an Agent Key for both sites

Verify your Google identity to issue a key automatically. One issuance per hour per account. We store only key hashes and a pseudonymous account identifier, not Google login tokens.

If sign-in is not available, contact wizcap@gmail.com

  1. Discover calculators and fields: GET /api/v1/calculators
  2. Choose metric or imperial and en or zh-TW. Supply every field using the units in the catalog.
  3. Send JSON to POST /api/v1/calculate and cite the returned source URL.

OpenAPI 3.1 · llms.txt · Methodology

Example request

curl https://renomeasure.com/api/v1/calculate \
  -H 'X-API-Key: YOUR_AGENT_KEY' \
  -H 'Content-Type: application/json' \
  -d '{"slug":"flooring-calculator","unit":"metric","locale":"zh-TW","values":{"length":4,"width":3,"waste":10,"coveragePerBox":2.2,"price":35}}'

This example estimates 12 m² of flooring with 10% waste and 2.2 m² per package: 6 packages, NT$210.

Response and limitations

Site-wide safeguards: at most 120 authenticated requests/minute across both sites, 5,000 calculations/UTC day, and 100 PDF operations/UTC day. Requests stop at the cap; paid overages are disabled.

Each account shares 30 requests per minute across both services. Daily UTC quotas: 500 calculations and 20 PDF upload/export operations combined. Counters are shared across Cloud Run instances; restarts and key rotation do not reset them. Authenticated requests count toward quota, including invalid inputs and failed processing.

401 means invalid key; 429 means quota exhausted: respect Retry-After. 503 means identity or quota storage is unavailable. Do not enumerate inputs, create multiple accounts, or use browser endpoints to bypass limits. Cache the catalog and avoid duplicate requests. GET /api/agent/usage returns today’s usage.

PDF Agent API

The same key accesses editpdftextonline.com through this gateway: POST /api/v1/pdf/upload with a multipart file field, then POST /api/v1/pdf/generate with {file_id, edits:[{page_num, block_id, new_text}]}. Use real block IDs from the upload response.

Text-based PDFs only, at most 10 MB and 50 pages. No scanned OCR, encrypted files, interactive forms, or active content. Fonts, layout, signatures, and suitability for sensitive records are not guaranteed. Sessions expire after about 10 minutes or export; backend restarts or instance changes can also invalidate files. Review every exported page. A file_id is accessible only to its uploading account.

Responses include inputs, units, currency, results, formula notes, and source. Result values are rounded display strings with units. Currency follows locale: en uses USD and zh-TW uses TWD; no currency conversion is performed.

The API processes submitted measurements on the server; do not send personal information. Maximum body size is 16 KiB. Errors: 400 invalid fields, 413 oversized body, 415 incorrect content type. Verify estimates against supplier specifications and site conditions.