NebStore API

The NebStore API is a REST API that enables you interact with your Nebula buckets and objects programmatically.


Endpoints

Nebula offers dedicated endpoints to interact with your buckets and your objects.

Authentication

The NebStore API uses bearer token authentication. Your token is an encoded JSON Web Token that you must use as an API key to authenticate your requests whether you work directly with the API, or through the SDK.

Visit the Nebula console to get your API keys:

  1. Navigate to Settings → Projects and select the project you want to work with
  2. Copy your API key

Some notes about your API keys:

  • API keys are handled on a project level. This means that you can use the same API key to interact with all buckets and objects within a project.
  • Your API keys can be renewed through the Console, under each project's details page.
  • Users in Admin, Owner, and Developer roles have permission to renew API keys.
  • When you renew an API key, the previous one becomes invalid. Using an invalid key results in a 401 - Unauthorized error.

Server URL

  • https://api.usenebula.io/v1/client

Requests

The NebStore API accepts POST and GET requests. Your requests must follow these formal requirements:

  • The authorization header must contain your API key as a bearer token.
  • The content-type header must be application/json.
  • The request body must be in valid JSON format.

The only exception to the content-type rule is the Upload object endpoint.

To upload files using FormData, you need to specify multipart/form-data in the content-type header.

Responses

The NebStore API uses standard HTTP codes to indicate status in both success and error scenarios:

  • 2xx indicates success
  • 4xx indicates user error like incorrect syntax

The API provides all responses in standard JSON format.

Pagination

List operations that return multiple data sets use paginated responses. The operations are:

Use the page and limit body parameters to control the results that you want to receive in a response:

  • page returns a specific page of results.
  • limit limits the number of items that the API returns in a single page.

You can also use startDate and endDate to filter paginated results based on the creation date of buckets or objects.

Example:

{
  "page": 1,
  "limit": 20,
  "startDate": 2024-10-01,
  "endDate": 2024-10-15 
}

In this example the API will return the first page of results, with 20 items in the response.


Need help?

If you have any technical questions or bump into any problems, get in touch with our Support team! We are here to help, and welcome any feedback you might have about NebStore.