SDKs
WhatIsUp ships an OpenAPI 3.1 spec at api.whatisup.dev/openapi.json. Generate a typed client in any language with one command.
TypeScript
pnpm add -D openapi-typescript
npx openapi-typescript https://api.whatisup.dev/openapi.json -o whatisup.d.tsThen use it with fetch:
import type { paths } from './whatisup';
type SendBody = paths['/v1/channels/{id}/messages']['post']['requestBody']['content']['application/json'];
const res = await fetch(`https://api.whatisup.dev/v1/channels/${id}/messages`, {
method: 'POST',
headers: {
Authorization: `Bearer ${process.env.WHATISUP_KEY}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({ type: 'text', to: '+155512345', text: 'hi' } satisfies SendBody),
});Python
pip install openapi-python-client
openapi-python-client generate --url https://api.whatisup.dev/openapi.jsonGo
go install github.com/oapi-codegen/oapi-codegen/v2/cmd/oapi-codegen@latest
curl https://api.whatisup.dev/openapi.json -o openapi.json
oapi-codegen -package whatisup -generate types,client openapi.json > whatisup.gen.goOther languages
Anything that consumes OpenAPI 3.1 works: Rust (openapi-generator-cli),
Ruby (openapi-generator), Java (openapi-generator), PHP, C#, Swift, Kotlin,
Elixir, Clojure.
llms.txt
Agents pull a flat description of the entire surface from whatisup.dev/llms.txt and the long-form version at whatisup.dev/llms-full.txt.
First-party SDK
A first-party TypeScript SDK is on the roadmap. Until then, generation from the spec is the recommended path — it's actually what we'd ship under the hood anyway.