API Products How to Use

Quick deep dive into Kequtech API Products.

API work

Kequtech API Products are exposed as plain HTTP endpoints guided by OpenAPI and follow the same pattern:

  • Method POST
  • Base URL https://api.kequtech.com
  • Authorization Api-Key <YOUR_API_KEY>
  • Body Payload matching the endpoint’s documented parameters.
  • Response JSON object matching the endpoint’s documented response schema.

Each API Product page documents the path, parameters, and response structure. This page is just about how to call them.

Using the npm module

If you already use Node or TypeScript, the kequtech api module is dependency-free, fully typed, and wraps the HTTP calls so you don’t have to deal with low-level details.

typescript
import { KequtechApi } from '@kequtech/kequtech-api';

const kequtech = KequtechApi({
  apiKey: process.env.KEQUTECH_API_KEY,
});

const res = await kequtech('/v1/message-parser', {
  parameters: {
    message: 'Hi, could you help with a small site rebuild next month?',
  },
});

if (res.ok) {
  console.log(res.data); // typed response
} else {
  console.error(res.status, res.error);
}

For more details on options (timeouts, truncation, validation), see the README. Important part here is: pick an endpoint, pass parameters that match the docs, and check res.ok.

Calling the API directly

Any stack that can send a HTTP POST will work. The examples use JSON for clarity, but the server is just reading the request body and headers like any normal HTTP service.

bash
curl -sS https://api.kequtech.com/v1/message-parser \
  -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Api-Key $KEQUTECH_API_KEY" \
  -d '{
    "message": "Hi, Mia mia@acme.dev. Could you help with a small site rebuild next month?"
  }'

In other languages, you do the same thing: POST the documented fields, include your API key in the Authorization header, and parse a JSON response.

Rate limiting by actor

Endpoints support a simple, actor-scoped rate limit. You tell the API who is making the request (for example, a user ID or IP), and optionally what limit to apply. This helps you prevent one actor from consuming your entire quota. It is only there for convenience in case you don't have application level rate limiting.

To enable this, send the X-Kequtech-Rate-Limit header:

http
X-Kequtech-Rate-Limit: actorId="user-1234"; max=60; seconds=60

If you’re using the module, you can pass actorId (max and seconds also, though there are sensible defaults) and it will build this header for you.

Response headers expose the remaining quota and any Retry-After information. If the actor exceeds the limit then the API will return 429 Too Many Requests.

Putting it together

The overall model is intentionally simple: POST in, JSON out, one API key header, and an optional rate-limit header if you want per-user protection. Everything else like framework, language, and architecture is completely up to you. If you can make an HTTP POST, you can use our API.

The individual product pages give you the paths and schemas; this page is the reassurance that there’s nothing surprising behind them.

Return