Skip to main content

Using the API and Webhooks

Set up API keys and webhooks to integrate Jobable with third-party tools.

Written by Jon Caws

Jobable has an API which allows you to integrate Jobable with third-party tools and services, such as productivity tools, AI agents, automation tools and other platforms.

API keys and webhooks

Use the Jobable Admin console to create API keys for integrations and webhooks to notify your own systems when data changes in Jobable.

API keys and webhooks are managed on the same screen. Technical details about the API, available endpoints, webhook payload format, and signature verification are covered in the Jobable API documentation.

Before you start

  • You need permission to manage Settings.

  • API keys are shown in full only once when they are created. Store them in a password manager or your integration's secure settings immediately.

  • Webhook endpoint URLs must use HTTPS (https://). HTTP URLs are not accepted.

Open the API Access screen

  1. Log in to the Jobable Admin console.

  2. Go to Settings.

  3. Click Manage API Access Keys.


API keys

An API key lets third-party services or tools use Jobable on behalf of your organisation. Each key is tied to your Jobable account and should be treated like a password.

Create an API key

  1. On the API Access & Webhooks page, find the Create API Key section.

  2. Enter a Key Name to identify the integration, for example Zapier or Calendar sync.

  3. Optionally set Expires At if you want the key to stop working after a specific date and time.

  4. Click Create API Key.

A blue information box appears with your new key (it starts with jobable_). Copy it immediately and store it securely. For security, Jobable will not show this page again.

View existing API keys

The Existing API Keys table lists every key for your organisation:

Column

What it means

Name

The label you chose when creating the key.

Prefix

The first characters of the key (jobable_) so you can tell keys apart. The full value is never shown again.

Status

active: the key works.

revoked: the key no longer works.

Created

When the key was created.

Expires

Expiry date, if you set one.

Last Used

The last time the key was used to call the API.

Revoke an API key

If a key is lost, no longer needed, or may have been exposed:

  1. In Existing API Keys, find the active key.

  2. Click Revoke.

  3. Confirm when prompted.

Revocation is immediate and cannot be undone. The integration using that key will receive authentication errors until you create a new key and update the integration.


Webhooks

Webhooks let Jobable push notifications to a URL you control when something changes, for example when a customer is updated, a quote is accepted, or a payment is recorded. Changes made in Admin, the Portal, Remote, and the API can all trigger webhooks.

Create a webhook

  1. On the API Access & Webhooks page, scroll to Create Webhook.

  2. Endpoint URL: the HTTPS address that should receive POST requests, for example https://your-server.com/webhooks/jobable.

  3. Events: choose one or more event types to subscribe to. You only receive the events you select. Event names follow the pattern resource.action (for example customer.updated, quote.accepted). The full list is in the API webhook documentation.

  4. Description (optional): a short note, for example which system or workflow uses this webhook.

  5. Click Create Webhook.

A blue box shows the Webhook Signing Secret (starts with whsec_). Copy it into your receiver's configuration. Unlike API keys, you can reveal the secret again later from the webhooks table, or rotate it if needed.

Deliveries are sent by a background process. New webhooks usually start receiving events within about a minute.

Test a webhook

Before relying on a webhook in production:

  1. In Existing Webhooks, click Test on the webhook row.

  2. Jobable queues a ping test event.

  3. Wait up to a minute and check Recent Deliveries for a row with event ping and status success.

If the test fails, confirm your endpoint is reachable on HTTPS, returns a successful HTTP response (2xx), and that your server accepts POST requests with a JSON body.

Manage existing webhooks

The Existing Webhooks table shows each subscription:

Column

What it means

URL

The endpoint receiving deliveries.

Description

Your optional note.

Events

The subscribed event types.

Status

active: deliveries are sent.

paused: deliveries are not sent.

Secret

Masked signing secret. Click reveal to show the full value.

Last Success

When Jobable last received a successful response from your endpoint.

Created

When the webhook was created.

If deliveries are failing repeatedly, the status row may also show a count of recent failures. Jobable may automatically pause a webhook after sustained failures; use Resume to turn it back on once your endpoint is fixed.

Actions (depending on your permissions):

Action

What it does

Edit

Change the URL, subscribed events, or description.

Rotate

Generate a new signing secret. The old secret stops verifying new deliveries immediately; update your receiver before or right after rotating.

Pause / Resume

Temporarily stop or restart deliveries without deleting the webhook.

Test

Send a ping event (see above).

Delete

Remove the webhook permanently.

Recent deliveries

The Recent Deliveries table shows the last 20 delivery attempts across all webhooks. Use it to troubleshoot:

Column

What it means

Webhook

Which endpoint URL the delivery was sent to.

Event

The event type (for example customer.updated or ping).

Status

success: your server responded OK.

pending: queued or waiting to retry.

failed: a retry is scheduled.

exhausted: all retries were used without success.

Response

HTTP status code returned by your server, if any.

Attempts

How many times Jobable has tried this delivery.

Last Attempt

When the most recent attempt was made.


Good practice

  • Name keys and webhooks clearly so you know which integration each one belongs to months later.

  • Revoke keys you no longer use instead of leaving them active.

  • Use separate keys for separate integrations where possible, so you can revoke one without affecting others.

  • Test webhooks with the Test button before going live.

  • Keep signing secrets private, they prove a webhook really came from Jobable. Rotate the secret if you suspect it has leaked.

  • Do not share API keys or webhook secrets in email, chat, or public repositories.

Did this answer your question?