Docs
SDKs and tools

SDKs and tools

The official Agoo libraries, components and tools, what each is for, where it runs and its status.

Planned· P9For developers

This is designed and scheduled but not built yet. We document it now so you can plan your integration.

You can call the Agoo REST API from any language with an HTTP client. These official packages save you the repetitive parts: types, pagination, retries, idempotency keys, webhook verification and ready-made widgets.

All of them are generated from, or built on, the same OpenAPI contract as the API reference, so they stay in step with it. All are planned and ship with or after the API in phase P9. npm packages are published under the @ardent-africa scope.

Packages

PackagePurposeRuns onStatus
@ardent-africa/agooTypeScript and JavaScript SDK for the full APINode.js 20+, Bun, Deno, Cloudflare Workers (server)Planned, P9
@ardent-africa/agoo-webhooksVerify webhook signatures and get typed eventsNode.js 20+, Bun, Deno, Cloudflare WorkersPlanned, P9
@ardent-africa/agoo-reactBooking widget and pre-registration form as React componentsReact 18.3 or 19, in the browserPlanned, P9
Embed scriptThe same widgets on any website with one <script> tagAny modern browserPlanned, P9
@ardent-africa/agoo-cliThe agoo command: local webhook testing, test events, imports, raw API callsNode.js 20+ on macOS, Windows, Linux and CIPlanned, P9
@ardent-africa/agoo-mcpThe MCP server for AI assistants, run locally over stdioNode.js 20+Planned, P9
ardent-africa/agoo-phpPHP library for the API and webhooksPHP 8.1+, via ComposerPlanned, P9
Agoo for WordPressBlocks, shortcodes and a webhook receiver for WordPress sitesWordPress 6.6+, PHP 8.1+Planned, P9
Python and Go clientsClients generated from the OpenAPI contractPython, GoPlanned

The remote MCP server at https://mcp.agoo.ardent.africa/mcp needs no package at all.

Which one do I need?

You're buildingUse
A back-end integration in TypeScript or JavaScript@ardent-africa/agoo
A service that only receives webhooks@ardent-africa/agoo-webhooks, or any Standard Webhooks library
Booking or pre-registration on a React or Next.js site@ardent-africa/agoo-react
Booking or pre-registration on any other websiteThe embed script
Booking or pre-registration on WordPressAgoo for WordPress
Scripts, CI jobs or local webhook testingThe CLI
An integration in PHP, Python, Go or another languageOther languages
Questions and actions from an AI assistantThe MCP server

Keys: secret or publishable

Every package uses one of two kinds of key. Mixing them up is the most common mistake.

KeyWhere it may be usedPackages
Secret, agoo_sk_live_… / agoo_sk_test_…Server code, CI and your own machine only. Never in a browser or a mobile app.SDK, CLI, local MCP server, PHP library, WordPress (optional)
Publishable, agoo_pk_live_… / agoo_pk_test_…Web pages. It can only read public booking types and the visitor types open for pre-registration, and create bookings and pre-registrations.React components, embed script, WordPress blocks

The server-side packages refuse publishable keys and the browser packages refuse secret keys, so a mix-up fails straight away. If a secret key ever appears in a web page or a public repository, revoke it in the console at once and create a new one. See authentication.

Versions and support

  • Packages follow semantic versioning. Major version 1 of each targets /v1 of the API.
  • While the API is a preview, packages are published with a -preview version tag and may change with the contract.
  • Changes are announced in the changelog.
  • Questions and bug reports go to developer support. Include the package name and version, and the Agoo-Request-Id of any failing call.

On this page