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!