Documentation ¶
Overview ¶
Package v1 provides the API handlers for version 1 of the API.
Index ¶
- func BaseURLFunc(prefix string) func(s string) string
- func WithDemoStatus(demoStatus bool) func(*V1Controller)
- func WithMaxUploadSize(maxUploadSize int64) func(*V1Controller)
- func WithRegistration(allowRegistration bool) func(*V1Controller)
- func WithSecureCookies(secure bool) func(*V1Controller)
- type APISummary
- type ActionAmountResult
- type AuthProvider
- type Build
- type ChangePassword
- type CookieContents
- type GroupInvitation
- type GroupInvitationCreate
- type ItemAttachmentToken
- type LoginForm
- type ReadyFunc
- type Results
- type TokenResponse
- type V1Controller
- func (ctrl *V1Controller) HandleAssetGet() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleAuthLogin(ps ...AuthProvider) errchain.HandlerFunc
- func (ctrl *V1Controller) HandleAuthLogout() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleAuthRefresh() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleBase(ready ReadyFunc, build Build) errchain.HandlerFunc
- func (ctrl *V1Controller) HandleBillOfMaterialsExport() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleCacheWS() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleCreateNotifier() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleCurrency() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleDeleteNotifier() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleEnsureAssetID() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleEnsureImportRefs() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGenerateQRCode() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGetAllCustomFieldNames() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGetAllCustomFieldValues() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGetUserNotifiers() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGroupGet() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGroupInvitationsCreate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGroupStatistics() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGroupStatisticsLabels() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGroupStatisticsLocations() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGroupStatisticsPriceOverTime() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleGroupUpdate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemAttachmentCreate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemAttachmentDelete() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemAttachmentGet() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemAttachmentUpdate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemDateZeroOut() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemDelete() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemFullPath() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemGet() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemPatch() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemUpdate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemsCreate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemsExport() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemsGetAll() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleItemsImport() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLabelDelete() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLabelGet() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLabelUpdate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLabelsCreate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLabelsGetAll() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLocationCreate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLocationDelete() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLocationGet() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLocationGetAll() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLocationTreeQuery() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleLocationUpdate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleMaintenanceEntryCreate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleMaintenanceEntryDelete() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleMaintenanceEntryUpdate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleMaintenanceLogGet() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleSetPrimaryPhotos() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleUpdateNotifier() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleUserRegistration() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleUserSelf() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleUserSelfChangePassword() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleUserSelfDelete() errchain.HandlerFunc
- func (ctrl *V1Controller) HandleUserSelfUpdate() errchain.HandlerFunc
- func (ctrl *V1Controller) HandlerNotifierTest() errchain.HandlerFunc
- type Wrapped
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BaseURLFunc ¶
func WithDemoStatus ¶
func WithDemoStatus(demoStatus bool) func(*V1Controller)
func WithMaxUploadSize ¶
func WithMaxUploadSize(maxUploadSize int64) func(*V1Controller)
func WithRegistration ¶
func WithRegistration(allowRegistration bool) func(*V1Controller)
func WithSecureCookies ¶
func WithSecureCookies(secure bool) func(*V1Controller)
Types ¶
type APISummary ¶
type ActionAmountResult ¶
type ActionAmountResult struct {
Completed int `json:"completed"`
}
type AuthProvider ¶
type AuthProvider interface { // Name returns the name of the authentication provider. This should be a unique name. // that is URL friendly. // // Example: "local", "ldap" Name() string // Authenticate is called when a user attempts to login to the API. The implementation // should return an error if the user cannot be authenticated. If an error is returned // the API controller will return a vague error message to the user. // // Authenticate should do the following: // // 1. Ensure that the user exists within the database (either create, or get) // 2. On successful authentication, they must set the user cookies. Authenticate(w http.ResponseWriter, r *http.Request) (services.UserAuthTokenDetail, error) }
AuthProvider is an interface that can be implemented by any authentication provider. to extend authentication methods for the API.
type ChangePassword ¶
type CookieContents ¶
func GetCookies ¶
func GetCookies(r *http.Request) (*CookieContents, error)
type GroupInvitation ¶
type GroupInvitationCreate ¶
type ItemAttachmentToken ¶
type ItemAttachmentToken struct {
Token string `json:"token"`
}
type TokenResponse ¶
type V1Controller ¶
type V1Controller struct {
// contains filtered or unexported fields
}
func NewControllerV1 ¶
func NewControllerV1(svc *services.AllServices, repos *repo.AllRepos, bus *eventbus.EventBus, options ...func(*V1Controller)) *V1Controller
func (*V1Controller) HandleAssetGet ¶
func (ctrl *V1Controller) HandleAssetGet() errchain.HandlerFunc
HandleAssetGet godocs
@Summary Get Item by Asset ID @Tags Items @Produce json @Param id path string true "Asset ID" @Success 200 {object} repo.PaginationResult[repo.ItemSummary]{} @Router /v1/assets/{id} [GET] @Security Bearer
func (*V1Controller) HandleAuthLogin ¶
func (ctrl *V1Controller) HandleAuthLogin(ps ...AuthProvider) errchain.HandlerFunc
HandleAuthLogin godoc
@Summary User Login @Tags Authentication @Accept x-www-form-urlencoded @Accept application/json @Param username formData string false "string" example(admin@admin.com) @Param password formData string false "string" example(admin) @Param payload body LoginForm true "Login Data" @Param provider query string false "auth provider" @Produce json @Success 200 {object} TokenResponse @Router /v1/users/login [POST]
func (*V1Controller) HandleAuthLogout ¶
func (ctrl *V1Controller) HandleAuthLogout() errchain.HandlerFunc
HandleAuthLogout godoc
@Summary User Logout @Tags Authentication @Success 204 @Router /v1/users/logout [POST] @Security Bearer
func (*V1Controller) HandleAuthRefresh ¶
func (ctrl *V1Controller) HandleAuthRefresh() errchain.HandlerFunc
HandleAuthRefresh godoc
@Summary User Token Refresh @Description handleAuthRefresh returns a handler that will issue a new token from an existing token. @Description This does not validate that the user still exists within the database. @Tags Authentication @Success 200 @Router /v1/users/refresh [GET] @Security Bearer
func (*V1Controller) HandleBase ¶
func (ctrl *V1Controller) HandleBase(ready ReadyFunc, build Build) errchain.HandlerFunc
HandleBase godoc
@Summary Application Info @Tags Base @Produce json @Success 200 {object} APISummary @Router /v1/status [GET]
func (*V1Controller) HandleBillOfMaterialsExport ¶
func (ctrl *V1Controller) HandleBillOfMaterialsExport() errchain.HandlerFunc
HandleBillOfMaterialsExport godoc
@Summary Export Bill of Materials @Tags Reporting @Produce json @Success 200 {string} string "text/csv" @Router /v1/reporting/bill-of-materials [GET] @Security Bearer
func (*V1Controller) HandleCacheWS ¶
func (ctrl *V1Controller) HandleCacheWS() errchain.HandlerFunc
func (*V1Controller) HandleCreateNotifier ¶
func (ctrl *V1Controller) HandleCreateNotifier() errchain.HandlerFunc
HandleCreateNotifier godoc
@Summary Create Notifier @Tags Notifiers @Produce json @Param payload body repo.NotifierCreate true "Notifier Data" @Success 200 {object} repo.NotifierOut @Router /v1/notifiers [POST] @Security Bearer
func (*V1Controller) HandleCurrency ¶
func (ctrl *V1Controller) HandleCurrency() errchain.HandlerFunc
HandleCurrency godoc
@Summary Currency @Tags Base @Produce json @Success 200 {object} currencies.Currency @Router /v1/currency [GET]
func (*V1Controller) HandleDeleteNotifier ¶
func (ctrl *V1Controller) HandleDeleteNotifier() errchain.HandlerFunc
HandleDeleteNotifier godocs
@Summary Delete a Notifier @Tags Notifiers @Param id path string true "Notifier ID" @Success 204 @Router /v1/notifiers/{id} [DELETE] @Security Bearer
func (*V1Controller) HandleEnsureAssetID ¶
func (ctrl *V1Controller) HandleEnsureAssetID() errchain.HandlerFunc
HandleEnsureAssetID godoc
@Summary Ensure Asset IDs @Description Ensures all items in the database have an asset ID @Tags Actions @Produce json @Success 200 {object} ActionAmountResult @Router /v1/actions/ensure-asset-ids [Post] @Security Bearer
func (*V1Controller) HandleEnsureImportRefs ¶
func (ctrl *V1Controller) HandleEnsureImportRefs() errchain.HandlerFunc
HandleEnsureImportRefs godoc
@Summary Ensures Import Refs @Description Ensures all items in the database have an import ref @Tags Actions @Produce json @Success 200 {object} ActionAmountResult @Router /v1/actions/ensure-import-refs [Post] @Security Bearer
func (*V1Controller) HandleGenerateQRCode ¶
func (ctrl *V1Controller) HandleGenerateQRCode() errchain.HandlerFunc
HandleGenerateQRCode godoc
@Summary Create QR Code @Tags Items @Produce json @Param data query string false "data to be encoded into qrcode" @Success 200 {string} string "image/jpeg" @Router /v1/qrcode [GET] @Security Bearer
func (*V1Controller) HandleGetAllCustomFieldNames ¶
func (ctrl *V1Controller) HandleGetAllCustomFieldNames() errchain.HandlerFunc
HandleGetAllCustomFieldNames godocs
@Summary Get All Custom Field Names @Tags Items @Produce json @Success 200 @Router /v1/items/fields [GET] @Success 200 {object} []string @Security Bearer
func (*V1Controller) HandleGetAllCustomFieldValues ¶
func (ctrl *V1Controller) HandleGetAllCustomFieldValues() errchain.HandlerFunc
HandleGetAllCustomFieldValues godocs
@Summary Get All Custom Field Values @Tags Items @Produce json @Success 200 @Router /v1/items/fields/values [GET] @Success 200 {object} []string @Security Bearer
func (*V1Controller) HandleGetUserNotifiers ¶
func (ctrl *V1Controller) HandleGetUserNotifiers() errchain.HandlerFunc
HandleGetUserNotifiers godoc
@Summary Get Notifiers @Tags Notifiers @Produce json @Success 200 {object} []repo.NotifierOut @Router /v1/notifiers [GET] @Security Bearer
func (*V1Controller) HandleGroupGet ¶
func (ctrl *V1Controller) HandleGroupGet() errchain.HandlerFunc
HandleGroupGet godoc
@Summary Get Group @Tags Group @Produce json @Success 200 {object} repo.Group @Router /v1/groups [Get] @Security Bearer
func (*V1Controller) HandleGroupInvitationsCreate ¶
func (ctrl *V1Controller) HandleGroupInvitationsCreate() errchain.HandlerFunc
HandleGroupInvitationsCreate godoc
@Summary Create Group Invitation @Tags Group @Produce json @Param payload body GroupInvitationCreate true "User Data" @Success 200 {object} GroupInvitation @Router /v1/groups/invitations [Post] @Security Bearer
func (*V1Controller) HandleGroupStatistics ¶
func (ctrl *V1Controller) HandleGroupStatistics() errchain.HandlerFunc
HandleGroupStatistics godoc
@Summary Get Group Statistics @Tags Statistics @Produce json @Success 200 {object} repo.GroupStatistics @Router /v1/groups/statistics [GET] @Security Bearer
func (*V1Controller) HandleGroupStatisticsLabels ¶
func (ctrl *V1Controller) HandleGroupStatisticsLabels() errchain.HandlerFunc
HandleGroupStatisticsLabels godoc
@Summary Get Label Statistics @Tags Statistics @Produce json @Success 200 {object} []repo.TotalsByOrganizer @Router /v1/groups/statistics/labels [GET] @Security Bearer
func (*V1Controller) HandleGroupStatisticsLocations ¶
func (ctrl *V1Controller) HandleGroupStatisticsLocations() errchain.HandlerFunc
HandleGroupStatisticsLocations godoc
@Summary Get Location Statistics @Tags Statistics @Produce json @Success 200 {object} []repo.TotalsByOrganizer @Router /v1/groups/statistics/locations [GET] @Security Bearer
func (*V1Controller) HandleGroupStatisticsPriceOverTime ¶
func (ctrl *V1Controller) HandleGroupStatisticsPriceOverTime() errchain.HandlerFunc
HandleGroupStatisticsPriceOverTime godoc
@Summary Get Purchase Price Statistics @Tags Statistics @Produce json @Success 200 {object} repo.ValueOverTime @Param start query string false "start date" @Param end query string false "end date" @Router /v1/groups/statistics/purchase-price [GET] @Security Bearer
func (*V1Controller) HandleGroupUpdate ¶
func (ctrl *V1Controller) HandleGroupUpdate() errchain.HandlerFunc
HandleGroupUpdate godoc
@Summary Update Group @Tags Group @Produce json @Param payload body repo.GroupUpdate true "User Data" @Success 200 {object} repo.Group @Router /v1/groups [Put] @Security Bearer
func (*V1Controller) HandleItemAttachmentCreate ¶
func (ctrl *V1Controller) HandleItemAttachmentCreate() errchain.HandlerFunc
HandleItemAttachmentCreate godocs
@Summary Create Item Attachment @Tags Items Attachments @Produce json @Param id path string true "Item ID" @Param file formData file true "File attachment" @Param type formData string true "Type of file" @Param name formData string true "name of the file including extension" @Success 200 {object} repo.ItemOut @Failure 422 {object} validate.ErrorResponse @Router /v1/items/{id}/attachments [POST] @Security Bearer
func (*V1Controller) HandleItemAttachmentDelete ¶
func (ctrl *V1Controller) HandleItemAttachmentDelete() errchain.HandlerFunc
HandleItemAttachmentDelete godocs
@Summary Delete Item Attachment @Tags Items Attachments @Param id path string true "Item ID" @Param attachment_id path string true "Attachment ID" @Success 204 @Router /v1/items/{id}/attachments/{attachment_id} [DELETE] @Security Bearer
func (*V1Controller) HandleItemAttachmentGet ¶
func (ctrl *V1Controller) HandleItemAttachmentGet() errchain.HandlerFunc
HandleItemAttachmentGet godocs
@Summary Get Item Attachment @Tags Items Attachments @Produce application/octet-stream @Param id path string true "Item ID" @Param attachment_id path string true "Attachment ID" @Success 200 {object} ItemAttachmentToken @Router /v1/items/{id}/attachments/{attachment_id} [GET] @Security Bearer
func (*V1Controller) HandleItemAttachmentUpdate ¶
func (ctrl *V1Controller) HandleItemAttachmentUpdate() errchain.HandlerFunc
HandleItemAttachmentUpdate godocs
@Summary Update Item Attachment @Tags Items Attachments @Param id path string true "Item ID" @Param attachment_id path string true "Attachment ID" @Param payload body repo.ItemAttachmentUpdate true "Attachment Update" @Success 200 {object} repo.ItemOut @Router /v1/items/{id}/attachments/{attachment_id} [PUT] @Security Bearer
func (*V1Controller) HandleItemDateZeroOut ¶
func (ctrl *V1Controller) HandleItemDateZeroOut() errchain.HandlerFunc
HandleItemDateZeroOut godoc
@Summary Zero Out Time Fields @Description Resets all item date fields to the beginning of the day @Tags Actions @Produce json @Success 200 {object} ActionAmountResult @Router /v1/actions/zero-item-time-fields [Post] @Security Bearer
func (*V1Controller) HandleItemDelete ¶
func (ctrl *V1Controller) HandleItemDelete() errchain.HandlerFunc
HandleItemDelete godocs
@Summary Delete Item @Tags Items @Produce json @Param id path string true "Item ID" @Success 204 @Router /v1/items/{id} [DELETE] @Security Bearer
func (*V1Controller) HandleItemFullPath ¶
func (ctrl *V1Controller) HandleItemFullPath() errchain.HandlerFunc
HandleItemFullPath godoc
@Summary Get the full path of an item @Tags Items @Produce json @Param id path string true "Item ID" @Success 200 {object} []repo.ItemPath @Router /v1/items/{id}/path [GET] @Security Bearer
func (*V1Controller) HandleItemGet ¶
func (ctrl *V1Controller) HandleItemGet() errchain.HandlerFunc
HandleItemGet godocs
@Summary Get Item @Tags Items @Produce json @Param id path string true "Item ID" @Success 200 {object} repo.ItemOut @Router /v1/items/{id} [GET] @Security Bearer
func (*V1Controller) HandleItemPatch ¶
func (ctrl *V1Controller) HandleItemPatch() errchain.HandlerFunc
HandleItemPatch godocs
@Summary Update Item @Tags Items @Produce json @Param id path string true "Item ID" @Param payload body repo.ItemPatch true "Item Data" @Success 200 {object} repo.ItemOut @Router /v1/items/{id} [Patch] @Security Bearer
func (*V1Controller) HandleItemUpdate ¶
func (ctrl *V1Controller) HandleItemUpdate() errchain.HandlerFunc
HandleItemUpdate godocs
@Summary Update Item @Tags Items @Produce json @Param id path string true "Item ID" @Param payload body repo.ItemUpdate true "Item Data" @Success 200 {object} repo.ItemOut @Router /v1/items/{id} [PUT] @Security Bearer
func (*V1Controller) HandleItemsCreate ¶
func (ctrl *V1Controller) HandleItemsCreate() errchain.HandlerFunc
HandleItemsCreate godoc
@Summary Create Item @Tags Items @Produce json @Param payload body repo.ItemCreate true "Item Data" @Success 201 {object} repo.ItemSummary @Router /v1/items [POST] @Security Bearer
func (*V1Controller) HandleItemsExport ¶
func (ctrl *V1Controller) HandleItemsExport() errchain.HandlerFunc
HandleItemsExport godocs
@Summary Export Items @Tags Items @Success 200 {string} string "text/csv" @Router /v1/items/export [GET] @Security Bearer
func (*V1Controller) HandleItemsGetAll ¶
func (ctrl *V1Controller) HandleItemsGetAll() errchain.HandlerFunc
HandleItemsGetAll godoc
@Summary Query All Items @Tags Items @Produce json @Param q query string false "search string" @Param page query int false "page number" @Param pageSize query int false "items per page" @Param labels query []string false "label Ids" collectionFormat(multi) @Param locations query []string false "location Ids" collectionFormat(multi) @Param parentIds query []string false "parent Ids" collectionFormat(multi) @Success 200 {object} repo.PaginationResult[repo.ItemSummary]{} @Router /v1/items [GET] @Security Bearer
func (*V1Controller) HandleItemsImport ¶
func (ctrl *V1Controller) HandleItemsImport() errchain.HandlerFunc
HandleItemsImport godocs
@Summary Import Items @Tags Items @Produce json @Success 204 @Param csv formData file true "Image to upload" @Router /v1/items/import [Post] @Security Bearer
func (*V1Controller) HandleLabelDelete ¶
func (ctrl *V1Controller) HandleLabelDelete() errchain.HandlerFunc
HandleLabelDelete godocs
@Summary Delete Label @Tags Labels @Produce json @Param id path string true "Label ID" @Success 204 @Router /v1/labels/{id} [DELETE] @Security Bearer
func (*V1Controller) HandleLabelGet ¶
func (ctrl *V1Controller) HandleLabelGet() errchain.HandlerFunc
HandleLabelGet godocs
@Summary Get Label @Tags Labels @Produce json @Param id path string true "Label ID" @Success 200 {object} repo.LabelOut @Router /v1/labels/{id} [GET] @Security Bearer
func (*V1Controller) HandleLabelUpdate ¶
func (ctrl *V1Controller) HandleLabelUpdate() errchain.HandlerFunc
HandleLabelUpdate godocs
@Summary Update Label @Tags Labels @Produce json @Param id path string true "Label ID" @Success 200 {object} repo.LabelOut @Router /v1/labels/{id} [PUT] @Security Bearer
func (*V1Controller) HandleLabelsCreate ¶
func (ctrl *V1Controller) HandleLabelsCreate() errchain.HandlerFunc
HandleLabelsCreate godoc
@Summary Create Label @Tags Labels @Produce json @Param payload body repo.LabelCreate true "Label Data" @Success 200 {object} repo.LabelSummary @Router /v1/labels [POST] @Security Bearer
func (*V1Controller) HandleLabelsGetAll ¶
func (ctrl *V1Controller) HandleLabelsGetAll() errchain.HandlerFunc
HandleLabelsGetAll godoc
@Summary Get All Labels @Tags Labels @Produce json @Success 200 {object} []repo.LabelOut @Router /v1/labels [GET] @Security Bearer
func (*V1Controller) HandleLocationCreate ¶
func (ctrl *V1Controller) HandleLocationCreate() errchain.HandlerFunc
HandleLocationCreate godoc
@Summary Create Location @Tags Locations @Produce json @Param payload body repo.LocationCreate true "Location Data" @Success 200 {object} repo.LocationSummary @Router /v1/locations [POST] @Security Bearer
func (*V1Controller) HandleLocationDelete ¶
func (ctrl *V1Controller) HandleLocationDelete() errchain.HandlerFunc
HandleLocationDelete godoc
@Summary Delete Location @Tags Locations @Produce json @Param id path string true "Location ID" @Success 204 @Router /v1/locations/{id} [DELETE] @Security Bearer
func (*V1Controller) HandleLocationGet ¶
func (ctrl *V1Controller) HandleLocationGet() errchain.HandlerFunc
HandleLocationGet godoc
@Summary Get Location @Tags Locations @Produce json @Param id path string true "Location ID" @Success 200 {object} repo.LocationOut @Router /v1/locations/{id} [GET] @Security Bearer
func (*V1Controller) HandleLocationGetAll ¶
func (ctrl *V1Controller) HandleLocationGetAll() errchain.HandlerFunc
HandleLocationGetAll godoc
@Summary Get All Locations @Tags Locations @Produce json @Param filterChildren query bool false "Filter locations with parents" @Success 200 {object} []repo.LocationOutCount @Router /v1/locations [GET] @Security Bearer
func (*V1Controller) HandleLocationTreeQuery ¶
func (ctrl *V1Controller) HandleLocationTreeQuery() errchain.HandlerFunc
HandleLocationTreeQuery godoc
@Summary Get Locations Tree @Tags Locations @Produce json @Param withItems query bool false "include items in response tree" @Success 200 {object} []repo.TreeItem @Router /v1/locations/tree [GET] @Security Bearer
func (*V1Controller) HandleLocationUpdate ¶
func (ctrl *V1Controller) HandleLocationUpdate() errchain.HandlerFunc
HandleLocationUpdate godoc
@Summary Update Location @Tags Locations @Produce json @Param id path string true "Location ID" @Param payload body repo.LocationUpdate true "Location Data" @Success 200 {object} repo.LocationOut @Router /v1/locations/{id} [PUT] @Security Bearer
func (*V1Controller) HandleMaintenanceEntryCreate ¶
func (ctrl *V1Controller) HandleMaintenanceEntryCreate() errchain.HandlerFunc
HandleMaintenanceEntryCreate godoc
@Summary Create Maintenance Entry @Tags Maintenance @Produce json @Param payload body repo.MaintenanceEntryCreate true "Entry Data" @Success 201 {object} repo.MaintenanceEntry @Router /v1/items/{id}/maintenance [POST] @Security Bearer
func (*V1Controller) HandleMaintenanceEntryDelete ¶
func (ctrl *V1Controller) HandleMaintenanceEntryDelete() errchain.HandlerFunc
HandleMaintenanceEntryDelete godoc
@Summary Delete Maintenance Entry @Tags Maintenance @Produce json @Success 204 @Router /v1/items/{id}/maintenance/{entry_id} [DELETE] @Security Bearer
func (*V1Controller) HandleMaintenanceEntryUpdate ¶
func (ctrl *V1Controller) HandleMaintenanceEntryUpdate() errchain.HandlerFunc
HandleMaintenanceEntryUpdate godoc
@Summary Update Maintenance Entry @Tags Maintenance @Produce json @Param payload body repo.MaintenanceEntryUpdate true "Entry Data" @Success 200 {object} repo.MaintenanceEntry @Router /v1/items/{id}/maintenance/{entry_id} [PUT] @Security Bearer
func (*V1Controller) HandleMaintenanceLogGet ¶
func (ctrl *V1Controller) HandleMaintenanceLogGet() errchain.HandlerFunc
HandleMaintenanceLogGet godoc
@Summary Get Maintenance Log @Tags Maintenance @Produce json @Success 200 {object} repo.MaintenanceLog @Router /v1/items/{id}/maintenance [GET] @Security Bearer
func (*V1Controller) HandleSetPrimaryPhotos ¶
func (ctrl *V1Controller) HandleSetPrimaryPhotos() errchain.HandlerFunc
HandleSetPrimaryPhotos godoc
@Summary Set Primary Photos @Description Sets the first photo of each item as the primary photo @Tags Actions @Produce json @Success 200 {object} ActionAmountResult @Router /v1/actions/set-primary-photos [Post] @Security Bearer
func (*V1Controller) HandleUpdateNotifier ¶
func (ctrl *V1Controller) HandleUpdateNotifier() errchain.HandlerFunc
HandleUpdateNotifier godocs
@Summary Update Notifier @Tags Notifiers @Param id path string true "Notifier ID" @Param payload body repo.NotifierUpdate true "Notifier Data" @Success 200 {object} repo.NotifierOut @Router /v1/notifiers/{id} [PUT] @Security Bearer
func (*V1Controller) HandleUserRegistration ¶
func (ctrl *V1Controller) HandleUserRegistration() errchain.HandlerFunc
HandleUserRegistration godoc
@Summary Register New User @Tags User @Produce json @Param payload body services.UserRegistration true "User Data" @Success 204 @Router /v1/users/register [Post]
func (*V1Controller) HandleUserSelf ¶
func (ctrl *V1Controller) HandleUserSelf() errchain.HandlerFunc
HandleUserSelf godoc
@Summary Get User Self @Tags User @Produce json @Success 200 {object} Wrapped{item=repo.UserOut} @Router /v1/users/self [GET] @Security Bearer
func (*V1Controller) HandleUserSelfChangePassword ¶
func (ctrl *V1Controller) HandleUserSelfChangePassword() errchain.HandlerFunc
HandleUserSelfChangePassword godoc
@Summary Change Password @Tags User @Success 204 @Param payload body ChangePassword true "Password Payload" @Router /v1/users/change-password [PUT] @Security Bearer
func (*V1Controller) HandleUserSelfDelete ¶
func (ctrl *V1Controller) HandleUserSelfDelete() errchain.HandlerFunc
HandleUserSelfDelete godoc
@Summary Delete Account @Tags User @Produce json @Success 204 @Router /v1/users/self [DELETE] @Security Bearer
func (*V1Controller) HandleUserSelfUpdate ¶
func (ctrl *V1Controller) HandleUserSelfUpdate() errchain.HandlerFunc
HandleUserSelfUpdate godoc
@Summary Update Account @Tags User @Produce json @Param payload body repo.UserUpdate true "User Data" @Success 200 {object} Wrapped{item=repo.UserUpdate} @Router /v1/users/self [PUT] @Security Bearer
func (*V1Controller) HandlerNotifierTest ¶
func (ctrl *V1Controller) HandlerNotifierTest() errchain.HandlerFunc
HandlerNotifierTest godoc
@Summary Test Notifier @Tags Notifiers @Produce json @Param id path string true "Notifier ID" @Param url query string true "URL" @Success 204 @Router /v1/notifiers/test [POST] @Security Bearer
Source Files ¶
- controller.go
- partials.go
- query_params.go
- v1_ctrl_actions.go
- v1_ctrl_assets.go
- v1_ctrl_auth.go
- v1_ctrl_group.go
- v1_ctrl_items.go
- v1_ctrl_items_attachments.go
- v1_ctrl_labels.go
- v1_ctrl_locations.go
- v1_ctrl_maint_entry.go
- v1_ctrl_notifiers.go
- v1_ctrl_qrcode.go
- v1_ctrl_reporting.go
- v1_ctrl_statistics.go
- v1_ctrl_user.go