package
0.0.0
Repository: https://github.com/vareversat/chabo-api.git
Documentation: pkg.go.dev

# Functions

GetAllForecats godoc @Summary Get all foracasts @Description Fetch all existing forecasts @Tags Forecasts @Accept json @Produce json @Success 200 {object} models.ForecastsResponse{} @Failure 400 {object} models.ErrorResponse{} "Some params are missing and/or not properly formatted fror the requests" @Failure 500 {object} models.ErrorResponse{} "An error occured on the server side" @Param from query string false "The date to filter from (RFC3339)" Format(date-time) @Param limit query int true "Set the limit of the queried results" Format(int) default(10) @Param offset query int true "Set the offset of the queried results" Format(int) default(0) @Param reason query string false "The closing reason" Enums(boat, maintenance) @Param boat query string false "The boat name of the event" @Param maneuver query string false "The boat maneuver of the event" Enums(leaving_bordeaux, entering_in_bordeaux) @Param Timezone header string false "Timezone to format the date related fields (TZ identifier)" default(UTC) @Router /forecasts [get].
GetForecastByID godoc @Summary Get a foracast @Description Fetch a forecast by his unique ID @Tags Forecasts @Accept json @Produce json @Success 200 {object} models.ForecastResponse{} @Failure 404 {object} models.ErrorResponse{} "The ID does not match any forecast" @Failure 400 {object} models.ErrorResponse{} "Some params are missing and/or not properly formatted fror the requests" @Failure 500 {object} models.ErrorResponse{} "An error occured on the server side" @Param id path string true "The forecast ID" @Param Timezone header string false "Timezone to format the date related fields (TZ identifier)" default(UTC) @Router /forecasts/{id} [get].
GetLastRefreshAction godoc @Summary Get the last refresh action @Description Get the last trace of refresh action on POST /management/refresh @Tags Management @Produce json @Success 200 {object} models.Refresh{} @Failure 404 {object} models.ErrorResponse{} "No previous refresh action exists" @Failure 500 {object} models.ErrorResponse{} "An error occured on the server side" @Router /management/refresh/last [get].
Healthcheck godoc @Summary Get the status of the API @Tags Misc @Produce json @Success 200 {object} models.OKResponse{} "The api is healthy" @Failure 503 {object} models.ErrorResponse{} "The api is unhealthy" @Router /healthcheck [get].
RefreshForcast godoc @Summary Refresh the data with the ones from the OpenData API @Description Get, format et populate database with the data from the OpenData API @Tags Management @Accept json @Produce json @Success 200 {object} models.Refresh{} @Failure 500 {object} models.ErrorResponse{} "An error occured on the server side" @Failure 429 {object} models.ErrorResponse{} "Too many attempt to refresh" @Router /management/refresh [post].