github.com/akamai/AkamaiOPEN-edgegrid-golang@v1.2.2/api-endpoints-v2/resources.go (about) 1 package apiendpoints 2 3 import ( 4 "fmt" 5 6 "github.com/akamai/AkamaiOPEN-edgegrid-golang/client-v1" 7 ) 8 9 type Resources []Resource 10 11 type Resource struct { 12 APIResourceID int `json:"apiResourceId"` 13 APIResourceName string `json:"apiResourceName"` 14 ResourcePath string `json:"resourcePath"` 15 Description string `json:"description"` 16 LockVersion int `json:"lockVersion"` 17 APIResourceClonedFromID *int `json:"apiResourceClonedFromId"` 18 APIResourceLogicID int `json:"apiResourceLogicId"` 19 CreatedBy string `json:"createdBy"` 20 CreateDate string `json:"createDate"` 21 UpdatedBy string `json:"updatedBy"` 22 UpdateDate string `json:"updateDate"` 23 APIResourceMethods Methods `json:"apiResourceMethods"` 24 } 25 26 type ResourceBaseInfo struct { 27 APIResourceClonedFromID *int `json:"apiResourceClonedFromId"` 28 APIResourceID int `json:"apiResourceId"` 29 APIResourceLogicID int `json:"apiResourceLogicId"` 30 APIResourceName string `json:"apiResourceName"` 31 CreateDate string `json:"createDate"` 32 CreatedBy string `json:"createdBy"` 33 Description *string `json:"description"` 34 Link *string `json:"link"` 35 LockVersion int `json:"lockVersion"` 36 Private bool `json:"private"` 37 ResourcePath string `json:"resourcePath"` 38 UpdateDate string `json:"updateDate"` 39 UpdatedBy string `json:"updatedBy"` 40 } 41 42 type ResourceSettings struct { 43 Path string `json:"path"` 44 Methods []MethodValue `json:"methods"` 45 InheritsFromEndpoint bool `json:"inheritsFromEndpoint"` 46 } 47 48 func GetResources(endpointId int, version int) (*Resources, error) { 49 req, err := client.NewJSONRequest( 50 Config, 51 "GET", 52 fmt.Sprintf( 53 "/api-definitions/v2/endpoints/%d/versions/%d/resources", 54 endpointId, 55 version, 56 ), 57 nil, 58 ) 59 60 if err != nil { 61 return nil, err 62 } 63 64 res, err := client.Do(Config, req) 65 66 if client.IsError(res) { 67 return nil, client.NewAPIError(res) 68 } 69 70 rep := &Resources{} 71 if err = client.BodyJSON(res, rep); err != nil { 72 return nil, err 73 } 74 75 return rep, nil 76 }