# Raklet Developer Portal: API, OpenAPI Spec and Docs

**URL:** https://www.raklet.com/developers/
**Description:** Raklet's developer portal: REST API base URL, OAuth 2.0 authentication, quickstart, the OpenAPI 3.0 spec at /openapi.json, Swagger UI, endpoint groups and integrations.
**Published:** 2026-09-09
**Updated:** 2026-09-09

---

Raklet exposes the same REST API that powers its admin panel and member portal, so anything you can do in Raklet you can automate: create and update members, assign membership plans, record payments and donations, list events, manage tags, and read organisation settings. This page is the entry point for developers and for AI agents integrating with Raklet. The machine-readable version of everything here is the [OpenAPI 3.0 specification](https://www.raklet.com/openapi.json).

Quick facts

- Base URL: `https://api.raklet.com`
- Auth: OAuth 2.0 password grant at `POST /token`, then `Authorization: Bearer <token>`
- Spec: [/openapi.json](https://www.raklet.com/openapi.json) (OpenAPI 3.0.3, 140 operations) and [Swagger 2.0 source](https://api.raklet.com/swagger/docs/v1)
- Interactive reference: [Swagger UI](https://api.raklet.com/swagger/ui/index/)
- Plan: API access is included in the [Premium plan](https://www.raklet.com/pricing/); a free organisation is the sandbox
- Agent overview: [/llms.txt](https://www.raklet.com/llms.txt)

## Quickstart

### 1. Get a Raklet organisation

Create a free account at [login.raklet.com/quickregister](https://login.raklet.com/quickregister/) if you do not already administer a Raklet organisation. The free plan covers up to 100 contacts, which is enough to build and test an integration. There is no separate sandbox host: develop against a free organisation, then point the same code at the customer’s production organisation.

### 2. Get an access token

The API uses the OAuth 2.0 resource owner password grant. Exchange an admin user’s email and password for a bearer token:

```bash
curl -X POST https://api.raklet.com/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  -d "grant_type=password&username=admin@example.org&password=YOUR_PASSWORD"
```

The response carries the token and its lifetime in seconds:

```json
{
  "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
  "token_type": "bearer",
  "expires_in": 3600
}
```

Tokens expire after about an hour. Request a new one the same way; there is no refresh token. Full walkthrough: [How to authenticate with the Raklet API](https://help.raklet.com/en/articles/11728820-how-to-authenticate-with-the-raklet-api).

### 3. Find your organisation id

Almost every path takes an `organisationId`. It is shown at the top of Admin → Settings in the Raklet admin panel, or read it from `GET /public/account/me` with your token.

### 4. Make your first call

```bash
curl https://api.raklet.com/app/organisations/{organisationId}/settings \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"
```

That returns the organisation’s settings object. From there, `GET /organisations/{organisationId}/contacts` lists members (paged with `pageSize` and `offset`, filtered with a base64-encoded JSON `q` parameter), and `POST` to the same path creates one. Step-by-step: [Make your first API call](https://help.raklet.com/en/articles/11728891-make-your-first-api-call) and [How to create members with the API](https://help.raklet.com/en/articles/5477135-how-to-create-members-with-api).

## Authentication and permissions

A bearer token carries the identity of the admin user it was issued to. It can do exactly what that user can do in the admin panel, for the organisations that user administers, and nothing more. Raklet’s access control is role-based (roles are configured under Admin → Settings → Roles on the Premium plan), and the API enforces the same roles. Raklet does not define narrower OAuth scopes today, so the `scopes` map in the OpenAPI security scheme is empty by design; to give an integration least privilege, create a dedicated admin user with a restricted role and issue its tokens from that account.

Every call is made over HTTPS. Keep tokens server-side; never embed them in a browser or mobile client.

## API reference

The API is documented three ways, all describing the same surface:

### OpenAPI 3.0 specification

A single JSON document with every path, typed parameters, request and response schemas, a unique `operationId` and a description on every operation, and the security schemes. Load it into any OpenAPI client generator, Postman, or an LLM tool-calling framework.

[Open openapi.json →](https://www.raklet.com/openapi.json)

### Swagger UI

Interactive reference generated from the running API. Paste your bearer token into the Authorize dialog and try calls against your own organisation.

[Open Swagger UI →](https://api.raklet.com/swagger/ui/index/)

### Help center API guides

Task-oriented articles: authentication, first call, creating members, searching contacts, and the select-list endpoints used for custom field values.

[Browse the API collection →](https://help.raklet.com/en/collections/13838830-api)

### Endpoint groups

| Group | What it covers | Example |
| --- | --- | --- |
| Contacts | Members and contacts, their details, photo, emails, phones, addresses, education and work history | `GET /organisations/{organisationId}/contacts` |
| Membership plans and fees | Plans, membership fees, subscriptions, applications | `GET /organisations/{organisationId}/plans` |
| Payments, debts, donations | Record and list payments, outstanding debts, donations and donation campaigns | `POST /organisations/{organisationId}/payments` |
| Events | Events and member event submissions | `GET /app/organisations/{organisationId}/events` |
| Tags and segments | Create tags, add or remove members in bulk | `POST /admin/organisations/{organisationId}/tags/{id}/AddMembers` |
| Community | Discussion boards and posts, job postings and job seekers, corporate members | `GET /organisations/{organisationId}/boards` |
| Reference data | Select lists for custom fields, countries, cities, companies, schools, sectors | `GET /app/organisations/{organisationId}/countries` |
| Organisation and account | Settings, the calling user, action logs | `GET /app/organisations/{organisationId}/settings` |

## Conventions

- Requests and responses are JSON unless an operation says otherwise (the token endpoint is form-encoded).
- List endpoints accept `pageSize` and `offset`. Filtered lists accept `q`, a base64-encoded JSON query; see [how to search organisation contacts](https://help.raklet.com/en/articles/5998452-how-to-search-organisation-contacts).
- Most responses wrap the payload: `{ "data": ..., "isValid": true, "errors": [] }`. Check `isValid` and `errors` before using `data`.
- Identifiers are UUIDs. Dates are ISO 8601 in the organisation’s time zone unless a field name says otherwise.
- Path prefixes map to audiences: `/organisations/` and `/admin/` for admin operations, `/app/` for endpoints the member apps also use, `/public/` for account-level calls.

## For AI agents and tool-calling frameworks

Every operation in [openapi.json](https://www.raklet.com/openapi.json) has a unique `operationId`, typed parameters, a request schema where a body is expected, and a response schema, so the document converts directly into function-calling tool definitions. Each operation also carries `x-raklet-access`, which states whether a token is required and which plan unlocks the call. [llms.txt](https://www.raklet.com/llms.txt) describes when Raklet is the right tool and how to call it; every page on this site, this one included, can be fetched as Markdown with `Accept: text/markdown` or by appending `?format=markdown`.

## No-code integrations

If you would rather not write code, Raklet connects to [Zapier](https://www.raklet.com/integrations/zapier/) and to [4000+ apps](https://www.raklet.com/integrations/) through it, plus direct integrations with HubSpot, Mailchimp, QuickBooks, Xero, Salesforce, Zoom and WordPress.

## Support

Questions about the API go through the [contact page](https://www.raklet.com/contact/) or the in-app chat; Premium customers get prioritized support. If you are evaluating Raklet for an integration-heavy deployment, [schedule a discovery call](https://www.raklet.com/schedule-demo/) and we will walk through the data model with you.

---

- [Site overview for AI agents (llms.txt)](https://www.raklet.com/llms.txt)
- [Developer portal](https://www.raklet.com/developers/)
- [Sitemap](https://www.raklet.com/sitemap.xml)
