Skip to content

What the API is

GET
/v1
curl --request GET \
--url https://api.blupinta.app/v1

Where tokens come from, the resource they must be for, the scopes, every operation and where they are explained.

What the API is

Media typeapplication/json

GET /v1: what the public API is, for whoever builds an app on it

object
name
required
string
version
required
string
Allowed value: v1
resource
required

The resource an app’s token must be for (resource when asking it)

string
issuer
required

Where tokens come from: the OpenID provider

string
discovery
required

The provider’s discovery document

string
scopes
required

The scopes /v1 understands, each with what it gives

object
key
additional properties
string
endpoints
required

Every operation, as METHOD /path

Array<string>
openapi
required

The OpenAPI document describing every operation

string
docs
required

The guide’s page for developers

string
Example
{
"version": "v1"
}
RateLimit-Limit
integer

The requests the caller may make in the window: an app counts per connection, every token together

RateLimit-Remaining
integer

The requests left in the window

RateLimit-Reset
integer

Seconds until the window starts again

rate_limited: Too many requests: wait as long as Retry-After says

Media typeapplication/json

The body of a refusal

object
error
required

What /v1 answers when it refuses

string
Allowed values: unauthenticated forbidden not_found rate_limited server_error invalid_input conflict invalid_home blocking_problems unsupported_file
errorId

The server’s id for a server_error, to quote when asking for help

string
problems

What is wrong, for invalid_input, conflict, invalid_home, blocking_problems

Array<string>
Example
{
"error": "unauthenticated"
}
RateLimit-Limit
integer

The requests the caller may make in the window: an app counts per connection, every token together

RateLimit-Remaining
integer

The requests left in the window

RateLimit-Reset
integer

Seconds until the window starts again

Retry-After
integer

Seconds to wait before asking again

server_error: Something failed on Blupinta’s side: quote errorId when asking for help

Media typeapplication/json

The body of a refusal

object
error
required

What /v1 answers when it refuses

string
Allowed values: unauthenticated forbidden not_found rate_limited server_error invalid_input conflict invalid_home blocking_problems unsupported_file
errorId

The server’s id for a server_error, to quote when asking for help

string
problems

What is wrong, for invalid_input, conflict, invalid_home, blocking_problems

Array<string>
Example
{
"error": "unauthenticated"
}
RateLimit-Limit
integer

The requests the caller may make in the window: an app counts per connection, every token together

RateLimit-Remaining
integer

The requests left in the window

RateLimit-Reset
integer

Seconds until the window starts again