Skip to main content

Quick Start

This guide will help you make your first API call in minutes and start integrating with our satellite communications platform.

Prerequisites​

Before you begin, make sure you have:

  1. An API key provided by Bullitt
  2. Basic knowledge of RESTful APIs
  3. A tool for making HTTP requests (cURL, Postman, or your preferred programming language)

Authentication​

All API calls require authentication using your API key. Include it in the header of every request:

x-api-key: {your_api_key}

⚠️ Security Note: Keep your API key secure. Never expose it in client-side code or public repositories.

Base URL​

All API requests are made to this base URL:

https://bss-api.bullitt.com

Making Your First API Call​

Let's start by retrieving your organisation details:

Using cURL​

curl -X GET "https://bss-api.bullitt.com/organisations/self" \
-H "x-api-key: your_api_key_here"

Understanding Your Organisation Structure​

Now that you've confirmed your API connection works, let's examine your organisation's hierarchy:

curl -X GET "https://bss-api.bullitt.com/organisations/self/tree" \
-H "x-api-key: your_api_key_here"

This returns your complete organisation tree, including any sub-organisations.

Listing Your Devices​

To see all devices associated with your organisation:

curl -X GET "https://bss-api.bullitt.com/organisations/self/devices" \
-H "x-api-key: your_api_key_here"

Activating a Device​

Before a satellite device can be used, it needs to be activated:

curl -X POST "https://bss-api.bullitt.com/devices/activate" \
-H "x-api-key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"imsi": "123456789012345",
"autoTrackingFrequency": 5,
"reason": "field deployment"
}'

To send a message to a device:

curl -X POST "https://bss-api.bullitt.com/devices/123456789012345/downlink" \
-H "x-api-key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"type": "Text",
"recipient": "447869270548",
"imsi": "901980010048397",
"payload": "abc",
"timestamp": 123
}'

This returns a message ID that you can use to check the message status.

Setting Up Real-time Notifications​

For real-time notifications when your devices send messages or change state, configure a webhook:

curl -X PUT "https://bss-api.bullitt.com/organisations/self/configure-webhook" \
-H "x-api-key: your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"endpoint": "https://your-server.com/bullitt-webhook",
"apiKey": "your_webhook_api_key"
}'

Error Handling​

If an API call fails, you'll receive an error response like this:

{
"error": {
"statusCode": "400",
"message": "Error description"
}
}

Common HTTP status codes:

  • 200: Success
  • 400: Bad Request (check your request parameters)
  • 401: Unauthorized (invalid or missing API key)
  • 403: Forbidden (insufficient permissions)
  • 404: Not Found (resource doesn't exist)
  • 429: Too Many Requests (you've exceeded rate limits)
  • 500: Internal Server Error (contact support)

If you have any questions or need assistance, don't hesitate to contact our support team.

Happy coding!