Skip to main content

Trialbee Patient Registry API (0.1.0)

E-mail: support@trialbee.com License: Private

Patient Registry API by Trialbee

This public API can be used to create patient registry entries.

Introduction

This API is documented in OpenAPI format. In addition to standard OpenAPI syntax we use a few vendor extensions.

Rate Limiting

To ensure system stability and fair usage, the API enforces the following limits:

  • Scope: Limits apply per API key
  • Exceeding Limits: Requests beyond the limit return HTTP 429 (Too Many Requests)

Cross-Origin Resource Sharing

This API features Cross-Origin Resource Sharing (CORS) implemented in compliance with the W3C spec. Responses include CORS headers to allow browser-based access. All responses have a wildcard same-origin which makes them completely public and accessible to everyone, including any code on any site.

Authentication

Patient Registry API requires authentication in order to accept submissions. We currently support two authentication methods:

  • API-key based authentication — passed in the URL as before.
  • OAuth 2.0 authentication — supported via the Client Credentials flow.

Create a new lead record in Trialbee Honey

Creates a new lead record in Honey.

Authorizations:
ApiKeyAuthOAuth
query Parameters
credential
required
string <password>
Example: credential=B886CCEA-4592-11EE-B632-ACDE48001122

API Token provided by Trialbee. Note that the token might be locked to certain origins.

Request Body schema: application/json
required

Data needed to create a new lead.

tenantId
required
string (TenantId)

The tenant identifier to which the lead is connected.

email
required
string <email> (Email)
required
object (Consent)
timestamp
required
string <date-time>
text
string
url
string or null <uri>
gender
required
string (Gender)
Enum: "female" "male" "other" "unknown"
countryCode
string (CountryCode) = 2 characters
locale
string (Locale)
postalCode
string (PostalCode)

Responses

Request samples

Content type
application/json
{
  • "tenantId": "tenant-12345",
  • "email": "user@example.com",
  • "consent": {},
  • "gender": "female",
  • "countryCode": "US",
  • "locale": "en-US",
  • "postalCode": "12345"
}

Response samples

Content type
application/json
{
  • "statusCode": 201,
  • "message": "Successful registration",
  • "person": {
    • "email": "user@example.com",
    • "phoneNumber": null,
    • "postalCode": "12345",
    • "therapeuticAreas": null,
    • "tenantId": "tenant-12345",
    • "consent": {
      • "text": "I consent to the terms and conditions.",
      • "timestamp": "2026-10-01T12:00:00Z"
      },
    • "id": "id-12345",
    • "createdAt": "2026-02-22T14:03:35.838Z",
    • "updatedAt": "2026-02-22T14:03:35.838Z",
    • "lastConsent": {
      • "text": "I consent to the terms and conditions.",
      • "timestamp": "2026-10-01T12:00:00Z",
      • "person": {
        • "id": "person-12345"
        },
      • "id": "01234"
      },
    • "lead": {
      • "icdCodes": [ ],
      • "countryCode": "US",
      • "languageCode": "en",
      • "yearOfBirth": null,
      • "gender": "female",
      • "coordinates": null,
      • "id": "lead-12345",
      • "createdAt": "2026-01-22T14:03:35.838Z",
      • "updatedAt": "2026-01-22T14:03:35.838Z"
      }
    }
}