1 // Copyright (C) The Arvados Authors. All rights reserved.
3 // SPDX-License-Identifier: Apache-2.0
7 type APIEndpoint struct {
10 // "new attributes" key for create/update requests
15 EndpointCollectionCreate = APIEndpoint{"POST", "arvados/v1/collections", "collection"}
16 EndpointCollectionUpdate = APIEndpoint{"PATCH", "arvados/v1/collections/:uuid", "collection"}
17 EndpointCollectionGet = APIEndpoint{"GET", "arvados/v1/collections/:uuid", ""}
18 EndpointCollectionList = APIEndpoint{"GET", "arvados/v1/collections", ""}
19 EndpointCollectionProvenance = APIEndpoint{"GET", "arvados/v1/collections/:uuid/provenance", ""}
20 EndpointCollectionUsedBy = APIEndpoint{"GET", "arvados/v1/collections/:uuid/used_by", ""}
21 EndpointCollectionDelete = APIEndpoint{"DELETE", "arvados/v1/collections/:uuid", ""}
22 EndpointSpecimenCreate = APIEndpoint{"POST", "arvados/v1/specimens", "specimen"}
23 EndpointSpecimenUpdate = APIEndpoint{"PATCH", "arvados/v1/specimens/:uuid", "specimen"}
24 EndpointSpecimenGet = APIEndpoint{"GET", "arvados/v1/specimens/:uuid", ""}
25 EndpointSpecimenList = APIEndpoint{"GET", "arvados/v1/specimens", ""}
26 EndpointSpecimenDelete = APIEndpoint{"DELETE", "arvados/v1/specimens/:uuid", ""}
27 EndpointContainerCreate = APIEndpoint{"POST", "arvados/v1/containers", "container"}
28 EndpointContainerUpdate = APIEndpoint{"PATCH", "arvados/v1/containers/:uuid", "container"}
29 EndpointContainerGet = APIEndpoint{"GET", "arvados/v1/containers/:uuid", ""}
30 EndpointContainerList = APIEndpoint{"GET", "arvados/v1/containers", ""}
31 EndpointContainerDelete = APIEndpoint{"DELETE", "arvados/v1/containers/:uuid", ""}
32 EndpointContainerLock = APIEndpoint{"POST", "arvados/v1/containers/:uuid/lock", ""}
33 EndpointContainerUnlock = APIEndpoint{"POST", "arvados/v1/containers/:uuid/unlock", ""}
34 EndpointAPIClientAuthorizationCurrent = APIEndpoint{"GET", "arvados/v1/api_client_authorizations/current", ""}
37 type GetOptions struct {
38 UUID string `json:"uuid"`
39 Select []string `json:"select"`
42 type ListOptions struct {
43 Select []string `json:"select"`
44 Filters []Filter `json:"filters"`
45 Where map[string]interface{} `json:"where"`
46 Limit int `json:"limit"`
47 Offset int `json:"offset"`
48 Order []string `json:"order"`
49 Distinct bool `json:"distinct"`
50 Count string `json:"count"`
51 IncludeTrash bool `json:"include_trash"`
52 IncludeOldVersions bool `json:"include_old_versions"`
55 type CreateOptions struct {
56 ClusterID string `json:"cluster_id"`
57 EnsureUniqueName bool `json:"ensure_unique_name"`
58 Select []string `json:"select"`
59 Attrs map[string]interface{} `json:"attrs"`
62 type UpdateOptions struct {
63 UUID string `json:"uuid"`
64 Attrs map[string]interface{} `json:"attrs"`
67 type DeleteOptions struct {
68 UUID string `json:"uuid"`