Skip to main content

Using the API

This page explains where to get your API key, how to use the API reference, how rate limiting works, and what you can do with the API (contacts, campaigns, etc.).


1. Where to find your API key

To authenticate against the Gojiberry API, you need an API key tied to your workspace.

  • In the Gojiberry app, go to Settings → API.

  • Create a new API key if you don’t have one yet.

  • Copy the key and store it in a secure place (env var, secret manager, etc.).

  • Use different keys per environment (dev / staging / prod) when possible.

Never expose your API key in client-side code or public repositories.


2. How to use the API documentation

All endpoints, parameters, and models are documented in the external API reference:

  • API reference: https://ext.gojiberry.ai/documentation

From this documentation, you can:

  • Browse all available resources (contacts, campaigns, etc.).

  • Inspect request/response schemas.

  • Copy ready‑to‑use code samples (for example in curl, Node.js, or Python).

  • Test endpoints directly from the UI (if enabled in your doc portal).

A typical request structure:

  • Base URL: https://ext.gojiberry.ai

  • Authentication: API key (usually via Authorization header or similar, as specified in the reference)

  • Format: JSON request/response

Example (pseudo‑curl):

curl -X GET "https://ext.gojiberry.ai/v1/contacts" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json"

Always refer to the reference for the exact path, method, headers, and payload.


3. Rate limiting

The API enforces rate limits to ensure stability and fair usage.

You can find the current rate limit rules in the API documentation:

  • Rate limits: https://ext.gojiberry.ai/documentation (rate limiting section)

Best practices for handling rate limiting:

  • Detect rate‑limit responses (commonly HTTP 429 and/or specific error codes).

  • Implement retries with exponential backoff.

  • Batch operations when possible (e.g., bulk contact updates instead of one request per contact).

  • Cache results on your side when appropriate to avoid unnecessary calls.

If your integration needs higher limits, reach out to Gojiberry support with details of your use case and traffic pattern.


4. What you can do with the API

Below are the most common operations you can build around.

Contacts

Typical capabilities:

  • Get all contacts
    Retrieve a paginated list of contacts from your Gojiberry workspace.
    Use this to sync Gojiberry contacts into your CRM or data warehouse.

  • Get a single contact
    Fetch a specific contact by ID to keep data in sync when something changes.

  • Create a contact
    Push a new contact into Gojiberry (for example when a new lead is created in your CRM).

  • Edit/update a contact
    Update fields on an existing contact (company, role, email, status, custom fields, etc.).

Use the contacts endpoints in the reference to see the exact request body, required fields, and response format.

Campaigns

Typical capabilities:

  • Get all campaigns
    Retrieve the list of campaigns configured in your workspace.
    Useful if you want to map Gojiberry campaigns to entities in your own system.

  • Get a single campaign
    Fetch a specific campaign and its key attributes (name, status, etc.).

Depending on your API surface, you may also have endpoints to:

  • Read campaign performance metrics.

  • Attach contacts to campaigns.

  • Trigger or automate certain campaign actions.

Refer to the campaigns section in the API documentation for details.


5. Putting it all together

With these building blocks, you can, for example:

  • Nightly job:
    Pull all contacts and campaigns, then mirror them into your CRM or warehouse.

  • Real‑time sync:
    When a new lead is created in your app or CRM, create a contact via the API, and optionally subscribe it to a specific campaign.

  • Maintenance flows:
    When a user’s data changes on your side, edit the contact to keep Gojiberry aligned (job title, company, lifecycle stage, etc.).

If you share your stack (language + CRM or tools you’re integrating with), We can help you sketch concrete code snippets for these flows.

Did this answer your question?