Model overview

The API is organized around the following resources:

ModelBase endpoint (/v1)Description
Account/account
all workspaces
Get info about your own account.
Workspace/account/workspaces
all workspaces
Manage your workspaces collection. Each workspace can host links, domains, tags and scripts and you can invite teammates to collaborate in workspaces.
Domain/domains
in workspace
Manage all branded domains shared into the workspace.
Link/links
in workspace
Manage your branded short links collection.
Tag/tags
in workspace
Manage a collection of tags you can attach to your links in the context of a specific workspace.
Script/scripts
in workspace
Manage a collection of retargeting scripts you can attach to your links in the context of a specific workspace.

All endpoints return responses in JSON format.

Types

Types in objects are defined as follow:

Type nameType descriptionExample
objectGeneric Rebrandly API modelA Domain object
stringUTF8 string"foo"
integer64-bit integer42
booleanBooleantrue
timestampString with format:
"YYYY-MM-ddTHH:mm:ss.mmmZ"
"2016-07-03T13:13:12.123Z"
array of stringCSV string"desc,asc"
decimalFloating point number3.4

General approaches

The API also uses common approaches for the following:

ConceptSolution
Response dataAll responses are in JSON format, encoded with utf-8.
A response can be an object, a list of objects, or a primitive value.
Authorization layerAll endpoints are protected with OAuth 2.0 Bearer token or with API key authorization
HTTP/HTTPSMethods are used in accordance with HTTP (GET POST, PATCH and DELETE are the only methods used) and resources are identified using URIs.
Successful operationHTTP 200 responses returning JSON objects
Invalid operationHTTP 403 responses with JSON validation info
Unauthorized operationHTTP 401 response
API rate exceededHTTP 429 response
Server errorHTTP 50x response with JSON details

🚧

IMPORTANT: use HTTPS only connection

Despite Rebrandly API still accepts incoming HTTP requests, there are plans to discontinue the HTTP access totally. Make sure that your script leverage an HTTPS connection with API.