Go to file
Alie 29652565c9
Unit Tests with docker compose / unit-test (pull_request) Successful in 4m33s Details
do volumes just mess up this?
2024-01-06 17:51:55 +01:00
.gitea/workflows do volumes just mess up this? 2024-01-06 17:51:55 +01:00
src added tests and auth to PUT images 2024-01-06 12:57:22 +01:00
tests Merge pull request 'put-images' (#18) from put-images into develop 2024-01-06 12:45:36 +00:00
.dockerignore
.gitignore
Dockerfile made the dockerfile usable to our usecase 2023-12-31 13:26:10 +01:00
README.md Documentation for some API endpoints 2024-01-06 11:43:21 +00:00
compose.yaml unit testing (#7) 2023-12-31 11:11:22 +00:00
package.json changed manifest 2024-01-06 17:44:15 +01:00
tsconfig.json

README.md

bot-api

Introduction

The function of the API is basically to access the images' metadata stored in the database.

Usage

The API exposes some endpoints to interact with the database.

GET /images

Allows to get a list of image documents.

Query params

  • limit: an optional parameter, which accepts a non-negative integer that dictates the number of documents that the list will have. If its value is equal to 0, or if this parameter is missing, the endpoint will return all the image documents in the database.
  • status: an optional parameter, which accepts the values consumed, available and unavailable. It filters the documents that have only the status attribute equal to that indicated in the parameter's value. If the parameter is missing, no filter will be applied to the document.

Example

  • GET /images?limit=5&status=available: will return 5 documents that have the available value in their status attribute.

PUT /images/<id>

Modifies an existing image document. The request must provide a JSON-formatted body, with one or more valid document attributes. The existing document attributes will be replaced with the provided new ones.

Params

  • id: the id of the document to be modified.

Example

  • PUT /images/61f7e48f0c651345677b7775 with body { "status": "consumed" }: will modify the document referenced by the id param, changing their status value to consumed.

POST /images

POST /login

Installation

To install dependencies:

bun install

To run:

docker compose up

For testing, remember:

docker compose down -v
docker compose run bot-api bun run test

This project was created using bun init in bun v1.0.13. Bun is a fast all-in-one JavaScript runtime.