Search the catalog
const url = 'https://api.blupinta.app/v1/catalog/products?mount=floor&sort=relevance&language=it';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url 'https://api.blupinta.app/v1/catalog/products?mount=floor&sort=relevance&language=it' \ --header 'Authorization: Bearer <token>'Blupinta’s catalog of products searched as the editor searches it: words, narrowed by category, brand, mount and colour family, in pages.
Authorizations
Section titled “Authorizations”Parameters
Section titled “ Parameters ”Query Parameters
Section titled “Query Parameters”Words to find, tolerant of a slip of a letter and of accents
A category or any below it (storage takes storage/shelving)
Any of these brands
Where it stands or hangs
A colour family one of its finishes is in (white, wood)
The order: by relevance (the default), by name, smallest or largest first
The names words and order are read in (en by default)
How many on a page, at most 100 (50 by default)
Where the page starts: the next of the page before
Responses
Section titled “ Responses ”Search the catalog
A page of a catalog search
object
A product of the catalog as a search lists it
object
namespace/name, stable forever (“ikea/kallax”): read it whole at /v1/catalog/products/{namespace}/{name}
Bumped on any change that can move or reshape an item made of it
object
A path in the catalog’s taxonomy (“storage/shelving”)
Its thumbnails, by sha256: /v1/catalog/thumbnails/{sha256}
How many products the search found in all
Where the next page starts, to send back as after; null on the last page
Example
{ "rows": [ { "mount": "floor" } ]}Headers
Section titled “Headers”The requests the caller may make in the window: an app counts per connection, every token together
The requests left in the window
Seconds until the window starts again
invalid_input: What was sent isn’t right: problems says what, each with where
The body of a refusal
object
What /v1 answers when it refuses
The server’s id for a server_error, to quote when asking for help
What is wrong, for invalid_input, conflict, invalid_home, blocking_problems
Example
{ "error": "unauthenticated"}Headers
Section titled “Headers”The requests the caller may make in the window: an app counts per connection, every token together
The requests left in the window
Seconds until the window starts again
unauthenticated: No valid access token for this API
The body of a refusal
object
What /v1 answers when it refuses
The server’s id for a server_error, to quote when asking for help
What is wrong, for invalid_input, conflict, invalid_home, blocking_problems
Example
{ "error": "unauthenticated"}Headers
Section titled “Headers”The requests the caller may make in the window: an app counts per connection, every token together
The requests left in the window
Seconds until the window starts again
forbidden: The token lacks the scope this operation needs
The body of a refusal
object
What /v1 answers when it refuses
The server’s id for a server_error, to quote when asking for help
What is wrong, for invalid_input, conflict, invalid_home, blocking_problems
Example
{ "error": "unauthenticated"}Headers
Section titled “Headers”The requests the caller may make in the window: an app counts per connection, every token together
The requests left in the window
Seconds until the window starts again
rate_limited: Too many requests: wait as long as Retry-After says
The body of a refusal
object
What /v1 answers when it refuses
The server’s id for a server_error, to quote when asking for help
What is wrong, for invalid_input, conflict, invalid_home, blocking_problems
Example
{ "error": "unauthenticated"}Headers
Section titled “Headers”The requests the caller may make in the window: an app counts per connection, every token together
The requests left in the window
Seconds until the window starts again
Seconds to wait before asking again
server_error: Something failed on Blupinta’s side: quote errorId when asking for help
The body of a refusal
object
What /v1 answers when it refuses
The server’s id for a server_error, to quote when asking for help
What is wrong, for invalid_input, conflict, invalid_home, blocking_problems
Example
{ "error": "unauthenticated"}Headers
Section titled “Headers”The requests the caller may make in the window: an app counts per connection, every token together
The requests left in the window
Seconds until the window starts again