BlueBubbles Server
  • Server Overview
  • Installation Guides
    • Standard Installation
    • Manual Setup
  • FAQ
  • Private API Setup
  • Supporting the Project
  • Licenses / Legal
  • Basic Guides
    • Basic Guides - Overview
    • Port Forwarding & Dynamic DNS
    • Prevent macOS from Sleeping
    • Migrating Servers
    • Multiple Users on the Same Mac
    • Autostart Server After Crash
  • Troubleshooting Guides
    • Troubleshooting Guides - Overview
    • BlueBubbles Server Cannot Access MacOS Contacts
    • Not Receiving Notifications or URL Changes on Android
    • Unable to Send Messages to International Contacts
    • BlueBubbles App is Taking Up Too Much Storage
    • Can't Send Messages from BlueBubbles
    • BlueBubbles Server Opens to a Blank White Screen
    • Slow Upload Speed When Connecting Over LAN
    • Restarting Your Server Without a Direct Connection
    • Fix FaceTime Features for Virtual Machines
  • Advanced Guides
    • Advanced Guides - Overview
    • Generating an SSL Certificate using CertBot
    • Disabling SIP on Unofficial Macs for the Private API
    • Registering a Phone Number with your iMessage Account
    • macOS Virtualization
      • Running a macOS VM
        • Deploying macOS in VMWare on Windows (Full Guide)
        • Enabling iMessage in a VM
        • External Guides
          • Big Sur VM on a Mac Device
          • Big Sur VM on Proxmox
          • Big Sur VM on AMD Windows
          • Big Sur VM on Intel Windows
          • Catalina VM on a Mac Device
          • Catalina VM on Proxmox
          • Catalina VM on Intel / AMD Windows
          • Catalina VM on Intel Windows
          • Monterey VM on AMD Windows
      • Running BlueBubbles in Docker-OSX
        • Configuring BlueBubbles as a Service
    • BYO Proxy Service Guides
      • Cloudflare with a Custom Domain
      • Caddy & DuckDNS
      • Nginx Proxy Manager
      • Nginx Manual Setup
      • Tailscale VPN Setup
  • Developer Guides
    • Developer Guides - Overview
    • Build Yourself / Contribution Guide
    • REST API & Webhooks
    • Simple Web Server for Webhooks
      • Python Web Server Example
Powered by GitBook
On this page
  • API Wrappers
  • Who's Using It?
  • API Documentation
  • Authentication
  • Response Format
  • Webhooks

Was this helpful?

Edit on GitHub
Export as PDF
  1. Developer Guides

REST API & Webhooks

Documentation for BlueBubbles REST API & Webhooks

PreviousBuild Yourself / Contribution GuideNextSimple Web Server for Webhooks

Last updated 2 years ago

Was this helpful?

The REST API is currently only compatible with https Ngrok, Cloudflare, or Dynamic DNS connections with valid SSL certificates (when used in a Browser). We hope to add support for LocalTunnel in the near future. If you plan to use the REST API in a non-browser environment, it should work as expected.

The REST API requires server version 0.2.0 or greater, though we recommend you use the latest server as some methods in the documentation may not exist on older versions. Webhooks require server version 1.0.0 or greater.

API Wrappers

  • (Java)

Who's Using It?

If you've built something using the API or webhooks that you'd like to share, let us know on our Discord!

API Documentation

Authentication

Most requests require authentication. Simply add the query parameter guid (aliases include password & token) to the end of the request URL, with the server password as the value.

For example: https://some-url.ngrok.io/api/v1/ping?guid=password

Response Format

All requests are returned with the basic format as below:

{
    status: (int) Status Code,
    message: (String) Status Message,
    data: (Variable)
}

Or in the case of an error:

{
    status: (int) Status Code,
    message: (String) Status Message,
    error: {
        type: (String) Error Type,
        error: (String) Error Message
    },
    data?: (any)
}

Webhooks

We support listening to the following events:

  1. New Messages

  2. Message Updates (delivered, read, etc)

  3. Message Errors

  4. Group Name Changes

  5. Participant Added / Removed / Left

  6. Chat Read Status Changes

  7. Typing Indicators

  8. BB Server Update

  9. BB Server URL Change

  10. Hello World (for testing)

You can also subscribe to an event that listens to all of the above at once.

Simply provide a URL and the server will POST to it whenever your desired event occurs.

https://git.elliotnash.org/elliotnash/blueify
LogoTextGPTTextGPT
ChatGPT Bot for iMessage (Paid | Closed Source)
LogoBlueBubblesBlueBubbles
Postman Collection with full documentation