diff --git a/Gopkg.lock b/Gopkg.lock index 430e9f7e6..98d6a1c52 100644 --- a/Gopkg.lock +++ b/Gopkg.lock @@ -76,8 +76,8 @@ [[projects]] branch = "master" name = "github.com/dropbox/dropbox-sdk-go-unofficial" - packages = ["dropbox","dropbox/async","dropbox/files","dropbox/properties"] - revision = "350942579f314463a49b660b7a35f01dbf392a7f" + packages = ["dropbox","dropbox/async","dropbox/file_properties","dropbox/files"] + revision = "98997935f6b3ff4f4fa46275abaa23b02537178d" [[projects]] name = "github.com/go-ini/ini" diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/.travis.yml b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/.travis.yml index 761f471d8..dae2b0a5f 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/.travis.yml +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/.travis.yml @@ -1,9 +1,10 @@ language: go go: - - 1.6.4 - - 1.7.6 - - 1.8.3 + - 1.6.x + - 1.7.x + - 1.8.x + - 1.9.x install: - go get -u golang.org/x/oauth2 diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/common/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/common/types.go index 821765e62..fa56cc85c 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/common/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/common/types.go @@ -45,11 +45,11 @@ type PathRoot struct { dropbox.Tagged // Team : Paths are relative to the given team directory. (This results in // `PathRootError.invalid` if the user is not a member of the team - // associated with that path root id.) + // associated with that path root id.). Team string `json:"team,omitempty"` // NamespaceId : Paths are relative to given namespace id (This results in // `PathRootError.no_permission` if you don't have access to this - // namespace.) + // namespace.). NamespaceId string `json:"namespace_id,omitempty"` } diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties/client.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties/client.go new file mode 100644 index 000000000..d1d92bcec --- /dev/null +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties/client.go @@ -0,0 +1,980 @@ +// Copyright (c) Dropbox, Inc. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +package file_properties + +import ( + "bytes" + "encoding/json" + "io/ioutil" + "net/http" + + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" +) + +// Client interface describes all routes in this namespace +type Client interface { + // PropertiesAdd : Add property groups to a Dropbox file. See + // `templatesAddForUser` or `templatesAddForTeam` to create new templates. + PropertiesAdd(arg *AddPropertiesArg) (err error) + // PropertiesOverwrite : Overwrite property groups associated with a file. + // This endpoint should be used instead of `propertiesUpdate` when property + // groups are being updated via a "snapshot" instead of via a "delta". In + // other words, this endpoint will delete all omitted fields from a property + // group, whereas `propertiesUpdate` will only delete fields that are + // explicitly marked for deletion. + PropertiesOverwrite(arg *OverwritePropertyGroupArg) (err error) + // PropertiesRemove : Remove the specified property group from the file. To + // remove specific property field key value pairs, see route + // `propertiesUpdate`. To update a template, see `templatesUpdateForUser` or + // `templatesUpdateForTeam`. Templates can't be removed once created. + PropertiesRemove(arg *RemovePropertiesArg) (err error) + // PropertiesSearch : Search across property templates for particular + // property field values. + PropertiesSearch(arg *PropertiesSearchArg) (res *PropertiesSearchResult, err error) + // PropertiesUpdate : Add, update or remove properties associated with the + // supplied file and templates. This endpoint should be used instead of + // `propertiesOverwrite` when property groups are being updated via a + // "delta" instead of via a "snapshot" . In other words, this endpoint will + // not delete any omitted fields from a property group, whereas + // `propertiesOverwrite` will delete any fields that are omitted from a + // property group. + PropertiesUpdate(arg *UpdatePropertiesArg) (err error) + // TemplatesAddForTeam : Add a template associated with a team. See route + // `propertiesAdd` to add properties to a file or folder. + TemplatesAddForTeam(arg *AddTemplateArg) (res *AddTemplateResult, err error) + // TemplatesAddForUser : Add a template associated with a user. See route + // `propertiesAdd` to add properties to a file. + TemplatesAddForUser(arg *AddTemplateArg) (res *AddTemplateResult, err error) + // TemplatesGetForTeam : Get the schema for a specified template. + TemplatesGetForTeam(arg *GetTemplateArg) (res *GetTemplateResult, err error) + // TemplatesGetForUser : Get the schema for a specified template. + TemplatesGetForUser(arg *GetTemplateArg) (res *GetTemplateResult, err error) + // TemplatesListForTeam : Get the template identifiers for a team. To get + // the schema of each template use `templatesGetForTeam`. + TemplatesListForTeam() (res *ListTemplateResult, err error) + // TemplatesListForUser : Get the template identifiers for a team. To get + // the schema of each template use `templatesGetForUser`. + TemplatesListForUser() (res *ListTemplateResult, err error) + // TemplatesUpdateForTeam : Update a template associated with a team. This + // route can update the template name, the template description and add + // optional properties to templates. + TemplatesUpdateForTeam(arg *UpdateTemplateArg) (res *UpdateTemplateResult, err error) + // TemplatesUpdateForUser : Update a template associated with a user. This + // route can update the template name, the template description and add + // optional properties to templates. + TemplatesUpdateForUser(arg *UpdateTemplateArg) (res *UpdateTemplateResult, err error) +} + +type apiImpl dropbox.Context + +//PropertiesAddAPIError is an error-wrapper for the properties/add route +type PropertiesAddAPIError struct { + dropbox.APIError + EndpointError *AddPropertiesError `json:"error"` +} + +func (dbx *apiImpl) PropertiesAdd(arg *AddPropertiesArg) (err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "properties/add", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + return + } + if resp.StatusCode == http.StatusConflict { + var apiError PropertiesAddAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//PropertiesOverwriteAPIError is an error-wrapper for the properties/overwrite route +type PropertiesOverwriteAPIError struct { + dropbox.APIError + EndpointError *InvalidPropertyGroupError `json:"error"` +} + +func (dbx *apiImpl) PropertiesOverwrite(arg *OverwritePropertyGroupArg) (err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "properties/overwrite", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + return + } + if resp.StatusCode == http.StatusConflict { + var apiError PropertiesOverwriteAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//PropertiesRemoveAPIError is an error-wrapper for the properties/remove route +type PropertiesRemoveAPIError struct { + dropbox.APIError + EndpointError *RemovePropertiesError `json:"error"` +} + +func (dbx *apiImpl) PropertiesRemove(arg *RemovePropertiesArg) (err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "properties/remove", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + return + } + if resp.StatusCode == http.StatusConflict { + var apiError PropertiesRemoveAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//PropertiesSearchAPIError is an error-wrapper for the properties/search route +type PropertiesSearchAPIError struct { + dropbox.APIError + EndpointError *PropertiesSearchError `json:"error"` +} + +func (dbx *apiImpl) PropertiesSearch(arg *PropertiesSearchArg) (res *PropertiesSearchResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "properties/search", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError PropertiesSearchAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//PropertiesUpdateAPIError is an error-wrapper for the properties/update route +type PropertiesUpdateAPIError struct { + dropbox.APIError + EndpointError *UpdatePropertiesError `json:"error"` +} + +func (dbx *apiImpl) PropertiesUpdate(arg *UpdatePropertiesArg) (err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "properties/update", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + return + } + if resp.StatusCode == http.StatusConflict { + var apiError PropertiesUpdateAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesAddForTeamAPIError is an error-wrapper for the templates/add_for_team route +type TemplatesAddForTeamAPIError struct { + dropbox.APIError + EndpointError *ModifyTemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesAddForTeam(arg *AddTemplateArg) (res *AddTemplateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/add_for_team", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesAddForTeamAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesAddForUserAPIError is an error-wrapper for the templates/add_for_user route +type TemplatesAddForUserAPIError struct { + dropbox.APIError + EndpointError *ModifyTemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesAddForUser(arg *AddTemplateArg) (res *AddTemplateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/add_for_user", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesAddForUserAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesGetForTeamAPIError is an error-wrapper for the templates/get_for_team route +type TemplatesGetForTeamAPIError struct { + dropbox.APIError + EndpointError *TemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesGetForTeam(arg *GetTemplateArg) (res *GetTemplateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/get_for_team", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesGetForTeamAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesGetForUserAPIError is an error-wrapper for the templates/get_for_user route +type TemplatesGetForUserAPIError struct { + dropbox.APIError + EndpointError *TemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesGetForUser(arg *GetTemplateArg) (res *GetTemplateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/get_for_user", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesGetForUserAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesListForTeamAPIError is an error-wrapper for the templates/list_for_team route +type TemplatesListForTeamAPIError struct { + dropbox.APIError + EndpointError *TemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesListForTeam() (res *ListTemplateResult, err error) { + cli := dbx.Client + + headers := map[string]string{} + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/list_for_team", headers, nil) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesListForTeamAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesListForUserAPIError is an error-wrapper for the templates/list_for_user route +type TemplatesListForUserAPIError struct { + dropbox.APIError + EndpointError *TemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesListForUser() (res *ListTemplateResult, err error) { + cli := dbx.Client + + headers := map[string]string{} + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/list_for_user", headers, nil) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesListForUserAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesUpdateForTeamAPIError is an error-wrapper for the templates/update_for_team route +type TemplatesUpdateForTeamAPIError struct { + dropbox.APIError + EndpointError *ModifyTemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesUpdateForTeam(arg *UpdateTemplateArg) (res *UpdateTemplateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/update_for_team", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesUpdateForTeamAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//TemplatesUpdateForUserAPIError is an error-wrapper for the templates/update_for_user route +type TemplatesUpdateForUserAPIError struct { + dropbox.APIError + EndpointError *ModifyTemplateError `json:"error"` +} + +func (dbx *apiImpl) TemplatesUpdateForUser(arg *UpdateTemplateArg) (res *UpdateTemplateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_properties", "templates/update_for_user", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError TemplatesUpdateForUserAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +// New returns a Client implementation for this namespace +func New(c dropbox.Config) *apiImpl { + ctx := apiImpl(dropbox.NewContext(c)) + return &ctx +} diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties/types.go new file mode 100644 index 000000000..8a7cab368 --- /dev/null +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties/types.go @@ -0,0 +1,759 @@ +// Copyright (c) Dropbox, Inc. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +// Package file_properties : This namespace contains helpers for property and +// template metadata endpoints. These endpoints enable you to tag arbitrary +// key/value data to Dropbox files. The most basic unit in this namespace is +// the `PropertyField`. These fields encapsulate the actual key/value data. +// Fields are added to a Dropbox file using a `PropertyGroup`. Property groups +// contain a reference to a Dropbox file and a `PropertyGroupTemplate`. Property +// groups are uniquely identified by the combination of their associated Dropbox +// file and template. The `PropertyGroupTemplate` is a way of restricting the +// possible key names and value types of the data within a property group. The +// possible key names and value types are explicitly enumerated using +// `PropertyFieldTemplate` objects. You can think of a property group template +// as a class definition for a particular key/value metadata object, and the +// property groups themselves as the instantiations of these objects. +package file_properties + +import ( + "encoding/json" + + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" +) + +// AddPropertiesArg : has no documentation (yet) +type AddPropertiesArg struct { + // Path : A unique identifier for the file or folder. + Path string `json:"path"` + // PropertyGroups : The property groups which are to be added to a Dropbox + // file. + PropertyGroups []*PropertyGroup `json:"property_groups"` +} + +// NewAddPropertiesArg returns a new AddPropertiesArg instance +func NewAddPropertiesArg(Path string, PropertyGroups []*PropertyGroup) *AddPropertiesArg { + s := new(AddPropertiesArg) + s.Path = Path + s.PropertyGroups = PropertyGroups + return s +} + +// TemplateError : has no documentation (yet) +type TemplateError struct { + dropbox.Tagged + // TemplateNotFound : Template does not exist for the given identifier. + TemplateNotFound string `json:"template_not_found,omitempty"` +} + +// Valid tag values for TemplateError +const ( + TemplateErrorTemplateNotFound = "template_not_found" + TemplateErrorRestrictedContent = "restricted_content" + TemplateErrorOther = "other" +) + +// UnmarshalJSON deserializes into a TemplateError instance +func (u *TemplateError) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "template_not_found": + err = json.Unmarshal(body, &u.TemplateNotFound) + + if err != nil { + return err + } + } + return nil +} + +// PropertiesError : has no documentation (yet) +type PropertiesError struct { + dropbox.Tagged + // Path : has no documentation (yet) + Path *LookupError `json:"path,omitempty"` +} + +// Valid tag values for PropertiesError +const ( + PropertiesErrorPath = "path" + PropertiesErrorUnsupportedFolder = "unsupported_folder" +) + +// UnmarshalJSON deserializes into a PropertiesError instance +func (u *PropertiesError) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // Path : has no documentation (yet) + Path json.RawMessage `json:"path,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "path": + err = json.Unmarshal(w.Path, &u.Path) + + if err != nil { + return err + } + } + return nil +} + +// InvalidPropertyGroupError : has no documentation (yet) +type InvalidPropertyGroupError struct { + dropbox.Tagged +} + +// Valid tag values for InvalidPropertyGroupError +const ( + InvalidPropertyGroupErrorPropertyFieldTooLarge = "property_field_too_large" + InvalidPropertyGroupErrorDoesNotFitTemplate = "does_not_fit_template" +) + +// AddPropertiesError : has no documentation (yet) +type AddPropertiesError struct { + dropbox.Tagged +} + +// Valid tag values for AddPropertiesError +const ( + AddPropertiesErrorPropertyGroupAlreadyExists = "property_group_already_exists" +) + +// PropertyGroupTemplate : Defines how a property group may be structured. +type PropertyGroupTemplate struct { + // Name : Display name for the template. Template names can be up to 256 + // bytes. + Name string `json:"name"` + // Description : Description for the template. Template descriptions can be + // up to 1024 bytes. + Description string `json:"description"` + // Fields : Definitions of the property fields associated with this + // template. There can be up to 32 properties in a single template. + Fields []*PropertyFieldTemplate `json:"fields"` +} + +// NewPropertyGroupTemplate returns a new PropertyGroupTemplate instance +func NewPropertyGroupTemplate(Name string, Description string, Fields []*PropertyFieldTemplate) *PropertyGroupTemplate { + s := new(PropertyGroupTemplate) + s.Name = Name + s.Description = Description + s.Fields = Fields + return s +} + +// AddTemplateArg : has no documentation (yet) +type AddTemplateArg struct { + PropertyGroupTemplate +} + +// NewAddTemplateArg returns a new AddTemplateArg instance +func NewAddTemplateArg(Name string, Description string, Fields []*PropertyFieldTemplate) *AddTemplateArg { + s := new(AddTemplateArg) + s.Name = Name + s.Description = Description + s.Fields = Fields + return s +} + +// AddTemplateResult : has no documentation (yet) +type AddTemplateResult struct { + // TemplateId : An identifier for template added by See + // `templatesAddForUser` or `templatesAddForTeam`. + TemplateId string `json:"template_id"` +} + +// NewAddTemplateResult returns a new AddTemplateResult instance +func NewAddTemplateResult(TemplateId string) *AddTemplateResult { + s := new(AddTemplateResult) + s.TemplateId = TemplateId + return s +} + +// GetTemplateArg : has no documentation (yet) +type GetTemplateArg struct { + // TemplateId : An identifier for template added by route See + // `templatesAddForUser` or `templatesAddForTeam`. + TemplateId string `json:"template_id"` +} + +// NewGetTemplateArg returns a new GetTemplateArg instance +func NewGetTemplateArg(TemplateId string) *GetTemplateArg { + s := new(GetTemplateArg) + s.TemplateId = TemplateId + return s +} + +// GetTemplateResult : has no documentation (yet) +type GetTemplateResult struct { + PropertyGroupTemplate +} + +// NewGetTemplateResult returns a new GetTemplateResult instance +func NewGetTemplateResult(Name string, Description string, Fields []*PropertyFieldTemplate) *GetTemplateResult { + s := new(GetTemplateResult) + s.Name = Name + s.Description = Description + s.Fields = Fields + return s +} + +// ListTemplateResult : has no documentation (yet) +type ListTemplateResult struct { + // TemplateIds : List of identifiers for templates added by See + // `templatesAddForUser` or `templatesAddForTeam`. + TemplateIds []string `json:"template_ids"` +} + +// NewListTemplateResult returns a new ListTemplateResult instance +func NewListTemplateResult(TemplateIds []string) *ListTemplateResult { + s := new(ListTemplateResult) + s.TemplateIds = TemplateIds + return s +} + +// LogicalOperator : Logical operator to join search queries together. +type LogicalOperator struct { + dropbox.Tagged +} + +// Valid tag values for LogicalOperator +const ( + LogicalOperatorOrOperator = "or_operator" + LogicalOperatorOther = "other" +) + +// LookUpPropertiesError : has no documentation (yet) +type LookUpPropertiesError struct { + dropbox.Tagged +} + +// Valid tag values for LookUpPropertiesError +const ( + LookUpPropertiesErrorPropertyGroupNotFound = "property_group_not_found" + LookUpPropertiesErrorOther = "other" +) + +// LookupError : has no documentation (yet) +type LookupError struct { + dropbox.Tagged + // MalformedPath : has no documentation (yet) + MalformedPath string `json:"malformed_path,omitempty"` +} + +// Valid tag values for LookupError +const ( + LookupErrorMalformedPath = "malformed_path" + LookupErrorNotFound = "not_found" + LookupErrorNotFile = "not_file" + LookupErrorNotFolder = "not_folder" + LookupErrorRestrictedContent = "restricted_content" + LookupErrorOther = "other" +) + +// UnmarshalJSON deserializes into a LookupError instance +func (u *LookupError) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "malformed_path": + err = json.Unmarshal(body, &u.MalformedPath) + + if err != nil { + return err + } + } + return nil +} + +// ModifyTemplateError : has no documentation (yet) +type ModifyTemplateError struct { + dropbox.Tagged +} + +// Valid tag values for ModifyTemplateError +const ( + ModifyTemplateErrorConflictingPropertyNames = "conflicting_property_names" + ModifyTemplateErrorTooManyProperties = "too_many_properties" + ModifyTemplateErrorTooManyTemplates = "too_many_templates" + ModifyTemplateErrorTemplateAttributeTooLarge = "template_attribute_too_large" +) + +// OverwritePropertyGroupArg : has no documentation (yet) +type OverwritePropertyGroupArg struct { + // Path : A unique identifier for the file or folder. + Path string `json:"path"` + // PropertyGroups : The property groups "snapshot" updates to force apply. + PropertyGroups []*PropertyGroup `json:"property_groups"` +} + +// NewOverwritePropertyGroupArg returns a new OverwritePropertyGroupArg instance +func NewOverwritePropertyGroupArg(Path string, PropertyGroups []*PropertyGroup) *OverwritePropertyGroupArg { + s := new(OverwritePropertyGroupArg) + s.Path = Path + s.PropertyGroups = PropertyGroups + return s +} + +// PropertiesSearchArg : has no documentation (yet) +type PropertiesSearchArg struct { + // Queries : Queries to search. + Queries []*PropertiesSearchQuery `json:"queries"` + // TemplateFilter : Filter results to contain only properties associated + // with these template IDs. + TemplateFilter *TemplateFilter `json:"template_filter"` +} + +// NewPropertiesSearchArg returns a new PropertiesSearchArg instance +func NewPropertiesSearchArg(Queries []*PropertiesSearchQuery) *PropertiesSearchArg { + s := new(PropertiesSearchArg) + s.Queries = Queries + s.TemplateFilter = &TemplateFilter{Tagged: dropbox.Tagged{"filter_none"}} + return s +} + +// PropertiesSearchError : has no documentation (yet) +type PropertiesSearchError struct { + dropbox.Tagged + // PropertyGroupLookup : has no documentation (yet) + PropertyGroupLookup *LookUpPropertiesError `json:"property_group_lookup,omitempty"` +} + +// Valid tag values for PropertiesSearchError +const ( + PropertiesSearchErrorPropertyGroupLookup = "property_group_lookup" + PropertiesSearchErrorOther = "other" +) + +// UnmarshalJSON deserializes into a PropertiesSearchError instance +func (u *PropertiesSearchError) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // PropertyGroupLookup : has no documentation (yet) + PropertyGroupLookup json.RawMessage `json:"property_group_lookup,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "property_group_lookup": + err = json.Unmarshal(w.PropertyGroupLookup, &u.PropertyGroupLookup) + + if err != nil { + return err + } + } + return nil +} + +// PropertiesSearchMatch : has no documentation (yet) +type PropertiesSearchMatch struct { + // Id : The ID for the matched file or folder. + Id string `json:"id"` + // Path : The path for the matched file or folder. + Path string `json:"path"` + // PropertyGroups : List of custom property groups associated with the file. + PropertyGroups []*PropertyGroup `json:"property_groups"` +} + +// NewPropertiesSearchMatch returns a new PropertiesSearchMatch instance +func NewPropertiesSearchMatch(Id string, Path string, PropertyGroups []*PropertyGroup) *PropertiesSearchMatch { + s := new(PropertiesSearchMatch) + s.Id = Id + s.Path = Path + s.PropertyGroups = PropertyGroups + return s +} + +// PropertiesSearchMode : has no documentation (yet) +type PropertiesSearchMode struct { + dropbox.Tagged + // FieldName : Search for a value associated with this field name. + FieldName string `json:"field_name,omitempty"` +} + +// Valid tag values for PropertiesSearchMode +const ( + PropertiesSearchModeFieldName = "field_name" + PropertiesSearchModeOther = "other" +) + +// UnmarshalJSON deserializes into a PropertiesSearchMode instance +func (u *PropertiesSearchMode) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "field_name": + err = json.Unmarshal(body, &u.FieldName) + + if err != nil { + return err + } + } + return nil +} + +// PropertiesSearchQuery : has no documentation (yet) +type PropertiesSearchQuery struct { + // Query : The property field value for which to search across templates. + Query string `json:"query"` + // Mode : The mode with which to perform the search. + Mode *PropertiesSearchMode `json:"mode"` + // LogicalOperator : The logical operator with which to append the query. + LogicalOperator *LogicalOperator `json:"logical_operator"` +} + +// NewPropertiesSearchQuery returns a new PropertiesSearchQuery instance +func NewPropertiesSearchQuery(Query string, Mode *PropertiesSearchMode) *PropertiesSearchQuery { + s := new(PropertiesSearchQuery) + s.Query = Query + s.Mode = Mode + s.LogicalOperator = &LogicalOperator{Tagged: dropbox.Tagged{"or_operator"}} + return s +} + +// PropertiesSearchResult : has no documentation (yet) +type PropertiesSearchResult struct { + // Matches : A list (possibly empty) of matches for the query. + Matches []*PropertiesSearchMatch `json:"matches"` +} + +// NewPropertiesSearchResult returns a new PropertiesSearchResult instance +func NewPropertiesSearchResult(Matches []*PropertiesSearchMatch) *PropertiesSearchResult { + s := new(PropertiesSearchResult) + s.Matches = Matches + return s +} + +// PropertyField : Raw key/value data to be associated with a Dropbox file. +// Property fields are added to Dropbox files as a `PropertyGroup`. +type PropertyField struct { + // Name : Key of the property field associated with a file and template. + // Keys can be up to 256 bytes. + Name string `json:"name"` + // Value : Value of the property field associated with a file and template. + // Values can be up to 1024 bytes. + Value string `json:"value"` +} + +// NewPropertyField returns a new PropertyField instance +func NewPropertyField(Name string, Value string) *PropertyField { + s := new(PropertyField) + s.Name = Name + s.Value = Value + return s +} + +// PropertyFieldTemplate : Defines how a single property field may be +// structured. Used exclusively by `PropertyGroupTemplate`. +type PropertyFieldTemplate struct { + // Name : Key of the property field being described. Property field keys can + // be up to 256 bytes. + Name string `json:"name"` + // Description : Description of the property field. Property field + // descriptions can be up to 1024 bytes. + Description string `json:"description"` + // Type : Data type of the value of this property field. This type will be + // enforced upon property creation and modifications. + Type *PropertyType `json:"type"` +} + +// NewPropertyFieldTemplate returns a new PropertyFieldTemplate instance +func NewPropertyFieldTemplate(Name string, Description string, Type *PropertyType) *PropertyFieldTemplate { + s := new(PropertyFieldTemplate) + s.Name = Name + s.Description = Description + s.Type = Type + return s +} + +// PropertyGroup : A subset of the property fields described by the +// corresponding `PropertyGroupTemplate`. Properties are always added to a +// Dropbox file as a `PropertyGroup`. The possible key names and value types in +// this group are defined by the corresponding `PropertyGroupTemplate`. +type PropertyGroup struct { + // TemplateId : A unique identifier for the associated template. + TemplateId string `json:"template_id"` + // Fields : The actual properties associated with the template. There can be + // up to 32 property types per template. + Fields []*PropertyField `json:"fields"` +} + +// NewPropertyGroup returns a new PropertyGroup instance +func NewPropertyGroup(TemplateId string, Fields []*PropertyField) *PropertyGroup { + s := new(PropertyGroup) + s.TemplateId = TemplateId + s.Fields = Fields + return s +} + +// PropertyGroupUpdate : has no documentation (yet) +type PropertyGroupUpdate struct { + // TemplateId : A unique identifier for a property template. + TemplateId string `json:"template_id"` + // AddOrUpdateFields : Property fields to update. If the property field + // already exists, it is updated. If the property field doesn't exist, the + // property group is added. + AddOrUpdateFields []*PropertyField `json:"add_or_update_fields,omitempty"` + // RemoveFields : Property fields to remove (by name), provided they exist. + RemoveFields []string `json:"remove_fields,omitempty"` +} + +// NewPropertyGroupUpdate returns a new PropertyGroupUpdate instance +func NewPropertyGroupUpdate(TemplateId string) *PropertyGroupUpdate { + s := new(PropertyGroupUpdate) + s.TemplateId = TemplateId + return s +} + +// PropertyType : Data type of the given property field added. +type PropertyType struct { + dropbox.Tagged +} + +// Valid tag values for PropertyType +const ( + PropertyTypeString = "string" + PropertyTypeOther = "other" +) + +// RemovePropertiesArg : has no documentation (yet) +type RemovePropertiesArg struct { + // Path : A unique identifier for the file or folder. + Path string `json:"path"` + // PropertyTemplateIds : A list of identifiers for a template created by + // `templatesAddForUser` or `templatesAddForTeam`. + PropertyTemplateIds []string `json:"property_template_ids"` +} + +// NewRemovePropertiesArg returns a new RemovePropertiesArg instance +func NewRemovePropertiesArg(Path string, PropertyTemplateIds []string) *RemovePropertiesArg { + s := new(RemovePropertiesArg) + s.Path = Path + s.PropertyTemplateIds = PropertyTemplateIds + return s +} + +// RemovePropertiesError : has no documentation (yet) +type RemovePropertiesError struct { + dropbox.Tagged + // PropertyGroupLookup : has no documentation (yet) + PropertyGroupLookup *LookUpPropertiesError `json:"property_group_lookup,omitempty"` +} + +// Valid tag values for RemovePropertiesError +const ( + RemovePropertiesErrorPropertyGroupLookup = "property_group_lookup" +) + +// UnmarshalJSON deserializes into a RemovePropertiesError instance +func (u *RemovePropertiesError) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // PropertyGroupLookup : has no documentation (yet) + PropertyGroupLookup json.RawMessage `json:"property_group_lookup,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "property_group_lookup": + err = json.Unmarshal(w.PropertyGroupLookup, &u.PropertyGroupLookup) + + if err != nil { + return err + } + } + return nil +} + +// TemplateFilter : has no documentation (yet) +type TemplateFilter struct { + dropbox.Tagged + // FilterSome : Only templates with an ID in the supplied list will be + // returned (a subset of templates will be returned). + FilterSome []string `json:"filter_some,omitempty"` +} + +// Valid tag values for TemplateFilter +const ( + TemplateFilterFilterNone = "filter_none" + TemplateFilterFilterSome = "filter_some" + TemplateFilterOther = "other" +) + +// UnmarshalJSON deserializes into a TemplateFilter instance +func (u *TemplateFilter) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // FilterSome : Only templates with an ID in the supplied list will be + // returned (a subset of templates will be returned). + FilterSome json.RawMessage `json:"filter_some,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "filter_some": + err = json.Unmarshal(body, &u.FilterSome) + + if err != nil { + return err + } + } + return nil +} + +// TemplateOwnerType : has no documentation (yet) +type TemplateOwnerType struct { + dropbox.Tagged +} + +// Valid tag values for TemplateOwnerType +const ( + TemplateOwnerTypeUser = "user" + TemplateOwnerTypeTeam = "team" + TemplateOwnerTypeOther = "other" +) + +// UpdatePropertiesArg : has no documentation (yet) +type UpdatePropertiesArg struct { + // Path : A unique identifier for the file or folder. + Path string `json:"path"` + // UpdatePropertyGroups : The property groups "delta" updates to apply. + UpdatePropertyGroups []*PropertyGroupUpdate `json:"update_property_groups"` +} + +// NewUpdatePropertiesArg returns a new UpdatePropertiesArg instance +func NewUpdatePropertiesArg(Path string, UpdatePropertyGroups []*PropertyGroupUpdate) *UpdatePropertiesArg { + s := new(UpdatePropertiesArg) + s.Path = Path + s.UpdatePropertyGroups = UpdatePropertyGroups + return s +} + +// UpdatePropertiesError : has no documentation (yet) +type UpdatePropertiesError struct { + dropbox.Tagged + // PropertyGroupLookup : has no documentation (yet) + PropertyGroupLookup *LookUpPropertiesError `json:"property_group_lookup,omitempty"` +} + +// Valid tag values for UpdatePropertiesError +const ( + UpdatePropertiesErrorPropertyGroupLookup = "property_group_lookup" +) + +// UnmarshalJSON deserializes into a UpdatePropertiesError instance +func (u *UpdatePropertiesError) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // PropertyGroupLookup : has no documentation (yet) + PropertyGroupLookup json.RawMessage `json:"property_group_lookup,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "property_group_lookup": + err = json.Unmarshal(w.PropertyGroupLookup, &u.PropertyGroupLookup) + + if err != nil { + return err + } + } + return nil +} + +// UpdateTemplateArg : has no documentation (yet) +type UpdateTemplateArg struct { + // TemplateId : An identifier for template added by See + // `templatesAddForUser` or `templatesAddForTeam`. + TemplateId string `json:"template_id"` + // Name : A display name for the template. template names can be up to 256 + // bytes. + Name string `json:"name,omitempty"` + // Description : Description for the new template. Template descriptions can + // be up to 1024 bytes. + Description string `json:"description,omitempty"` + // AddFields : Property field templates to be added to the group template. + // There can be up to 32 properties in a single template. + AddFields []*PropertyFieldTemplate `json:"add_fields,omitempty"` +} + +// NewUpdateTemplateArg returns a new UpdateTemplateArg instance +func NewUpdateTemplateArg(TemplateId string) *UpdateTemplateArg { + s := new(UpdateTemplateArg) + s.TemplateId = TemplateId + return s +} + +// UpdateTemplateResult : has no documentation (yet) +type UpdateTemplateResult struct { + // TemplateId : An identifier for template added by route See + // `templatesAddForUser` or `templatesAddForTeam`. + TemplateId string `json:"template_id"` +} + +// NewUpdateTemplateResult returns a new UpdateTemplateResult instance +func NewUpdateTemplateResult(TemplateId string) *UpdateTemplateResult { + s := new(UpdateTemplateResult) + s.TemplateId = TemplateId + return s +} diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_requests/client.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_requests/client.go new file mode 100644 index 000000000..ccb7a39b7 --- /dev/null +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_requests/client.go @@ -0,0 +1,332 @@ +// Copyright (c) Dropbox, Inc. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +package file_requests + +import ( + "bytes" + "encoding/json" + "io/ioutil" + "net/http" + + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" +) + +// Client interface describes all routes in this namespace +type Client interface { + // Create : Creates a file request for this user. + Create(arg *CreateFileRequestArgs) (res *FileRequest, err error) + // Get : Returns the specified file request. + Get(arg *GetFileRequestArgs) (res *FileRequest, err error) + // List : Returns a list of file requests owned by this user. For apps with + // the app folder permission, this will only return file requests with + // destinations in the app folder. + List() (res *ListFileRequestsResult, err error) + // Update : Update a file request. + Update(arg *UpdateFileRequestArgs) (res *FileRequest, err error) +} + +type apiImpl dropbox.Context + +//CreateAPIError is an error-wrapper for the create route +type CreateAPIError struct { + dropbox.APIError + EndpointError *CreateFileRequestError `json:"error"` +} + +func (dbx *apiImpl) Create(arg *CreateFileRequestArgs) (res *FileRequest, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_requests", "create", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError CreateAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//GetAPIError is an error-wrapper for the get route +type GetAPIError struct { + dropbox.APIError + EndpointError *GetFileRequestError `json:"error"` +} + +func (dbx *apiImpl) Get(arg *GetFileRequestArgs) (res *FileRequest, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_requests", "get", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError GetAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//ListAPIError is an error-wrapper for the list route +type ListAPIError struct { + dropbox.APIError + EndpointError *ListFileRequestsError `json:"error"` +} + +func (dbx *apiImpl) List() (res *ListFileRequestsResult, err error) { + cli := dbx.Client + + headers := map[string]string{} + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_requests", "list", headers, nil) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError ListAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//UpdateAPIError is an error-wrapper for the update route +type UpdateAPIError struct { + dropbox.APIError + EndpointError *UpdateFileRequestError `json:"error"` +} + +func (dbx *apiImpl) Update(arg *UpdateFileRequestArgs) (res *FileRequest, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "file_requests", "update", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError UpdateAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +// New returns a Client implementation for this namespace +func New(c dropbox.Config) *apiImpl { + ctx := apiImpl(dropbox.NewContext(c)) + return &ctx +} diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_requests/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_requests/types.go new file mode 100644 index 000000000..8d7c945f9 --- /dev/null +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_requests/types.go @@ -0,0 +1,277 @@ +// Copyright (c) Dropbox, Inc. +// +// Permission is hereby granted, free of charge, to any person obtaining a copy +// of this software and associated documentation files (the "Software"), to deal +// in the Software without restriction, including without limitation the rights +// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +// copies of the Software, and to permit persons to whom the Software is +// furnished to do so, subject to the following conditions: +// +// The above copyright notice and this permission notice shall be included in +// all copies or substantial portions of the Software. +// +// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +// THE SOFTWARE. + +// Package file_requests : This namespace contains endpoints and data types for +// file request operations. Warning: This namespace is in beta and is subject to +// backwards-incompatible changes. +package file_requests + +import ( + "encoding/json" + "time" + + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" +) + +// CreateFileRequestArgs : Arguments for `create`. +type CreateFileRequestArgs struct { + // Title : The title of the file request. Must not be empty. + Title string `json:"title"` + // Destination : The path of the folder in the Dropbox where uploaded files + // will be sent. For apps with the app folder permission, this will be + // relative to the app folder. + Destination string `json:"destination"` + // Deadline : The deadline for the file request. Deadlines can only be set + // by Pro and Business accounts. + Deadline *FileRequestDeadline `json:"deadline,omitempty"` + // Open : Whether or not the file request should be open. If the file + // request is closed, it will not accept any file submissions, but it can be + // opened later. + Open bool `json:"open"` +} + +// NewCreateFileRequestArgs returns a new CreateFileRequestArgs instance +func NewCreateFileRequestArgs(Title string, Destination string) *CreateFileRequestArgs { + s := new(CreateFileRequestArgs) + s.Title = Title + s.Destination = Destination + s.Open = true + return s +} + +// GeneralFileRequestsError : There is an error accessing the file requests +// functionality. +type GeneralFileRequestsError struct { + dropbox.Tagged +} + +// Valid tag values for GeneralFileRequestsError +const ( + GeneralFileRequestsErrorDisabledForTeam = "disabled_for_team" + GeneralFileRequestsErrorOther = "other" +) + +// FileRequestError : There is an error with the file request. +type FileRequestError struct { + dropbox.Tagged +} + +// Valid tag values for FileRequestError +const ( + FileRequestErrorNotFound = "not_found" + FileRequestErrorNotAFolder = "not_a_folder" + FileRequestErrorAppLacksAccess = "app_lacks_access" + FileRequestErrorNoPermission = "no_permission" + FileRequestErrorEmailUnverified = "email_unverified" + FileRequestErrorValidationError = "validation_error" +) + +// CreateFileRequestError : There was an error creating the file request. +type CreateFileRequestError struct { + dropbox.Tagged +} + +// Valid tag values for CreateFileRequestError +const ( + CreateFileRequestErrorInvalidLocation = "invalid_location" + CreateFileRequestErrorRateLimit = "rate_limit" +) + +// FileRequest : A `file request` for +// receiving files into the user's Dropbox account. +type FileRequest struct { + // Id : The ID of the file request. + Id string `json:"id"` + // Url : The URL of the file request. + Url string `json:"url"` + // Title : The title of the file request. + Title string `json:"title"` + // Destination : The path of the folder in the Dropbox where uploaded files + // will be sent. This can be nil if the destination was removed. For apps + // with the app folder permission, this will be relative to the app folder. + Destination string `json:"destination,omitempty"` + // Created : When this file request was created. + Created time.Time `json:"created"` + // Deadline : The deadline for this file request. Only set if the request + // has a deadline. + Deadline *FileRequestDeadline `json:"deadline,omitempty"` + // IsOpen : Whether or not the file request is open. If the file request is + // closed, it will not accept any more file submissions. + IsOpen bool `json:"is_open"` + // FileCount : The number of files this file request has received. + FileCount int64 `json:"file_count"` +} + +// NewFileRequest returns a new FileRequest instance +func NewFileRequest(Id string, Url string, Title string, Created time.Time, IsOpen bool, FileCount int64) *FileRequest { + s := new(FileRequest) + s.Id = Id + s.Url = Url + s.Title = Title + s.Created = Created + s.IsOpen = IsOpen + s.FileCount = FileCount + return s +} + +// FileRequestDeadline : has no documentation (yet) +type FileRequestDeadline struct { + // Deadline : The deadline for this file request. + Deadline time.Time `json:"deadline"` + // AllowLateUploads : If set, allow uploads after the deadline has passed. + // These uploads will be marked overdue. + AllowLateUploads *GracePeriod `json:"allow_late_uploads,omitempty"` +} + +// NewFileRequestDeadline returns a new FileRequestDeadline instance +func NewFileRequestDeadline(Deadline time.Time) *FileRequestDeadline { + s := new(FileRequestDeadline) + s.Deadline = Deadline + return s +} + +// GetFileRequestArgs : Arguments for `get`. +type GetFileRequestArgs struct { + // Id : The ID of the file request to retrieve. + Id string `json:"id"` +} + +// NewGetFileRequestArgs returns a new GetFileRequestArgs instance +func NewGetFileRequestArgs(Id string) *GetFileRequestArgs { + s := new(GetFileRequestArgs) + s.Id = Id + return s +} + +// GetFileRequestError : There was an error retrieving the specified file +// request. +type GetFileRequestError struct { + dropbox.Tagged +} + +// Valid tag values for GetFileRequestError +const () + +// GracePeriod : has no documentation (yet) +type GracePeriod struct { + dropbox.Tagged +} + +// Valid tag values for GracePeriod +const ( + GracePeriodOneDay = "one_day" + GracePeriodTwoDays = "two_days" + GracePeriodSevenDays = "seven_days" + GracePeriodThirtyDays = "thirty_days" + GracePeriodAlways = "always" + GracePeriodOther = "other" +) + +// ListFileRequestsError : There was an error retrieving the file requests. +type ListFileRequestsError struct { + dropbox.Tagged +} + +// Valid tag values for ListFileRequestsError +const () + +// ListFileRequestsResult : Result for `list`. +type ListFileRequestsResult struct { + // FileRequests : The file requests owned by this user. Apps with the app + // folder permission will only see file requests in their app folder. + FileRequests []*FileRequest `json:"file_requests"` +} + +// NewListFileRequestsResult returns a new ListFileRequestsResult instance +func NewListFileRequestsResult(FileRequests []*FileRequest) *ListFileRequestsResult { + s := new(ListFileRequestsResult) + s.FileRequests = FileRequests + return s +} + +// UpdateFileRequestArgs : Arguments for `update`. +type UpdateFileRequestArgs struct { + // Id : The ID of the file request to update. + Id string `json:"id"` + // Title : The new title of the file request. Must not be empty. + Title string `json:"title,omitempty"` + // Destination : The new path of the folder in the Dropbox where uploaded + // files will be sent. For apps with the app folder permission, this will be + // relative to the app folder. + Destination string `json:"destination,omitempty"` + // Deadline : The new deadline for the file request. + Deadline *UpdateFileRequestDeadline `json:"deadline"` + // Open : Whether to set this file request as open or closed. + Open bool `json:"open,omitempty"` +} + +// NewUpdateFileRequestArgs returns a new UpdateFileRequestArgs instance +func NewUpdateFileRequestArgs(Id string) *UpdateFileRequestArgs { + s := new(UpdateFileRequestArgs) + s.Id = Id + s.Deadline = &UpdateFileRequestDeadline{Tagged: dropbox.Tagged{"no_update"}} + return s +} + +// UpdateFileRequestDeadline : has no documentation (yet) +type UpdateFileRequestDeadline struct { + dropbox.Tagged + // Update : If nil, the file request's deadline is cleared. + Update *FileRequestDeadline `json:"update,omitempty"` +} + +// Valid tag values for UpdateFileRequestDeadline +const ( + UpdateFileRequestDeadlineNoUpdate = "no_update" + UpdateFileRequestDeadlineUpdate = "update" + UpdateFileRequestDeadlineOther = "other" +) + +// UnmarshalJSON deserializes into a UpdateFileRequestDeadline instance +func (u *UpdateFileRequestDeadline) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // Update : If nil, the file request's deadline is cleared. + Update json.RawMessage `json:"update,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "update": + err = json.Unmarshal(body, &u.Update) + + if err != nil { + return err + } + } + return nil +} + +// UpdateFileRequestError : There is an error updating the file request. +type UpdateFileRequestError struct { + dropbox.Tagged +} + +// Valid tag values for UpdateFileRequestError +const () diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/client.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/client.go index a084e8519..3ac69599f 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/client.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/client.go @@ -30,7 +30,7 @@ import ( "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/async" - "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/properties" + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties" ) // Client interface describes all routes in this namespace @@ -118,6 +118,12 @@ type Client interface { // tif, gif and bmp. Photos that are larger than 20MB in size won't be // converted to a thumbnail. GetThumbnail(arg *ThumbnailArg) (res *FileMetadata, content io.ReadCloser, err error) + // GetThumbnailBatch : Get thumbnails for a list of images. We allow up to + // 25 thumbnails in a single batch. This method currently supports files + // with the following file extensions: jpg, jpeg, png, tiff, tif, gif and + // bmp. Photos that are larger than 20MB in size won't be converted to a + // thumbnail. + GetThumbnailBatch(arg *GetThumbnailBatchArg) (res *GetThumbnailBatchResult, err error) // ListFolder : Starts returning the contents of a folder. If the result's // `ListFolderResult.has_more` field is true, call `listFolderContinue` with // the returned `ListFolderResult.cursor` to retrieve more entries. If @@ -180,27 +186,24 @@ type Client interface { // (see https://www.dropbox.com/en/help/40). Note: This endpoint is only // available for Dropbox Business apps. PermanentlyDelete(arg *DeleteArg) (err error) - // PropertiesAdd : Add custom properties to a file using a filled property - // template. See properties/template/add to create new property templates. - PropertiesAdd(arg *PropertyGroupWithPath) (err error) - // PropertiesOverwrite : Overwrite custom properties from a specified - // template associated with a file. - PropertiesOverwrite(arg *PropertyGroupWithPath) (err error) - // PropertiesRemove : Remove all custom properties from a specified template - // associated with a file. To remove specific property key value pairs, see - // `propertiesUpdate`. To update a property template, see - // properties/template/update. Property templates can't be removed once - // created. - PropertiesRemove(arg *RemovePropertiesArg) (err error) - // PropertiesTemplateGet : Get the schema for a specified template. - PropertiesTemplateGet(arg *properties.GetPropertyTemplateArg) (res *properties.GetPropertyTemplateResult, err error) - // PropertiesTemplateList : Get the property template identifiers for a - // user. To get the schema of each template use `propertiesTemplateGet`. - PropertiesTemplateList() (res *properties.ListPropertyTemplateIds, err error) - // PropertiesUpdate : Add, update or remove custom properties from a - // specified template associated with a file. Fields that already exist and - // not described in the request will not be modified. - PropertiesUpdate(arg *UpdatePropertyGroupArg) (err error) + // PropertiesAdd : has no documentation (yet) + // Deprecated: + PropertiesAdd(arg *file_properties.AddPropertiesArg) (err error) + // PropertiesOverwrite : has no documentation (yet) + // Deprecated: + PropertiesOverwrite(arg *file_properties.OverwritePropertyGroupArg) (err error) + // PropertiesRemove : has no documentation (yet) + // Deprecated: + PropertiesRemove(arg *file_properties.RemovePropertiesArg) (err error) + // PropertiesTemplateGet : has no documentation (yet) + // Deprecated: + PropertiesTemplateGet(arg *file_properties.GetTemplateArg) (res *file_properties.GetTemplateResult, err error) + // PropertiesTemplateList : has no documentation (yet) + // Deprecated: + PropertiesTemplateList() (res *file_properties.ListTemplateResult, err error) + // PropertiesUpdate : has no documentation (yet) + // Deprecated: + PropertiesUpdate(arg *file_properties.UpdatePropertiesArg) (err error) // Restore : Restore a file to a specific revision. Restore(arg *RestoreArg) (res *FileMetadata, err error) // SaveUrl : Save a specified URL into a file in user's Dropbox. If the @@ -1675,6 +1678,78 @@ func (dbx *apiImpl) GetThumbnail(arg *ThumbnailArg) (res *FileMetadata, content return } +//GetThumbnailBatchAPIError is an error-wrapper for the get_thumbnail_batch route +type GetThumbnailBatchAPIError struct { + dropbox.APIError + EndpointError *GetThumbnailBatchError `json:"error"` +} + +func (dbx *apiImpl) GetThumbnailBatch(arg *GetThumbnailBatchArg) (res *GetThumbnailBatchResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Dropbox-API-Arg": string(b), + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("content", "rpc", true, "files", "get_thumbnail_batch", headers, nil) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError GetThumbnailBatchAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + //ListFolderAPIError is an error-wrapper for the list_folder route type ListFolderAPIError struct { dropbox.APIError @@ -2404,10 +2479,12 @@ func (dbx *apiImpl) PermanentlyDelete(arg *DeleteArg) (err error) { //PropertiesAddAPIError is an error-wrapper for the properties/add route type PropertiesAddAPIError struct { dropbox.APIError - EndpointError *AddPropertiesError `json:"error"` + EndpointError *file_properties.AddPropertiesError `json:"error"` } -func (dbx *apiImpl) PropertiesAdd(arg *PropertyGroupWithPath) (err error) { +func (dbx *apiImpl) PropertiesAdd(arg *file_properties.AddPropertiesArg) (err error) { + log.Printf("WARNING: API `PropertiesAdd` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) @@ -2471,10 +2548,12 @@ func (dbx *apiImpl) PropertiesAdd(arg *PropertyGroupWithPath) (err error) { //PropertiesOverwriteAPIError is an error-wrapper for the properties/overwrite route type PropertiesOverwriteAPIError struct { dropbox.APIError - EndpointError *InvalidPropertyGroupError `json:"error"` + EndpointError *file_properties.InvalidPropertyGroupError `json:"error"` } -func (dbx *apiImpl) PropertiesOverwrite(arg *PropertyGroupWithPath) (err error) { +func (dbx *apiImpl) PropertiesOverwrite(arg *file_properties.OverwritePropertyGroupArg) (err error) { + log.Printf("WARNING: API `PropertiesOverwrite` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) @@ -2538,10 +2617,12 @@ func (dbx *apiImpl) PropertiesOverwrite(arg *PropertyGroupWithPath) (err error) //PropertiesRemoveAPIError is an error-wrapper for the properties/remove route type PropertiesRemoveAPIError struct { dropbox.APIError - EndpointError *RemovePropertiesError `json:"error"` + EndpointError *file_properties.RemovePropertiesError `json:"error"` } -func (dbx *apiImpl) PropertiesRemove(arg *RemovePropertiesArg) (err error) { +func (dbx *apiImpl) PropertiesRemove(arg *file_properties.RemovePropertiesArg) (err error) { + log.Printf("WARNING: API `PropertiesRemove` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) @@ -2605,10 +2686,12 @@ func (dbx *apiImpl) PropertiesRemove(arg *RemovePropertiesArg) (err error) { //PropertiesTemplateGetAPIError is an error-wrapper for the properties/template/get route type PropertiesTemplateGetAPIError struct { dropbox.APIError - EndpointError *properties.PropertyTemplateError `json:"error"` + EndpointError *file_properties.TemplateError `json:"error"` } -func (dbx *apiImpl) PropertiesTemplateGet(arg *properties.GetPropertyTemplateArg) (res *properties.GetPropertyTemplateResult, err error) { +func (dbx *apiImpl) PropertiesTemplateGet(arg *file_properties.GetTemplateArg) (res *file_properties.GetTemplateResult, err error) { + log.Printf("WARNING: API `PropertiesTemplateGet` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) @@ -2677,10 +2760,12 @@ func (dbx *apiImpl) PropertiesTemplateGet(arg *properties.GetPropertyTemplateArg //PropertiesTemplateListAPIError is an error-wrapper for the properties/template/list route type PropertiesTemplateListAPIError struct { dropbox.APIError - EndpointError *properties.PropertyTemplateError `json:"error"` + EndpointError *file_properties.TemplateError `json:"error"` } -func (dbx *apiImpl) PropertiesTemplateList() (res *properties.ListPropertyTemplateIds, err error) { +func (dbx *apiImpl) PropertiesTemplateList() (res *file_properties.ListTemplateResult, err error) { + log.Printf("WARNING: API `PropertiesTemplateList` is deprecated") + cli := dbx.Client headers := map[string]string{} @@ -2741,10 +2826,12 @@ func (dbx *apiImpl) PropertiesTemplateList() (res *properties.ListPropertyTempla //PropertiesUpdateAPIError is an error-wrapper for the properties/update route type PropertiesUpdateAPIError struct { dropbox.APIError - EndpointError *UpdatePropertiesError `json:"error"` + EndpointError *file_properties.UpdatePropertiesError `json:"error"` } -func (dbx *apiImpl) PropertiesUpdate(arg *UpdatePropertyGroupArg) (err error) { +func (dbx *apiImpl) PropertiesUpdate(arg *file_properties.UpdatePropertiesArg) (err error) { + log.Printf("WARNING: API `PropertiesUpdate` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/metadata.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/metadata.go index d2346b4f5..e70da6b67 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/metadata.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/metadata.go @@ -23,9 +23,9 @@ package files import "encoding/json" type listFolderResult struct { - Entries []metadataUnion `json:"entries"` - Cursor string `json:"cursor"` - HasMore bool `json:"has_more"` + Entries []json.RawMessage `json:"entries"` + Cursor string `json:"cursor"` + HasMore bool `json:"has_more"` } // UnmarshalJSON deserializes into a ListFolderResult instance @@ -38,21 +38,18 @@ func (r *ListFolderResult) UnmarshalJSON(b []byte) error { r.HasMore = l.HasMore r.Entries = make([]IsMetadata, len(l.Entries)) for i, e := range l.Entries { - switch e.Tag { - case "file": - r.Entries[i] = e.File - case "folder": - r.Entries[i] = e.Folder - case "deleted": - r.Entries[i] = e.Deleted + metadata, err := IsMetadataFromJSON(e) + if err != nil { + return err } + r.Entries[i] = metadata } return nil } type searchMatch struct { MatchType *SearchMatchType `json:"match_type"` - Metadata metadataUnion `json:"metadata"` + Metadata json.RawMessage `json:"metadata"` } // UnmarshalJSON deserializes into a SearchMatch instance @@ -62,38 +59,51 @@ func (s *SearchMatch) UnmarshalJSON(b []byte) error { return err } s.MatchType = m.MatchType - e := m.Metadata - switch e.Tag { - case "file": - s.Metadata = e.File - case "folder": - s.Metadata = e.Folder - case "deleted": - s.Metadata = e.Deleted + metadata, err := IsMetadataFromJSON(m.Metadata) + if err != nil { + return err } + s.Metadata = metadata return nil } type deleteResult struct { FileOpsResult - Metadata metadataUnion `json:"metadata"` + Metadata json.RawMessage `json:"metadata"` } -// UnmarshalJSON deserializes into a SearchMatch instance +// UnmarshalJSON deserializes into a DeleteResult instance func (s *DeleteResult) UnmarshalJSON(b []byte) error { var m deleteResult if err := json.Unmarshal(b, &m); err != nil { return err } s.FileOpsResult = m.FileOpsResult - e := m.Metadata - switch e.Tag { - case "file": - s.Metadata = e.File - case "folder": - s.Metadata = e.Folder - case "deleted": - s.Metadata = e.Deleted + metadata, err := IsMetadataFromJSON(m.Metadata) + if err != nil { + return err } + s.Metadata = metadata + return nil +} + +type relocationResult struct { + FileOpsResult + // Metadata : Metadata of the relocated object. + Metadata json.RawMessage `json:"metadata"` +} + +// UnmarshalJSON deserializes into a RelocationResult instance +func (s *RelocationResult) UnmarshalJSON(b []byte) error { + var m relocationResult + if err := json.Unmarshal(b, &m); err != nil { + return err + } + s.FileOpsResult = m.FileOpsResult + metadata, err := IsMetadataFromJSON(m.Metadata) + if err != nil { + return err + } + s.Metadata = metadata return nil } diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/types.go index f4bb5af87..6af41bd97 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/files/types.go @@ -27,64 +27,7 @@ import ( "time" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" - "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/properties" -) - -// PropertiesError : has no documentation (yet) -type PropertiesError struct { - dropbox.Tagged - // Path : has no documentation (yet) - Path *LookupError `json:"path,omitempty"` -} - -// Valid tag values for PropertiesError -const ( - PropertiesErrorPath = "path" -) - -// UnmarshalJSON deserializes into a PropertiesError instance -func (u *PropertiesError) UnmarshalJSON(body []byte) error { - type wrap struct { - dropbox.Tagged - // Path : has no documentation (yet) - Path json.RawMessage `json:"path,omitempty"` - } - var w wrap - var err error - if err = json.Unmarshal(body, &w); err != nil { - return err - } - u.Tag = w.Tag - switch u.Tag { - case "path": - err = json.Unmarshal(w.Path, &u.Path) - - if err != nil { - return err - } - } - return nil -} - -// InvalidPropertyGroupError : has no documentation (yet) -type InvalidPropertyGroupError struct { - dropbox.Tagged -} - -// Valid tag values for InvalidPropertyGroupError -const ( - InvalidPropertyGroupErrorPropertyFieldTooLarge = "property_field_too_large" - InvalidPropertyGroupErrorDoesNotFitTemplate = "does_not_fit_template" -) - -// AddPropertiesError : has no documentation (yet) -type AddPropertiesError struct { - dropbox.Tagged -} - -// Valid tag values for AddPropertiesError -const ( - AddPropertiesErrorPropertyGroupAlreadyExists = "property_group_already_exists" + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties" ) // GetMetadataArg : has no documentation (yet) @@ -171,7 +114,7 @@ func (u *GetMetadataError) UnmarshalJSON(body []byte) error { type AlphaGetMetadataError struct { dropbox.Tagged // PropertiesError : has no documentation (yet) - PropertiesError *LookUpPropertiesError `json:"properties_error,omitempty"` + PropertiesError *file_properties.LookUpPropertiesError `json:"properties_error,omitempty"` } // Valid tag values for AlphaGetMetadataError @@ -239,7 +182,7 @@ func NewCommitInfo(Path string) *CommitInfo { type CommitInfoWithProperties struct { CommitInfo // PropertyGroups : List of custom properties to add to file. - PropertyGroups []*properties.PropertyGroup `json:"property_groups,omitempty"` + PropertyGroups []*file_properties.PropertyGroup `json:"property_groups,omitempty"` } // NewCommitInfoWithProperties returns a new CommitInfoWithProperties instance @@ -606,7 +549,7 @@ type Metadata struct { // only the casing of paths won't be returned by `listFolderContinue`. This // field will be null if the file or folder is not mounted. PathDisplay string `json:"path_display,omitempty"` - // ParentSharedFolderId : Deprecated. Please use + // ParentSharedFolderId : Please use // `FileSharingInfo.parent_shared_folder_id` or // `FolderSharingInfo.parent_shared_folder_id` instead. ParentSharedFolderId string `json:"parent_shared_folder_id,omitempty"` @@ -737,7 +680,7 @@ func NewDimensions(Height uint64, Width uint64) *Dimensions { type DownloadArg struct { // Path : The path of the file to download. Path string `json:"path"` - // Rev : Deprecated. Please specify revision in `path` instead. + // Rev : Please specify revision in `path` instead. Rev string `json:"rev,omitempty"` // ExtraHeaders can be used to pass Range, If-None-Match headers ExtraHeaders map[string]string `json:"-"` @@ -812,7 +755,7 @@ type FileMetadata struct { SharingInfo *FileSharingInfo `json:"sharing_info,omitempty"` // PropertyGroups : Additional information if the file has custom properties // with the property template specified. - PropertyGroups []*properties.PropertyGroup `json:"property_groups,omitempty"` + PropertyGroups []*file_properties.PropertyGroup `json:"property_groups,omitempty"` // HasExplicitSharedMembers : This flag will only be present if // include_has_explicit_shared_members is true in `listFolder` or // `getMetadata`. If this flag is present, it will be true if this file has @@ -876,14 +819,14 @@ type FolderMetadata struct { Metadata // Id : A unique identifier for the folder. Id string `json:"id"` - // SharedFolderId : Deprecated. Please use `sharing_info` instead. + // SharedFolderId : Please use `sharing_info` instead. SharedFolderId string `json:"shared_folder_id,omitempty"` // SharingInfo : Set if the folder is contained in a shared folder or is a // shared folder mount point. SharingInfo *FolderSharingInfo `json:"sharing_info,omitempty"` // PropertyGroups : Additional information if the file has custom properties // with the property template specified. - PropertyGroups []*properties.PropertyGroup `json:"property_groups,omitempty"` + PropertyGroups []*file_properties.PropertyGroup `json:"property_groups,omitempty"` } // NewFolderMetadata returns a new FolderMetadata instance @@ -1059,6 +1002,107 @@ func NewGetTemporaryLinkResult(Metadata *FileMetadata, Link string) *GetTemporar return s } +// GetThumbnailBatchArg : Arguments for `getThumbnailBatch`. +type GetThumbnailBatchArg struct { + // Entries : List of files to get thumbnails. + Entries []*ThumbnailArg `json:"entries"` +} + +// NewGetThumbnailBatchArg returns a new GetThumbnailBatchArg instance +func NewGetThumbnailBatchArg(Entries []*ThumbnailArg) *GetThumbnailBatchArg { + s := new(GetThumbnailBatchArg) + s.Entries = Entries + return s +} + +// GetThumbnailBatchError : has no documentation (yet) +type GetThumbnailBatchError struct { + dropbox.Tagged +} + +// Valid tag values for GetThumbnailBatchError +const ( + GetThumbnailBatchErrorTooManyFiles = "too_many_files" + GetThumbnailBatchErrorOther = "other" +) + +// GetThumbnailBatchResult : has no documentation (yet) +type GetThumbnailBatchResult struct { + // Entries : List of files and their thumbnails. + Entries []*GetThumbnailBatchResultEntry `json:"entries"` +} + +// NewGetThumbnailBatchResult returns a new GetThumbnailBatchResult instance +func NewGetThumbnailBatchResult(Entries []*GetThumbnailBatchResultEntry) *GetThumbnailBatchResult { + s := new(GetThumbnailBatchResult) + s.Entries = Entries + return s +} + +// GetThumbnailBatchResultData : has no documentation (yet) +type GetThumbnailBatchResultData struct { + // Metadata : has no documentation (yet) + Metadata *FileMetadata `json:"metadata"` + // Thumbnail : has no documentation (yet) + Thumbnail string `json:"thumbnail"` +} + +// NewGetThumbnailBatchResultData returns a new GetThumbnailBatchResultData instance +func NewGetThumbnailBatchResultData(Metadata *FileMetadata, Thumbnail string) *GetThumbnailBatchResultData { + s := new(GetThumbnailBatchResultData) + s.Metadata = Metadata + s.Thumbnail = Thumbnail + return s +} + +// GetThumbnailBatchResultEntry : has no documentation (yet) +type GetThumbnailBatchResultEntry struct { + dropbox.Tagged + // Success : has no documentation (yet) + Success *GetThumbnailBatchResultData `json:"success,omitempty"` + // Failure : The result for this file if it was an error. + Failure *ThumbnailError `json:"failure,omitempty"` +} + +// Valid tag values for GetThumbnailBatchResultEntry +const ( + GetThumbnailBatchResultEntrySuccess = "success" + GetThumbnailBatchResultEntryFailure = "failure" + GetThumbnailBatchResultEntryOther = "other" +) + +// UnmarshalJSON deserializes into a GetThumbnailBatchResultEntry instance +func (u *GetThumbnailBatchResultEntry) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // Success : has no documentation (yet) + Success json.RawMessage `json:"success,omitempty"` + // Failure : The result for this file if it was an error. + Failure json.RawMessage `json:"failure,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "success": + err = json.Unmarshal(body, &u.Success) + + if err != nil { + return err + } + case "failure": + err = json.Unmarshal(w.Failure, &u.Failure) + + if err != nil { + return err + } + } + return nil +} + // GpsCoordinates : GPS coordinates for a photo or video. type GpsCoordinates struct { // Latitude : Latitude of the GPS coordinates. @@ -1093,6 +1137,13 @@ type ListFolderArg struct { // flag for each file indicating whether or not that file has any explicit // members. IncludeHasExplicitSharedMembers bool `json:"include_has_explicit_shared_members"` + // IncludeMountedFolders : If true, the results will include entries under + // mounted folders which includes app folder, shared folder and team folder. + IncludeMountedFolders bool `json:"include_mounted_folders"` + // Limit : The maximum number of results to return per request. Note: This + // is an approximate number and there can be slightly more entries returned + // in some cases. + Limit uint32 `json:"limit,omitempty"` } // NewListFolderArg returns a new ListFolderArg instance @@ -1103,6 +1154,7 @@ func NewListFolderArg(Path string) *ListFolderArg { s.IncludeMediaInfo = false s.IncludeDeleted = false s.IncludeHasExplicitSharedMembers = false + s.IncludeMountedFolders = true return s } @@ -1351,16 +1403,6 @@ func NewListRevisionsResult(IsDeleted bool, Entries []*FileMetadata) *ListRevisi return s } -// LookUpPropertiesError : has no documentation (yet) -type LookUpPropertiesError struct { - dropbox.Tagged -} - -// Valid tag values for LookUpPropertiesError -const ( - LookUpPropertiesErrorPropertyGroupNotFound = "property_group_not_found" -) - // LookupError : has no documentation (yet) type LookupError struct { dropbox.Tagged @@ -1541,7 +1583,7 @@ func NewPhotoMetadata() *PhotoMetadata { type PreviewArg struct { // Path : The path of the file to preview. Path string `json:"path"` - // Rev : Deprecated. Please specify revision in `path` instead. + // Rev : Please specify revision in `path` instead. Rev string `json:"rev,omitempty"` } @@ -1591,42 +1633,6 @@ func (u *PreviewError) UnmarshalJSON(body []byte) error { return nil } -// PropertyGroupUpdate : has no documentation (yet) -type PropertyGroupUpdate struct { - // TemplateId : A unique identifier for a property template. - TemplateId string `json:"template_id"` - // AddOrUpdateFields : List of property fields to update if the field - // already exists. If the field doesn't exist, add the field to the property - // group. - AddOrUpdateFields []*properties.PropertyField `json:"add_or_update_fields,omitempty"` - // RemoveFields : List of property field names to remove from property group - // if the field exists. - RemoveFields []string `json:"remove_fields,omitempty"` -} - -// NewPropertyGroupUpdate returns a new PropertyGroupUpdate instance -func NewPropertyGroupUpdate(TemplateId string) *PropertyGroupUpdate { - s := new(PropertyGroupUpdate) - s.TemplateId = TemplateId - return s -} - -// PropertyGroupWithPath : has no documentation (yet) -type PropertyGroupWithPath struct { - // Path : A unique identifier for the file. - Path string `json:"path"` - // PropertyGroups : Filled custom property templates associated with a file. - PropertyGroups []*properties.PropertyGroup `json:"property_groups"` -} - -// NewPropertyGroupWithPath returns a new PropertyGroupWithPath instance -func NewPropertyGroupWithPath(Path string, PropertyGroups []*properties.PropertyGroup) *PropertyGroupWithPath { - s := new(PropertyGroupWithPath) - s.Path = Path - s.PropertyGroups = PropertyGroups - return s -} - // RelocationPath : has no documentation (yet) type RelocationPath struct { // FromPath : Path in the user's Dropbox to be copied or moved. @@ -1900,59 +1906,6 @@ func NewRelocationResult(Metadata IsMetadata) *RelocationResult { return s } -// RemovePropertiesArg : has no documentation (yet) -type RemovePropertiesArg struct { - // Path : A unique identifier for the file. - Path string `json:"path"` - // PropertyTemplateIds : A list of identifiers for a property template - // created by route properties/template/add. - PropertyTemplateIds []string `json:"property_template_ids"` -} - -// NewRemovePropertiesArg returns a new RemovePropertiesArg instance -func NewRemovePropertiesArg(Path string, PropertyTemplateIds []string) *RemovePropertiesArg { - s := new(RemovePropertiesArg) - s.Path = Path - s.PropertyTemplateIds = PropertyTemplateIds - return s -} - -// RemovePropertiesError : has no documentation (yet) -type RemovePropertiesError struct { - dropbox.Tagged - // PropertyGroupLookup : has no documentation (yet) - PropertyGroupLookup *LookUpPropertiesError `json:"property_group_lookup,omitempty"` -} - -// Valid tag values for RemovePropertiesError -const ( - RemovePropertiesErrorPropertyGroupLookup = "property_group_lookup" -) - -// UnmarshalJSON deserializes into a RemovePropertiesError instance -func (u *RemovePropertiesError) UnmarshalJSON(body []byte) error { - type wrap struct { - dropbox.Tagged - // PropertyGroupLookup : has no documentation (yet) - PropertyGroupLookup json.RawMessage `json:"property_group_lookup,omitempty"` - } - var w wrap - var err error - if err = json.Unmarshal(body, &w); err != nil { - return err - } - u.Tag = w.Tag - switch u.Tag { - case "property_group_lookup": - err = json.Unmarshal(w.PropertyGroupLookup, &u.PropertyGroupLookup) - - if err != nil { - return err - } - } - return nil -} - // RestoreArg : has no documentation (yet) type RestoreArg struct { // Path : The path to the file you want to restore. @@ -2442,59 +2395,6 @@ const ( ThumbnailSizeW1024h768 = "w1024h768" ) -// UpdatePropertiesError : has no documentation (yet) -type UpdatePropertiesError struct { - dropbox.Tagged - // PropertyGroupLookup : has no documentation (yet) - PropertyGroupLookup *LookUpPropertiesError `json:"property_group_lookup,omitempty"` -} - -// Valid tag values for UpdatePropertiesError -const ( - UpdatePropertiesErrorPropertyGroupLookup = "property_group_lookup" -) - -// UnmarshalJSON deserializes into a UpdatePropertiesError instance -func (u *UpdatePropertiesError) UnmarshalJSON(body []byte) error { - type wrap struct { - dropbox.Tagged - // PropertyGroupLookup : has no documentation (yet) - PropertyGroupLookup json.RawMessage `json:"property_group_lookup,omitempty"` - } - var w wrap - var err error - if err = json.Unmarshal(body, &w); err != nil { - return err - } - u.Tag = w.Tag - switch u.Tag { - case "property_group_lookup": - err = json.Unmarshal(w.PropertyGroupLookup, &u.PropertyGroupLookup) - - if err != nil { - return err - } - } - return nil -} - -// UpdatePropertyGroupArg : has no documentation (yet) -type UpdatePropertyGroupArg struct { - // Path : A unique identifier for the file. - Path string `json:"path"` - // UpdatePropertyGroups : Filled custom property templates associated with a - // file. - UpdatePropertyGroups []*PropertyGroupUpdate `json:"update_property_groups"` -} - -// NewUpdatePropertyGroupArg returns a new UpdatePropertyGroupArg instance -func NewUpdatePropertyGroupArg(Path string, UpdatePropertyGroups []*PropertyGroupUpdate) *UpdatePropertyGroupArg { - s := new(UpdatePropertyGroupArg) - s.Path = Path - s.UpdatePropertyGroups = UpdatePropertyGroups - return s -} - // UploadError : has no documentation (yet) type UploadError struct { dropbox.Tagged @@ -2536,7 +2436,7 @@ func (u *UploadError) UnmarshalJSON(body []byte) error { type UploadErrorWithProperties struct { dropbox.Tagged // PropertiesError : has no documentation (yet) - PropertiesError *InvalidPropertyGroupError `json:"properties_error,omitempty"` + PropertiesError *file_properties.InvalidPropertyGroupError `json:"properties_error,omitempty"` } // Valid tag values for UploadErrorWithProperties diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/client.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/client.go index a2815ce24..3c2fde32e 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/client.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/client.go @@ -35,6 +35,8 @@ type Client interface { // DocsArchive : Marks the given Paper doc as archived. Note: This action // can be performed or undone by anyone with edit permissions to the doc. DocsArchive(arg *RefPaperDoc) (err error) + // DocsCreate : Creates a new Paper doc with the provided content. + DocsCreate(arg *PaperDocCreateArgs, content io.Reader) (res *PaperDocCreateUpdateResult, err error) // DocsDownload : Exports and downloads Paper doc either as HTML or // markdown. DocsDownload(arg *PaperDocExport) (res *PaperDocExportResult, content io.ReadCloser, err error) @@ -74,6 +76,8 @@ type Client interface { // 'public_sharing_policy' cannot be set to the value 'disabled' because // this setting can be changed only via the team admin console. DocsSharingPolicySet(arg *PaperDocSharingPolicy) (err error) + // DocsUpdate : Updates an existing Paper doc with the provided content. + DocsUpdate(arg *PaperDocUpdateArgs, content io.Reader) (res *PaperDocCreateUpdateResult, err error) // DocsUsersAdd : Allows an owner or editor to add users to a Paper doc or // change their permissions using their email address or Dropbox account ID. // Note: The Doc owner's permissions cannot be changed. @@ -162,6 +166,79 @@ func (dbx *apiImpl) DocsArchive(arg *RefPaperDoc) (err error) { return } +//DocsCreateAPIError is an error-wrapper for the docs/create route +type DocsCreateAPIError struct { + dropbox.APIError + EndpointError *PaperDocCreateError `json:"error"` +} + +func (dbx *apiImpl) DocsCreate(arg *PaperDocCreateArgs, content io.Reader) (res *PaperDocCreateUpdateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/octet-stream", + "Dropbox-API-Arg": string(b), + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "upload", true, "paper", "docs/create", headers, content) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError DocsCreateAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + //DocsDownloadAPIError is an error-wrapper for the docs/download route type DocsDownloadAPIError struct { dropbox.APIError @@ -178,7 +255,7 @@ func (dbx *apiImpl) DocsDownload(arg *PaperDocExport) (res *PaperDocExportResult } headers := map[string]string{ - "Content-Type": "application/json", + "Dropbox-API-Arg": string(b), } if dbx.Config.AsMemberID != "" { headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID @@ -796,6 +873,79 @@ func (dbx *apiImpl) DocsSharingPolicySet(arg *PaperDocSharingPolicy) (err error) return } +//DocsUpdateAPIError is an error-wrapper for the docs/update route +type DocsUpdateAPIError struct { + dropbox.APIError + EndpointError *PaperDocUpdateError `json:"error"` +} + +func (dbx *apiImpl) DocsUpdate(arg *PaperDocUpdateArgs, content io.Reader) (res *PaperDocCreateUpdateResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/octet-stream", + "Dropbox-API-Arg": string(b), + } + if dbx.Config.AsMemberID != "" { + headers["Dropbox-API-Select-User"] = dbx.Config.AsMemberID + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "upload", true, "paper", "docs/update", headers, content) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError DocsUpdateAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + //DocsUsersAddAPIError is an error-wrapper for the docs/users/add route type DocsUsersAddAPIError struct { dropbox.APIError diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/types.go index 35ab81857..37d1a7e6a 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/paper/types.go @@ -247,6 +247,19 @@ func NewFoldersContainingPaperDoc() *FoldersContainingPaperDoc { return s } +// ImportFormat : The import format of the incoming data. +type ImportFormat struct { + dropbox.Tagged +} + +// Valid tag values for ImportFormat +const ( + ImportFormatHtml = "html" + ImportFormatMarkdown = "markdown" + ImportFormatPlainText = "plain_text" + ImportFormatOther = "other" +) + // InviteeInfoWithPermissionLevel : has no documentation (yet) type InviteeInfoWithPermissionLevel struct { // Invitee : Email address invited to the Paper doc. @@ -582,6 +595,55 @@ const ( PaperApiCursorErrorOther = "other" ) +// PaperDocCreateArgs : has no documentation (yet) +type PaperDocCreateArgs struct { + // ParentFolderId : The Paper folder ID where the Paper document should be + // created. The API user has to have write access to this folder or error is + // thrown. + ParentFolderId string `json:"parent_folder_id,omitempty"` + // ImportFormat : The format of provided data. + ImportFormat *ImportFormat `json:"import_format"` +} + +// NewPaperDocCreateArgs returns a new PaperDocCreateArgs instance +func NewPaperDocCreateArgs(ImportFormat *ImportFormat) *PaperDocCreateArgs { + s := new(PaperDocCreateArgs) + s.ImportFormat = ImportFormat + return s +} + +// PaperDocCreateError : has no documentation (yet) +type PaperDocCreateError struct { + dropbox.Tagged +} + +// Valid tag values for PaperDocCreateError +const ( + PaperDocCreateErrorContentMalformed = "content_malformed" + PaperDocCreateErrorFolderNotFound = "folder_not_found" + PaperDocCreateErrorDocLengthExceeded = "doc_length_exceeded" + PaperDocCreateErrorImageSizeExceeded = "image_size_exceeded" +) + +// PaperDocCreateUpdateResult : has no documentation (yet) +type PaperDocCreateUpdateResult struct { + // DocId : Doc ID of the newly created doc. + DocId string `json:"doc_id"` + // Revision : The Paper doc revision. Simply an ever increasing number. + Revision int64 `json:"revision"` + // Title : The Paper doc title. + Title string `json:"title"` +} + +// NewPaperDocCreateUpdateResult returns a new PaperDocCreateUpdateResult instance +func NewPaperDocCreateUpdateResult(DocId string, Revision int64, Title string) *PaperDocCreateUpdateResult { + s := new(PaperDocCreateUpdateResult) + s.DocId = DocId + s.Revision = Revision + s.Title = Title + return s +} + // PaperDocExport : has no documentation (yet) type PaperDocExport struct { RefPaperDoc @@ -647,6 +709,57 @@ func NewPaperDocSharingPolicy(DocId string, SharingPolicy *SharingPolicy) *Paper return s } +// PaperDocUpdateArgs : has no documentation (yet) +type PaperDocUpdateArgs struct { + RefPaperDoc + // DocUpdatePolicy : The policy used for the current update call. + DocUpdatePolicy *PaperDocUpdatePolicy `json:"doc_update_policy"` + // Revision : The latest doc revision. This value must match the head + // revision or an error code will be returned. This is to prevent colliding + // writes. + Revision int64 `json:"revision"` + // ImportFormat : The format of provided data. + ImportFormat *ImportFormat `json:"import_format"` +} + +// NewPaperDocUpdateArgs returns a new PaperDocUpdateArgs instance +func NewPaperDocUpdateArgs(DocId string, DocUpdatePolicy *PaperDocUpdatePolicy, Revision int64, ImportFormat *ImportFormat) *PaperDocUpdateArgs { + s := new(PaperDocUpdateArgs) + s.DocId = DocId + s.DocUpdatePolicy = DocUpdatePolicy + s.Revision = Revision + s.ImportFormat = ImportFormat + return s +} + +// PaperDocUpdateError : has no documentation (yet) +type PaperDocUpdateError struct { + dropbox.Tagged +} + +// Valid tag values for PaperDocUpdateError +const ( + PaperDocUpdateErrorContentMalformed = "content_malformed" + PaperDocUpdateErrorRevisionMismatch = "revision_mismatch" + PaperDocUpdateErrorDocLengthExceeded = "doc_length_exceeded" + PaperDocUpdateErrorImageSizeExceeded = "image_size_exceeded" + PaperDocUpdateErrorDocArchived = "doc_archived" + PaperDocUpdateErrorDocDeleted = "doc_deleted" +) + +// PaperDocUpdatePolicy : has no documentation (yet) +type PaperDocUpdatePolicy struct { + dropbox.Tagged +} + +// Valid tag values for PaperDocUpdatePolicy +const ( + PaperDocUpdatePolicyAppend = "append" + PaperDocUpdatePolicyPrepend = "prepend" + PaperDocUpdatePolicyOverwriteAll = "overwrite_all" + PaperDocUpdatePolicyOther = "other" +) + // RemovePaperDocUser : has no documentation (yet) type RemovePaperDocUser struct { RefPaperDoc diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/properties/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/properties/types.go deleted file mode 100644 index c03ea0e16..000000000 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/properties/types.go +++ /dev/null @@ -1,213 +0,0 @@ -// Copyright (c) Dropbox, Inc. -// -// Permission is hereby granted, free of charge, to any person obtaining a copy -// of this software and associated documentation files (the "Software"), to deal -// in the Software without restriction, including without limitation the rights -// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -// copies of the Software, and to permit persons to whom the Software is -// furnished to do so, subject to the following conditions: -// -// The above copyright notice and this permission notice shall be included in -// all copies or substantial portions of the Software. -// -// THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -// OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN -// THE SOFTWARE. - -// Package properties : This namespace contains helper entities for property and -// property/template endpoints. -package properties - -import ( - "encoding/json" - - "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" -) - -// GetPropertyTemplateArg : has no documentation (yet) -type GetPropertyTemplateArg struct { - // TemplateId : An identifier for property template added by route - // properties/template/add. - TemplateId string `json:"template_id"` -} - -// NewGetPropertyTemplateArg returns a new GetPropertyTemplateArg instance -func NewGetPropertyTemplateArg(TemplateId string) *GetPropertyTemplateArg { - s := new(GetPropertyTemplateArg) - s.TemplateId = TemplateId - return s -} - -// PropertyGroupTemplate : Describes property templates that can be filled and -// associated with a file. -type PropertyGroupTemplate struct { - // Name : A display name for the property template. Property template names - // can be up to 256 bytes. - Name string `json:"name"` - // Description : Description for new property template. Property template - // descriptions can be up to 1024 bytes. - Description string `json:"description"` - // Fields : This is a list of custom properties associated with a property - // template. There can be up to 64 properties in a single property template. - Fields []*PropertyFieldTemplate `json:"fields"` -} - -// NewPropertyGroupTemplate returns a new PropertyGroupTemplate instance -func NewPropertyGroupTemplate(Name string, Description string, Fields []*PropertyFieldTemplate) *PropertyGroupTemplate { - s := new(PropertyGroupTemplate) - s.Name = Name - s.Description = Description - s.Fields = Fields - return s -} - -// GetPropertyTemplateResult : The Property template for the specified template. -type GetPropertyTemplateResult struct { - PropertyGroupTemplate -} - -// NewGetPropertyTemplateResult returns a new GetPropertyTemplateResult instance -func NewGetPropertyTemplateResult(Name string, Description string, Fields []*PropertyFieldTemplate) *GetPropertyTemplateResult { - s := new(GetPropertyTemplateResult) - s.Name = Name - s.Description = Description - s.Fields = Fields - return s -} - -// ListPropertyTemplateIds : has no documentation (yet) -type ListPropertyTemplateIds struct { - // TemplateIds : List of identifiers for templates added by route - // properties/template/add. - TemplateIds []string `json:"template_ids"` -} - -// NewListPropertyTemplateIds returns a new ListPropertyTemplateIds instance -func NewListPropertyTemplateIds(TemplateIds []string) *ListPropertyTemplateIds { - s := new(ListPropertyTemplateIds) - s.TemplateIds = TemplateIds - return s -} - -// PropertyTemplateError : has no documentation (yet) -type PropertyTemplateError struct { - dropbox.Tagged - // TemplateNotFound : Property template does not exist for given identifier. - TemplateNotFound string `json:"template_not_found,omitempty"` -} - -// Valid tag values for PropertyTemplateError -const ( - PropertyTemplateErrorTemplateNotFound = "template_not_found" - PropertyTemplateErrorRestrictedContent = "restricted_content" - PropertyTemplateErrorOther = "other" -) - -// UnmarshalJSON deserializes into a PropertyTemplateError instance -func (u *PropertyTemplateError) UnmarshalJSON(body []byte) error { - type wrap struct { - dropbox.Tagged - } - var w wrap - var err error - if err = json.Unmarshal(body, &w); err != nil { - return err - } - u.Tag = w.Tag - switch u.Tag { - case "template_not_found": - err = json.Unmarshal(body, &u.TemplateNotFound) - - if err != nil { - return err - } - } - return nil -} - -// ModifyPropertyTemplateError : has no documentation (yet) -type ModifyPropertyTemplateError struct { - dropbox.Tagged -} - -// Valid tag values for ModifyPropertyTemplateError -const ( - ModifyPropertyTemplateErrorConflictingPropertyNames = "conflicting_property_names" - ModifyPropertyTemplateErrorTooManyProperties = "too_many_properties" - ModifyPropertyTemplateErrorTooManyTemplates = "too_many_templates" - ModifyPropertyTemplateErrorTemplateAttributeTooLarge = "template_attribute_too_large" -) - -// PropertyField : has no documentation (yet) -type PropertyField struct { - // Name : This is the name or key of a custom property in a property - // template. File property names can be up to 256 bytes. - Name string `json:"name"` - // Value : Value of a custom property attached to a file. Values can be up - // to 1024 bytes. - Value string `json:"value"` -} - -// NewPropertyField returns a new PropertyField instance -func NewPropertyField(Name string, Value string) *PropertyField { - s := new(PropertyField) - s.Name = Name - s.Value = Value - return s -} - -// PropertyFieldTemplate : Describe a single property field type which that can -// be part of a property template. -type PropertyFieldTemplate struct { - // Name : This is the name or key of a custom property in a property - // template. File property names can be up to 256 bytes. - Name string `json:"name"` - // Description : This is the description for a custom property in a property - // template. File property description can be up to 1024 bytes. - Description string `json:"description"` - // Type : This is the data type of the value of this property. This type - // will be enforced upon property creation and modifications. - Type *PropertyType `json:"type"` -} - -// NewPropertyFieldTemplate returns a new PropertyFieldTemplate instance -func NewPropertyFieldTemplate(Name string, Description string, Type *PropertyType) *PropertyFieldTemplate { - s := new(PropertyFieldTemplate) - s.Name = Name - s.Description = Description - s.Type = Type - return s -} - -// PropertyGroup : Collection of custom properties in filled property templates. -type PropertyGroup struct { - // TemplateId : A unique identifier for a property template type. - TemplateId string `json:"template_id"` - // Fields : This is a list of custom properties associated with a file. - // There can be up to 32 properties for a template. - Fields []*PropertyField `json:"fields"` -} - -// NewPropertyGroup returns a new PropertyGroup instance -func NewPropertyGroup(TemplateId string, Fields []*PropertyField) *PropertyGroup { - s := new(PropertyGroup) - s.TemplateId = TemplateId - s.Fields = Fields - return s -} - -// PropertyType : Data type of the given property added. This endpoint is in -// beta and only properties of type strings is supported. -type PropertyType struct { - dropbox.Tagged -} - -// Valid tag values for PropertyType -const ( - PropertyTypeString = "string" - PropertyTypeOther = "other" -) diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sdk.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sdk.go index 2da138970..3cdb88112 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sdk.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sdk.go @@ -36,7 +36,7 @@ const ( hostContent = "content" hostNotify = "notify" sdkVersion = "1.0.0-beta" - specVersion = "6194bea" + specVersion = "52ee619" ) // Version returns the current SDK version and API Spec version diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sharing/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sharing/types.go index 0c4d669a8..328e65273 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sharing/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/sharing/types.go @@ -552,9 +552,9 @@ func (u *CreateSharedLinkError) UnmarshalJSON(body []byte) error { // CreateSharedLinkWithSettingsArg : has no documentation (yet) type CreateSharedLinkWithSettingsArg struct { - // Path : The path to be shared by the shared link + // Path : The path to be shared by the shared link. Path string `json:"path"` - // Settings : The requested settings for the newly created shared link + // Settings : The requested settings for the newly created shared link. Settings *SharedLinkSettings `json:"settings,omitempty"` } @@ -570,7 +570,7 @@ type CreateSharedLinkWithSettingsError struct { dropbox.Tagged // Path : has no documentation (yet) Path *files.LookupError `json:"path,omitempty"` - // SettingsError : There is an error with the given settings + // SettingsError : There is an error with the given settings. SettingsError *SharedLinkSettingsError `json:"settings_error,omitempty"` } @@ -589,7 +589,7 @@ func (u *CreateSharedLinkWithSettingsError) UnmarshalJSON(body []byte) error { dropbox.Tagged // Path : has no documentation (yet) Path json.RawMessage `json:"path,omitempty"` - // SettingsError : There is an error with the given settings + // SettingsError : There is an error with the given settings. SettingsError json.RawMessage `json:"settings_error,omitempty"` } var w wrap @@ -741,7 +741,7 @@ func (u *FileErrorResult) UnmarshalJSON(body []byte) error { return nil } -// SharedLinkMetadata : The metadata of a shared link +// SharedLinkMetadata : The metadata of a shared link. type SharedLinkMetadata struct { // Url : URL of the shared link. Url string `json:"url"` @@ -847,7 +847,7 @@ func IsSharedLinkMetadataFromJSON(data []byte) (IsSharedLinkMetadata, error) { return nil, nil } -// FileLinkMetadata : The metadata of a file shared link +// FileLinkMetadata : The metadata of a file shared link. type FileLinkMetadata struct { SharedLinkMetadata // ClientModified : The modification time set by the desktop client when the @@ -1092,7 +1092,7 @@ const ( FolderActionOther = "other" ) -// FolderLinkMetadata : The metadata of a folder shared link +// FolderLinkMetadata : The metadata of a folder shared link. type FolderLinkMetadata struct { SharedLinkMetadata } @@ -1820,7 +1820,7 @@ type LinkPermissions struct { // after considering these policies, can be found in `resolved_visibility`. // This is shown only if the caller is the link's owner. RequestedVisibility *RequestedVisibility `json:"requested_visibility,omitempty"` - // CanRevoke : Whether the caller can revoke the shared link + // CanRevoke : Whether the caller can revoke the shared link. CanRevoke bool `json:"can_revoke"` // RevokeFailureReason : The failure reason for revoking the link. This // field will only be present if the `can_revoke` is false. @@ -2510,7 +2510,7 @@ func (u *MemberSelector) UnmarshalJSON(body []byte) error { // ModifySharedLinkSettingsArgs : has no documentation (yet) type ModifySharedLinkSettingsArgs struct { - // Url : URL of the shared link to change its settings + // Url : URL of the shared link to change its settings. Url string `json:"url"` // Settings : Set of settings for the shared link. Settings *SharedLinkSettings `json:"settings"` @@ -2531,7 +2531,7 @@ func NewModifySharedLinkSettingsArgs(Url string, Settings *SharedLinkSettings) * // ModifySharedLinkSettingsError : has no documentation (yet) type ModifySharedLinkSettingsError struct { dropbox.Tagged - // SettingsError : There is an error with the given settings + // SettingsError : There is an error with the given settings. SettingsError *SharedLinkSettingsError `json:"settings_error,omitempty"` } @@ -2545,7 +2545,7 @@ const ( func (u *ModifySharedLinkSettingsError) UnmarshalJSON(body []byte) error { type wrap struct { dropbox.Tagged - // SettingsError : There is an error with the given settings + // SettingsError : There is an error with the given settings. SettingsError json.RawMessage `json:"settings_error,omitempty"` } var w wrap @@ -2706,6 +2706,7 @@ const ( PermissionDeniedReasonUserAccountType = "user_account_type" PermissionDeniedReasonUserNotOnTeam = "user_not_on_team" PermissionDeniedReasonFolderIsInsideSharedFolder = "folder_is_inside_shared_folder" + PermissionDeniedReasonRestrictedByParentFolder = "restricted_by_parent_folder" PermissionDeniedReasonInsufficientPlan = "insufficient_plan" PermissionDeniedReasonOther = "other" ) @@ -3683,7 +3684,7 @@ const ( // TeamMemberInfo : Information about a team member. type TeamMemberInfo struct { - // TeamInfo : Information about the member's team + // TeamInfo : Information about the member's team. TeamInfo *users.Team `json:"team_info"` // DisplayName : The display name of the user. DisplayName string `json:"display_name"` diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/client.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/client.go index 771bbfcbf..8a47bcbb2 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/client.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/client.go @@ -29,7 +29,7 @@ import ( "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/async" - "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/properties" + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/file_properties" ) // Client interface describes all routes in this namespace @@ -41,10 +41,10 @@ type Client interface { // DevicesListTeamDevices : List all device sessions of a team. // Deprecated: Use `DevicesListMembersDevices` instead DevicesListTeamDevices(arg *ListTeamDevicesArg) (res *ListTeamDevicesResult, err error) - // DevicesRevokeDeviceSession : Revoke a device session of a team's member + // DevicesRevokeDeviceSession : Revoke a device session of a team's member. DevicesRevokeDeviceSession(arg *RevokeDeviceSessionArg) (err error) // DevicesRevokeDeviceSessionBatch : Revoke a list of device sessions of - // team members + // team members. DevicesRevokeDeviceSessionBatch(arg *RevokeDeviceSessionBatchArg) (res *RevokeDeviceSessionBatchResult, err error) // FeaturesGetValues : Get the values for one or more featues. This route // allows you to check your account's capability for what feature you can @@ -113,11 +113,22 @@ type Client interface { // Deprecated: Use `LinkedAppsListMembersLinkedApps` instead LinkedAppsListTeamLinkedApps(arg *ListTeamAppsArg) (res *ListTeamAppsResult, err error) // LinkedAppsRevokeLinkedApp : Revoke a linked application of the team - // member + // member. LinkedAppsRevokeLinkedApp(arg *RevokeLinkedApiAppArg) (err error) // LinkedAppsRevokeLinkedAppBatch : Revoke a list of linked applications of - // the team members + // the team members. LinkedAppsRevokeLinkedAppBatch(arg *RevokeLinkedApiAppBatchArg) (res *RevokeLinkedAppBatchResult, err error) + // MemberSpaceLimitsGetCustomQuota : Get users custom quota. Returns none as + // the custom quota if none was set. A maximum of 1000 members can be + // specified in a single call. + MemberSpaceLimitsGetCustomQuota(arg *CustomQuotaUsersArg) (res []*CustomQuotaResult, err error) + // MemberSpaceLimitsRemoveCustomQuota : Remove users custom quota. A maximum + // of 1000 members can be specified in a single call. + MemberSpaceLimitsRemoveCustomQuota(arg *CustomQuotaUsersArg) (res []*RemoveCustomQuotaResult, err error) + // MemberSpaceLimitsSetCustomQuota : Set users custom quota. Custom quota + // has to be at least 25GB. A maximum of 1000 members can be specified in a + // single call. + MemberSpaceLimitsSetCustomQuota(arg *SetCustomQuotaArg) (res []*CustomQuotaResult, err error) // MembersAdd : Adds members to a team. Permission : Team member management // A maximum of 20 members can be specified in a single call. If no Dropbox // account exists with the email address specified, a new Dropbox account @@ -132,18 +143,18 @@ type Client interface { MembersAdd(arg *MembersAddArg) (res *MembersAddLaunch, err error) // MembersAddJobStatusGet : Once an async_job_id is returned from // `membersAdd` , use this to poll the status of the asynchronous request. - // Permission : Team member management + // Permission : Team member management. MembersAddJobStatusGet(arg *async.PollArg) (res *MembersAddJobStatus, err error) // MembersGetInfo : Returns information about multiple team members. // Permission : Team information This endpoint will return // `MembersGetInfoItem.id_not_found`, for IDs (or emails) that cannot be // matched to a valid team member. MembersGetInfo(arg *MembersGetInfoArgs) (res []*MembersGetInfoItem, err error) - // MembersList : Lists members of a team. Permission : Team information + // MembersList : Lists members of a team. Permission : Team information. MembersList(arg *MembersListArg) (res *MembersListResult, err error) // MembersListContinue : Once a cursor has been retrieved from // `membersList`, use this to paginate through all team members. Permission - // : Team information + // : Team information. MembersListContinue(arg *MembersListContinueArg) (res *MembersListResult, err error) // MembersRecover : Recover a deleted member. Permission : Team member // management Exactly one of team_member_id, email, or external_id must be @@ -155,13 +166,16 @@ type Client interface { // `membersRecover` for a 7 day period or until the account has been // permanently deleted or transferred to another account (whichever comes // first). Calling `membersAdd` while a user is still recoverable on your - // team will return with `MemberAddResult.user_already_on_team`. This - // endpoint may initiate an asynchronous job. To obtain the final result of - // the job, the client should periodically poll `membersRemoveJobStatusGet`. + // team will return with `MemberAddResult.user_already_on_team`. Accounts + // can have their files transferred via the admin console for a limited + // time, based on the version history length associated with the team (120 + // days for most teams). This endpoint may initiate an asynchronous job. To + // obtain the final result of the job, the client should periodically poll + // `membersRemoveJobStatusGet`. MembersRemove(arg *MembersRemoveArg) (res *async.LaunchEmptyResult, err error) // MembersRemoveJobStatusGet : Once an async_job_id is returned from // `membersRemove` , use this to poll the status of the asynchronous - // request. Permission : Team member management + // request. Permission : Team member management. MembersRemoveJobStatusGet(arg *async.PollArg) (res *async.PollEmptyResult, err error) // MembersSendWelcomeEmail : Sends welcome email to pending team member. // Permission : Team member management Exactly one of team_member_id, email, @@ -169,10 +183,10 @@ type Client interface { // team member is not pending. MembersSendWelcomeEmail(arg *UserSelectorArg) (err error) // MembersSetAdminPermissions : Updates a team member's permissions. - // Permission : Team member management + // Permission : Team member management. MembersSetAdminPermissions(arg *MembersSetPermissionsArg) (res *MembersSetPermissionsResult, err error) // MembersSetProfile : Updates a team member's profile. Permission : Team - // member management + // member management. MembersSetProfile(arg *MembersSetProfileArg) (res *TeamMemberInfo, err error) // MembersSuspend : Suspend a member from a team. Permission : Team member // management Exactly one of team_member_id, email, or external_id must be @@ -193,18 +207,18 @@ type Client interface { // `namespacesList`, use this to paginate through all team-accessible // namespaces. Duplicates may occur in the list. NamespacesListContinue(arg *TeamNamespacesListContinueArg) (res *TeamNamespacesListResult, err error) - // PropertiesTemplateAdd : Add a property template. See route - // files/properties/add to add properties to a file. - PropertiesTemplateAdd(arg *AddPropertyTemplateArg) (res *AddPropertyTemplateResult, err error) - // PropertiesTemplateGet : Get the schema for a specified template. - PropertiesTemplateGet(arg *properties.GetPropertyTemplateArg) (res *properties.GetPropertyTemplateResult, err error) - // PropertiesTemplateList : Get the property template identifiers for a - // team. To get the schema of each template use `propertiesTemplateGet`. - PropertiesTemplateList() (res *properties.ListPropertyTemplateIds, err error) - // PropertiesTemplateUpdate : Update a property template. This route can - // update the template name, the template description and add optional - // properties to templates. - PropertiesTemplateUpdate(arg *UpdatePropertyTemplateArg) (res *UpdatePropertyTemplateResult, err error) + // PropertiesTemplateAdd : has no documentation (yet) + // Deprecated: + PropertiesTemplateAdd(arg *file_properties.AddTemplateArg) (res *file_properties.AddTemplateResult, err error) + // PropertiesTemplateGet : has no documentation (yet) + // Deprecated: + PropertiesTemplateGet(arg *file_properties.GetTemplateArg) (res *file_properties.GetTemplateResult, err error) + // PropertiesTemplateList : has no documentation (yet) + // Deprecated: + PropertiesTemplateList() (res *file_properties.ListTemplateResult, err error) + // PropertiesTemplateUpdate : has no documentation (yet) + // Deprecated: + PropertiesTemplateUpdate(arg *file_properties.UpdateTemplateArg) (res *file_properties.UpdateTemplateResult, err error) // ReportsGetActivity : Retrieves reporting data about a team's user // activity. ReportsGetActivity(arg *DateRange) (res *GetActivityReport, err error) @@ -1897,6 +1911,213 @@ func (dbx *apiImpl) LinkedAppsRevokeLinkedAppBatch(arg *RevokeLinkedApiAppBatchA return } +//MemberSpaceLimitsGetCustomQuotaAPIError is an error-wrapper for the member_space_limits/get_custom_quota route +type MemberSpaceLimitsGetCustomQuotaAPIError struct { + dropbox.APIError + EndpointError *CustomQuotaError `json:"error"` +} + +func (dbx *apiImpl) MemberSpaceLimitsGetCustomQuota(arg *CustomQuotaUsersArg) (res []*CustomQuotaResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "team", "member_space_limits/get_custom_quota", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError MemberSpaceLimitsGetCustomQuotaAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//MemberSpaceLimitsRemoveCustomQuotaAPIError is an error-wrapper for the member_space_limits/remove_custom_quota route +type MemberSpaceLimitsRemoveCustomQuotaAPIError struct { + dropbox.APIError + EndpointError *CustomQuotaError `json:"error"` +} + +func (dbx *apiImpl) MemberSpaceLimitsRemoveCustomQuota(arg *CustomQuotaUsersArg) (res []*RemoveCustomQuotaResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "team", "member_space_limits/remove_custom_quota", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError MemberSpaceLimitsRemoveCustomQuotaAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + +//MemberSpaceLimitsSetCustomQuotaAPIError is an error-wrapper for the member_space_limits/set_custom_quota route +type MemberSpaceLimitsSetCustomQuotaAPIError struct { + dropbox.APIError + EndpointError *CustomQuotaError `json:"error"` +} + +func (dbx *apiImpl) MemberSpaceLimitsSetCustomQuota(arg *SetCustomQuotaArg) (res []*CustomQuotaResult, err error) { + cli := dbx.Client + + dbx.Config.TryLog("arg: %v", arg) + b, err := json.Marshal(arg) + if err != nil { + return + } + + headers := map[string]string{ + "Content-Type": "application/json", + } + + req, err := (*dropbox.Context)(dbx).NewRequest("api", "rpc", true, "team", "member_space_limits/set_custom_quota", headers, bytes.NewReader(b)) + if err != nil { + return + } + dbx.Config.TryLog("req: %v", req) + + resp, err := cli.Do(req) + if err != nil { + return + } + + dbx.Config.TryLog("resp: %v", resp) + defer resp.Body.Close() + body, err := ioutil.ReadAll(resp.Body) + if err != nil { + return + } + + dbx.Config.TryLog("body: %v", body) + if resp.StatusCode == http.StatusOK { + err = json.Unmarshal(body, &res) + if err != nil { + return + } + + return + } + if resp.StatusCode == http.StatusConflict { + var apiError MemberSpaceLimitsSetCustomQuotaAPIError + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return + } + var apiError dropbox.APIError + if resp.StatusCode == http.StatusBadRequest { + apiError.ErrorSummary = string(body) + err = apiError + return + } + err = json.Unmarshal(body, &apiError) + if err != nil { + return + } + err = apiError + return +} + //MembersAddAPIError is an error-wrapper for the members/add route type MembersAddAPIError struct { dropbox.APIError @@ -2915,10 +3136,12 @@ func (dbx *apiImpl) NamespacesListContinue(arg *TeamNamespacesListContinueArg) ( //PropertiesTemplateAddAPIError is an error-wrapper for the properties/template/add route type PropertiesTemplateAddAPIError struct { dropbox.APIError - EndpointError *properties.ModifyPropertyTemplateError `json:"error"` + EndpointError *file_properties.ModifyTemplateError `json:"error"` } -func (dbx *apiImpl) PropertiesTemplateAdd(arg *AddPropertyTemplateArg) (res *AddPropertyTemplateResult, err error) { +func (dbx *apiImpl) PropertiesTemplateAdd(arg *file_properties.AddTemplateArg) (res *file_properties.AddTemplateResult, err error) { + log.Printf("WARNING: API `PropertiesTemplateAdd` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) @@ -2984,10 +3207,12 @@ func (dbx *apiImpl) PropertiesTemplateAdd(arg *AddPropertyTemplateArg) (res *Add //PropertiesTemplateGetAPIError is an error-wrapper for the properties/template/get route type PropertiesTemplateGetAPIError struct { dropbox.APIError - EndpointError *properties.PropertyTemplateError `json:"error"` + EndpointError *file_properties.TemplateError `json:"error"` } -func (dbx *apiImpl) PropertiesTemplateGet(arg *properties.GetPropertyTemplateArg) (res *properties.GetPropertyTemplateResult, err error) { +func (dbx *apiImpl) PropertiesTemplateGet(arg *file_properties.GetTemplateArg) (res *file_properties.GetTemplateResult, err error) { + log.Printf("WARNING: API `PropertiesTemplateGet` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) @@ -3053,10 +3278,12 @@ func (dbx *apiImpl) PropertiesTemplateGet(arg *properties.GetPropertyTemplateArg //PropertiesTemplateListAPIError is an error-wrapper for the properties/template/list route type PropertiesTemplateListAPIError struct { dropbox.APIError - EndpointError *properties.PropertyTemplateError `json:"error"` + EndpointError *file_properties.TemplateError `json:"error"` } -func (dbx *apiImpl) PropertiesTemplateList() (res *properties.ListPropertyTemplateIds, err error) { +func (dbx *apiImpl) PropertiesTemplateList() (res *file_properties.ListTemplateResult, err error) { + log.Printf("WARNING: API `PropertiesTemplateList` is deprecated") + cli := dbx.Client headers := map[string]string{} @@ -3114,10 +3341,12 @@ func (dbx *apiImpl) PropertiesTemplateList() (res *properties.ListPropertyTempla //PropertiesTemplateUpdateAPIError is an error-wrapper for the properties/template/update route type PropertiesTemplateUpdateAPIError struct { dropbox.APIError - EndpointError *properties.ModifyPropertyTemplateError `json:"error"` + EndpointError *file_properties.ModifyTemplateError `json:"error"` } -func (dbx *apiImpl) PropertiesTemplateUpdate(arg *UpdatePropertyTemplateArg) (res *UpdatePropertyTemplateResult, err error) { +func (dbx *apiImpl) PropertiesTemplateUpdate(arg *file_properties.UpdateTemplateArg) (res *file_properties.UpdateTemplateResult, err error) { + log.Printf("WARNING: API `PropertiesTemplateUpdate` is deprecated") + cli := dbx.Client dbx.Config.TryLog("arg: %v", arg) diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/types.go index f2a177367..972d97900 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team/types.go @@ -26,7 +26,6 @@ import ( "time" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" - "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/properties" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_common" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_policies" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/users" @@ -34,16 +33,16 @@ import ( // DeviceSession : has no documentation (yet) type DeviceSession struct { - // SessionId : The session id + // SessionId : The session id. SessionId string `json:"session_id"` - // IpAddress : The IP address of the last activity from this session + // IpAddress : The IP address of the last activity from this session. IpAddress string `json:"ip_address,omitempty"` // Country : The country from which the last activity from this session was - // made + // made. Country string `json:"country,omitempty"` - // Created : The time this session was created + // Created : The time this session was created. Created time.Time `json:"created,omitempty"` - // Updated : The time of the last activity from this session + // Updated : The time of the last activity from this session. Updated time.Time `json:"updated,omitempty"` } @@ -54,16 +53,16 @@ func NewDeviceSession(SessionId string) *DeviceSession { return s } -// ActiveWebSession : Information on active web sessions +// ActiveWebSession : Information on active web sessions. type ActiveWebSession struct { DeviceSession - // UserAgent : Information on the hosting device + // UserAgent : Information on the hosting device. UserAgent string `json:"user_agent"` - // Os : Information on the hosting operating system + // Os : Information on the hosting operating system. Os string `json:"os"` - // Browser : Information on the browser used for this web session + // Browser : Information on the browser used for this web session. Browser string `json:"browser"` - // Expires : The time this session expires + // Expires : The time this session expires. Expires time.Time `json:"expires,omitempty"` } @@ -77,34 +76,6 @@ func NewActiveWebSession(SessionId string, UserAgent string, Os string, Browser return s } -// AddPropertyTemplateArg : Arguments for adding property templates. -type AddPropertyTemplateArg struct { - properties.PropertyGroupTemplate -} - -// NewAddPropertyTemplateArg returns a new AddPropertyTemplateArg instance -func NewAddPropertyTemplateArg(Name string, Description string, Fields []*properties.PropertyFieldTemplate) *AddPropertyTemplateArg { - s := new(AddPropertyTemplateArg) - s.Name = Name - s.Description = Description - s.Fields = Fields - return s -} - -// AddPropertyTemplateResult : has no documentation (yet) -type AddPropertyTemplateResult struct { - // TemplateId : An identifier for property template added by - // `propertiesTemplateAdd`. - TemplateId string `json:"template_id"` -} - -// NewAddPropertyTemplateResult returns a new AddPropertyTemplateResult instance -func NewAddPropertyTemplateResult(TemplateId string) *AddPropertyTemplateResult { - s := new(AddPropertyTemplateResult) - s.TemplateId = TemplateId - return s -} - // AdminTier : Describes which team-related admin permissions a user has. type AdminTier struct { dropbox.Tagged @@ -118,19 +89,19 @@ const ( AdminTierMemberOnly = "member_only" ) -// ApiApp : Information on linked third party applications +// ApiApp : Information on linked third party applications. type ApiApp struct { - // AppId : The application unique id + // AppId : The application unique id. AppId string `json:"app_id"` - // AppName : The application name + // AppName : The application name. AppName string `json:"app_name"` - // Publisher : The application publisher name + // Publisher : The application publisher name. Publisher string `json:"publisher,omitempty"` - // PublisherUrl : The publisher's URL + // PublisherUrl : The publisher's URL. PublisherUrl string `json:"publisher_url,omitempty"` - // Linked : The time this application was linked + // Linked : The time this application was linked. Linked time.Time `json:"linked,omitempty"` - // IsAppFolder : Whether the linked application uses a dedicated folder + // IsAppFolder : Whether the linked application uses a dedicated folder. IsAppFolder bool `json:"is_app_folder"` } @@ -216,11 +187,83 @@ func (u *BaseTeamFolderError) UnmarshalJSON(body []byte) error { return nil } +// CustomQuotaError : Error returned by setting member custom quota. +type CustomQuotaError struct { + dropbox.Tagged +} + +// Valid tag values for CustomQuotaError +const ( + CustomQuotaErrorTooManyUsers = "too_many_users" + CustomQuotaErrorOther = "other" +) + +// CustomQuotaResult : User custom quota. +type CustomQuotaResult struct { + dropbox.Tagged + // Success : User's custom quota. + Success *UserCustomQuotaResult `json:"success,omitempty"` + // InvalidUser : Invalid user (not in team). + InvalidUser *UserSelectorArg `json:"invalid_user,omitempty"` +} + +// Valid tag values for CustomQuotaResult +const ( + CustomQuotaResultSuccess = "success" + CustomQuotaResultInvalidUser = "invalid_user" + CustomQuotaResultOther = "other" +) + +// UnmarshalJSON deserializes into a CustomQuotaResult instance +func (u *CustomQuotaResult) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // Success : User's custom quota. + Success json.RawMessage `json:"success,omitempty"` + // InvalidUser : Invalid user (not in team). + InvalidUser json.RawMessage `json:"invalid_user,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "success": + err = json.Unmarshal(body, &u.Success) + + if err != nil { + return err + } + case "invalid_user": + err = json.Unmarshal(w.InvalidUser, &u.InvalidUser) + + if err != nil { + return err + } + } + return nil +} + +// CustomQuotaUsersArg : has no documentation (yet) +type CustomQuotaUsersArg struct { + // Users : List of users. + Users []*UserSelectorArg `json:"users"` +} + +// NewCustomQuotaUsersArg returns a new CustomQuotaUsersArg instance +func NewCustomQuotaUsersArg(Users []*UserSelectorArg) *CustomQuotaUsersArg { + s := new(CustomQuotaUsersArg) + s.Users = Users + return s +} + // DateRange : Input arguments that can be provided for most reports. type DateRange struct { - // StartDate : Optional starting date (inclusive) + // StartDate : Optional starting date (inclusive). StartDate time.Time `json:"start_date,omitempty"` - // EndDate : Optional ending date (exclusive) + // EndDate : Optional ending date (exclusive). EndDate time.Time `json:"end_date,omitempty"` } @@ -242,19 +285,19 @@ const ( ) // DesktopClientSession : Information about linked Dropbox desktop client -// sessions +// sessions. type DesktopClientSession struct { DeviceSession - // HostName : Name of the hosting desktop + // HostName : Name of the hosting desktop. HostName string `json:"host_name"` - // ClientType : The Dropbox desktop client type + // ClientType : The Dropbox desktop client type. ClientType *DesktopPlatform `json:"client_type"` - // ClientVersion : The Dropbox client version + // ClientVersion : The Dropbox client version. ClientVersion string `json:"client_version"` - // Platform : Information on the hosting platform + // Platform : Information on the hosting platform. Platform string `json:"platform"` // IsDeleteOnUnlinkSupported : Whether it's possible to delete all of the - // account files upon unlinking + // account files upon unlinking. IsDeleteOnUnlinkSupported bool `json:"is_delete_on_unlink_supported"` } @@ -285,9 +328,9 @@ const ( // DeviceSessionArg : has no documentation (yet) type DeviceSessionArg struct { - // SessionId : The session id + // SessionId : The session id. SessionId string `json:"session_id"` - // TeamMemberId : The unique id of the member owning the device + // TeamMemberId : The unique id of the member owning the device. TeamMemberId string `json:"team_member_id"` } @@ -1330,7 +1373,7 @@ func (u *HasTeamSharedDropboxValue) UnmarshalJSON(body []byte) error { // ListMemberAppsArg : has no documentation (yet) type ListMemberAppsArg struct { - // TeamMemberId : The team member id + // TeamMemberId : The team member id. TeamMemberId string `json:"team_member_id"` } @@ -1355,7 +1398,7 @@ const ( // ListMemberAppsResult : has no documentation (yet) type ListMemberAppsResult struct { // LinkedApiApps : List of third party applications linked by this team - // member + // member. LinkedApiApps []*ApiApp `json:"linked_api_apps"` } @@ -1368,15 +1411,15 @@ func NewListMemberAppsResult(LinkedApiApps []*ApiApp) *ListMemberAppsResult { // ListMemberDevicesArg : has no documentation (yet) type ListMemberDevicesArg struct { - // TeamMemberId : The team's member id + // TeamMemberId : The team's member id. TeamMemberId string `json:"team_member_id"` - // IncludeWebSessions : Whether to list web sessions of the team's member + // IncludeWebSessions : Whether to list web sessions of the team's member. IncludeWebSessions bool `json:"include_web_sessions"` // IncludeDesktopClients : Whether to list linked desktop devices of the - // team's member + // team's member. IncludeDesktopClients bool `json:"include_desktop_clients"` // IncludeMobileClients : Whether to list linked mobile devices of the - // team's member + // team's member. IncludeMobileClients bool `json:"include_mobile_clients"` } @@ -1403,11 +1446,11 @@ const ( // ListMemberDevicesResult : has no documentation (yet) type ListMemberDevicesResult struct { - // ActiveWebSessions : List of web sessions made by this team member + // ActiveWebSessions : List of web sessions made by this team member. ActiveWebSessions []*ActiveWebSession `json:"active_web_sessions,omitempty"` - // DesktopClientSessions : List of desktop clients used by this team member + // DesktopClientSessions : List of desktop clients used by this team member. DesktopClientSessions []*DesktopClientSession `json:"desktop_client_sessions,omitempty"` - // MobileClientSessions : List of mobile client used by this team member + // MobileClientSessions : List of mobile client used by this team member. MobileClientSessions []*MobileClientSession `json:"mobile_client_sessions,omitempty"` } @@ -1422,7 +1465,7 @@ type ListMembersAppsArg struct { // Cursor : At the first call to the `linkedAppsListMembersLinkedApps` the // cursor shouldn't be passed. Then, if the result of the call includes a // cursor, the following requests should include the received cursors in - // order to receive the next sub list of the team applications + // order to receive the next sub list of the team applications. Cursor string `json:"cursor,omitempty"` } @@ -1432,7 +1475,7 @@ func NewListMembersAppsArg() *ListMembersAppsArg { return s } -// ListMembersAppsError : Error returned by `linkedAppsListMembersLinkedApps` +// ListMembersAppsError : Error returned by `linkedAppsListMembersLinkedApps`. type ListMembersAppsError struct { dropbox.Tagged } @@ -1446,7 +1489,7 @@ const ( // ListMembersAppsResult : Information returned by // `linkedAppsListMembersLinkedApps`. type ListMembersAppsResult struct { - // Apps : The linked applications of each member of the team + // Apps : The linked applications of each member of the team. Apps []*MemberLinkedApps `json:"apps"` // HasMore : If true, then there are more apps available. Pass the cursor to // `linkedAppsListMembersLinkedApps` to retrieve the rest. @@ -1469,14 +1512,15 @@ type ListMembersDevicesArg struct { // Cursor : At the first call to the `devicesListMembersDevices` the cursor // shouldn't be passed. Then, if the result of the call includes a cursor, // the following requests should include the received cursors in order to - // receive the next sub list of team devices + // receive the next sub list of team devices. Cursor string `json:"cursor,omitempty"` - // IncludeWebSessions : Whether to list web sessions of the team members + // IncludeWebSessions : Whether to list web sessions of the team members. IncludeWebSessions bool `json:"include_web_sessions"` // IncludeDesktopClients : Whether to list desktop clients of the team - // members + // members. IncludeDesktopClients bool `json:"include_desktop_clients"` - // IncludeMobileClients : Whether to list mobile clients of the team members + // IncludeMobileClients : Whether to list mobile clients of the team + // members. IncludeMobileClients bool `json:"include_mobile_clients"` } @@ -1502,7 +1546,7 @@ const ( // ListMembersDevicesResult : has no documentation (yet) type ListMembersDevicesResult struct { - // Devices : The devices of each member of the team + // Devices : The devices of each member of the team. Devices []*MemberDevices `json:"devices"` // HasMore : If true, then there are more devices available. Pass the cursor // to `devicesListMembersDevices` to retrieve the rest. @@ -1525,7 +1569,7 @@ type ListTeamAppsArg struct { // Cursor : At the first call to the `linkedAppsListTeamLinkedApps` the // cursor shouldn't be passed. Then, if the result of the call includes a // cursor, the following requests should include the received cursors in - // order to receive the next sub list of the team applications + // order to receive the next sub list of the team applications. Cursor string `json:"cursor,omitempty"` } @@ -1535,7 +1579,7 @@ func NewListTeamAppsArg() *ListTeamAppsArg { return s } -// ListTeamAppsError : Error returned by `linkedAppsListTeamLinkedApps` +// ListTeamAppsError : Error returned by `linkedAppsListTeamLinkedApps`. type ListTeamAppsError struct { dropbox.Tagged } @@ -1548,7 +1592,7 @@ const ( // ListTeamAppsResult : Information returned by `linkedAppsListTeamLinkedApps`. type ListTeamAppsResult struct { - // Apps : The linked applications of each member of the team + // Apps : The linked applications of each member of the team. Apps []*MemberLinkedApps `json:"apps"` // HasMore : If true, then there are more apps available. Pass the cursor to // `linkedAppsListTeamLinkedApps` to retrieve the rest. @@ -1571,14 +1615,15 @@ type ListTeamDevicesArg struct { // Cursor : At the first call to the `devicesListTeamDevices` the cursor // shouldn't be passed. Then, if the result of the call includes a cursor, // the following requests should include the received cursors in order to - // receive the next sub list of team devices + // receive the next sub list of team devices. Cursor string `json:"cursor,omitempty"` - // IncludeWebSessions : Whether to list web sessions of the team members + // IncludeWebSessions : Whether to list web sessions of the team members. IncludeWebSessions bool `json:"include_web_sessions"` // IncludeDesktopClients : Whether to list desktop clients of the team - // members + // members. IncludeDesktopClients bool `json:"include_desktop_clients"` - // IncludeMobileClients : Whether to list mobile clients of the team members + // IncludeMobileClients : Whether to list mobile clients of the team + // members. IncludeMobileClients bool `json:"include_mobile_clients"` } @@ -1604,7 +1649,7 @@ const ( // ListTeamDevicesResult : has no documentation (yet) type ListTeamDevicesResult struct { - // Devices : The devices of each member of the team + // Devices : The devices of each member of the team. Devices []*MemberDevices `json:"devices"` // HasMore : If true, then there are more devices available. Pass the cursor // to `devicesListTeamDevices` to retrieve the rest. @@ -1811,13 +1856,13 @@ func (u *MemberAddResult) UnmarshalJSON(body []byte) error { // MemberDevices : Information on devices of a team's member. type MemberDevices struct { - // TeamMemberId : The member unique Id + // TeamMemberId : The member unique Id. TeamMemberId string `json:"team_member_id"` - // WebSessions : List of web sessions made by this team member + // WebSessions : List of web sessions made by this team member. WebSessions []*ActiveWebSession `json:"web_sessions,omitempty"` - // DesktopClients : List of desktop clients by this team member + // DesktopClients : List of desktop clients by this team member. DesktopClients []*DesktopClientSession `json:"desktop_clients,omitempty"` - // MobileClients : List of mobile clients by this team member + // MobileClients : List of mobile clients by this team member. MobileClients []*MobileClientSession `json:"mobile_clients,omitempty"` } @@ -1830,10 +1875,10 @@ func NewMemberDevices(TeamMemberId string) *MemberDevices { // MemberLinkedApps : Information on linked applications of a team member. type MemberLinkedApps struct { - // TeamMemberId : The member unique Id + // TeamMemberId : The member unique Id. TeamMemberId string `json:"team_member_id"` // LinkedApiApps : List of third party applications linked by this team - // member + // member. LinkedApiApps []*ApiApp `json:"linked_api_apps"` } @@ -2409,18 +2454,19 @@ const ( MobileClientPlatformOther = "other" ) -// MobileClientSession : Information about linked Dropbox mobile client sessions +// MobileClientSession : Information about linked Dropbox mobile client +// sessions. type MobileClientSession struct { DeviceSession - // DeviceName : The device name + // DeviceName : The device name. DeviceName string `json:"device_name"` - // ClientType : The mobile application type + // ClientType : The mobile application type. ClientType *MobileClientPlatform `json:"client_type"` - // ClientVersion : The dropbox client version + // ClientVersion : The dropbox client version. ClientVersion string `json:"client_version,omitempty"` - // OsVersion : The hosting OS version + // OsVersion : The hosting OS version. OsVersion string `json:"os_version,omitempty"` - // LastCarrier : last carrier used by the device + // LastCarrier : last carrier used by the device. LastCarrier string `json:"last_carrier,omitempty"` } @@ -2469,6 +2515,54 @@ const ( NamespaceTypeOther = "other" ) +// RemoveCustomQuotaResult : User result for setting member custom quota. +type RemoveCustomQuotaResult struct { + dropbox.Tagged + // Success : Successfully removed user. + Success *UserSelectorArg `json:"success,omitempty"` + // InvalidUser : Invalid user (not in team). + InvalidUser *UserSelectorArg `json:"invalid_user,omitempty"` +} + +// Valid tag values for RemoveCustomQuotaResult +const ( + RemoveCustomQuotaResultSuccess = "success" + RemoveCustomQuotaResultInvalidUser = "invalid_user" + RemoveCustomQuotaResultOther = "other" +) + +// UnmarshalJSON deserializes into a RemoveCustomQuotaResult instance +func (u *RemoveCustomQuotaResult) UnmarshalJSON(body []byte) error { + type wrap struct { + dropbox.Tagged + // Success : Successfully removed user. + Success json.RawMessage `json:"success,omitempty"` + // InvalidUser : Invalid user (not in team). + InvalidUser json.RawMessage `json:"invalid_user,omitempty"` + } + var w wrap + var err error + if err = json.Unmarshal(body, &w); err != nil { + return err + } + u.Tag = w.Tag + switch u.Tag { + case "success": + err = json.Unmarshal(w.Success, &u.Success) + + if err != nil { + return err + } + case "invalid_user": + err = json.Unmarshal(w.InvalidUser, &u.InvalidUser) + + if err != nil { + return err + } + } + return nil +} + // RemovedStatus : has no documentation (yet) type RemovedStatus struct { // IsRecoverable : True if the removed team member is recoverable. @@ -2487,7 +2581,7 @@ type RevokeDesktopClientArg struct { DeviceSessionArg // DeleteOnUnlink : Whether to delete all files of the account (this is // possible only if supported by the desktop client and will be made the - // next time the client access the account) + // next time the client access the account). DeleteOnUnlink bool `json:"delete_on_unlink"` } @@ -2503,11 +2597,11 @@ func NewRevokeDesktopClientArg(SessionId string, TeamMemberId string) *RevokeDes // RevokeDeviceSessionArg : has no documentation (yet) type RevokeDeviceSessionArg struct { dropbox.Tagged - // WebSession : End an active session + // WebSession : End an active session. WebSession *DeviceSessionArg `json:"web_session,omitempty"` - // DesktopClient : Unlink a linked desktop device + // DesktopClient : Unlink a linked desktop device. DesktopClient *RevokeDesktopClientArg `json:"desktop_client,omitempty"` - // MobileClient : Unlink a linked mobile device + // MobileClient : Unlink a linked mobile device. MobileClient *DeviceSessionArg `json:"mobile_client,omitempty"` } @@ -2522,11 +2616,11 @@ const ( func (u *RevokeDeviceSessionArg) UnmarshalJSON(body []byte) error { type wrap struct { dropbox.Tagged - // WebSession : End an active session + // WebSession : End an active session. WebSession json.RawMessage `json:"web_session,omitempty"` - // DesktopClient : Unlink a linked desktop device + // DesktopClient : Unlink a linked desktop device. DesktopClient json.RawMessage `json:"desktop_client,omitempty"` - // MobileClient : Unlink a linked mobile device + // MobileClient : Unlink a linked mobile device. MobileClient json.RawMessage `json:"mobile_client,omitempty"` } var w wrap @@ -2608,9 +2702,9 @@ const ( // RevokeDeviceSessionStatus : has no documentation (yet) type RevokeDeviceSessionStatus struct { - // Success : Result of the revoking request + // Success : Result of the revoking request. Success bool `json:"success"` - // ErrorType : The error cause in case of a failure + // ErrorType : The error cause in case of a failure. ErrorType *RevokeDeviceSessionError `json:"error_type,omitempty"` } @@ -2623,12 +2717,12 @@ func NewRevokeDeviceSessionStatus(Success bool) *RevokeDeviceSessionStatus { // RevokeLinkedApiAppArg : has no documentation (yet) type RevokeLinkedApiAppArg struct { - // AppId : The application's unique id + // AppId : The application's unique id. AppId string `json:"app_id"` - // TeamMemberId : The unique id of the member owning the device + // TeamMemberId : The unique id of the member owning the device. TeamMemberId string `json:"team_member_id"` // KeepAppFolder : Whether to keep the application dedicated folder (in case - // the application uses one) + // the application uses one). KeepAppFolder bool `json:"keep_app_folder"` } @@ -2692,9 +2786,9 @@ const ( // RevokeLinkedAppStatus : has no documentation (yet) type RevokeLinkedAppStatus struct { - // Success : Result of the revoking request + // Success : Result of the revoking request. Success bool `json:"success"` - // ErrorType : The error cause in case of a failure + // ErrorType : The error cause in case of a failure. ErrorType *RevokeLinkedAppError `json:"error_type,omitempty"` } @@ -2705,6 +2799,19 @@ func NewRevokeLinkedAppStatus(Success bool) *RevokeLinkedAppStatus { return s } +// SetCustomQuotaArg : has no documentation (yet) +type SetCustomQuotaArg struct { + // UsersAndQuotas : List of users and their custom quotas. + UsersAndQuotas []*UserCustomQuotaArg `json:"users_and_quotas"` +} + +// NewSetCustomQuotaArg returns a new SetCustomQuotaArg instance +func NewSetCustomQuotaArg(UsersAndQuotas []*UserCustomQuotaArg) *SetCustomQuotaArg { + s := new(SetCustomQuotaArg) + s.UsersAndQuotas = UsersAndQuotas + return s +} + // StorageBucket : Describes the number of users in a specific storage bucket. type StorageBucket struct { // Bucket : The name of the storage bucket. For example, '1G' is a bucket of @@ -3238,8 +3345,7 @@ const ( // TeamNamespacesListArg : has no documentation (yet) type TeamNamespacesListArg struct { - // Limit : The approximate maximum number of results to return per request. - // This limit may be exceeded. + // Limit : Specifying a value here has no effect. Limit uint32 `json:"limit"` } @@ -3322,43 +3428,6 @@ func NewTokenGetAuthenticatedAdminResult(AdminProfile *TeamMemberProfile) *Token return s } -// UpdatePropertyTemplateArg : has no documentation (yet) -type UpdatePropertyTemplateArg struct { - // TemplateId : An identifier for property template added by - // `propertiesTemplateAdd`. - TemplateId string `json:"template_id"` - // Name : A display name for the property template. Property template names - // can be up to 256 bytes. - Name string `json:"name,omitempty"` - // Description : Description for new property template. Property template - // descriptions can be up to 1024 bytes. - Description string `json:"description,omitempty"` - // AddFields : This is a list of custom properties to add to the property - // template. There can be up to 64 properties in a single property template. - AddFields []*properties.PropertyFieldTemplate `json:"add_fields,omitempty"` -} - -// NewUpdatePropertyTemplateArg returns a new UpdatePropertyTemplateArg instance -func NewUpdatePropertyTemplateArg(TemplateId string) *UpdatePropertyTemplateArg { - s := new(UpdatePropertyTemplateArg) - s.TemplateId = TemplateId - return s -} - -// UpdatePropertyTemplateResult : has no documentation (yet) -type UpdatePropertyTemplateResult struct { - // TemplateId : An identifier for property template added by - // `propertiesTemplateAdd`. - TemplateId string `json:"template_id"` -} - -// NewUpdatePropertyTemplateResult returns a new UpdatePropertyTemplateResult instance -func NewUpdatePropertyTemplateResult(TemplateId string) *UpdatePropertyTemplateResult { - s := new(UpdatePropertyTemplateResult) - s.TemplateId = TemplateId - return s -} - // UploadApiRateLimitValue : The value for `Feature.upload_api_rate_limit`. type UploadApiRateLimitValue struct { dropbox.Tagged @@ -3395,6 +3464,39 @@ func (u *UploadApiRateLimitValue) UnmarshalJSON(body []byte) error { return nil } +// UserCustomQuotaArg : User and their required custom quota in GB (1 TB = 1024 +// GB). +type UserCustomQuotaArg struct { + // User : has no documentation (yet) + User *UserSelectorArg `json:"user"` + // QuotaGb : has no documentation (yet) + QuotaGb uint32 `json:"quota_gb"` +} + +// NewUserCustomQuotaArg returns a new UserCustomQuotaArg instance +func NewUserCustomQuotaArg(User *UserSelectorArg, QuotaGb uint32) *UserCustomQuotaArg { + s := new(UserCustomQuotaArg) + s.User = User + s.QuotaGb = QuotaGb + return s +} + +// UserCustomQuotaResult : User and their custom quota in GB (1 TB = 1024 GB). +// No quota returns if the user has no custom quota set. +type UserCustomQuotaResult struct { + // User : has no documentation (yet) + User *UserSelectorArg `json:"user"` + // QuotaGb : has no documentation (yet) + QuotaGb uint32 `json:"quota_gb,omitempty"` +} + +// NewUserCustomQuotaResult returns a new UserCustomQuotaResult instance +func NewUserCustomQuotaResult(User *UserSelectorArg) *UserCustomQuotaResult { + s := new(UserCustomQuotaResult) + s.User = User + return s +} + // UserSelectorArg : Argument for selecting a single user, either by // team_member_id, external_id or email. type UserSelectorArg struct { diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_log/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_log/types.go index 846bbd803..7b05d9eae 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_log/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_log/types.go @@ -27,6 +27,7 @@ import ( "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_common" + "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_policies" ) // AccessMethodLogInfo : Indicates the method in which the action was performed. @@ -847,10 +848,10 @@ func NewDeviceApprovalsChangeMobilePolicyDetails() *DeviceApprovalsChangeMobileP type DeviceApprovalsChangeOverageActionDetails struct { // NewValue : New over the limits policy. Might be missing due to historical // data gap. - NewValue *DeviceApprovalsRolloutPolicy `json:"new_value,omitempty"` + NewValue *team_policies.RolloutMethod `json:"new_value,omitempty"` // PreviousValue : Previous over the limit policy. Might be missing due to // historical data gap. - PreviousValue *DeviceApprovalsRolloutPolicy `json:"previous_value,omitempty"` + PreviousValue *team_policies.RolloutMethod `json:"previous_value,omitempty"` } // NewDeviceApprovalsChangeOverageActionDetails returns a new DeviceApprovalsChangeOverageActionDetails instance @@ -888,19 +889,6 @@ const ( DeviceApprovalsPolicyOther = "other" ) -// DeviceApprovalsRolloutPolicy : has no documentation (yet) -type DeviceApprovalsRolloutPolicy struct { - dropbox.Tagged -} - -// Valid tag values for DeviceApprovalsRolloutPolicy -const ( - DeviceApprovalsRolloutPolicyRemoveOldest = "remove_oldest" - DeviceApprovalsRolloutPolicyRemoveAll = "remove_all" - DeviceApprovalsRolloutPolicyAddException = "add_exception" - DeviceApprovalsRolloutPolicyOther = "other" -) - // DeviceChangeIpDesktopDetails : IP address associated with active desktop // session changed. type DeviceChangeIpDesktopDetails struct { @@ -1268,14 +1256,14 @@ func NewEmmAddExceptionDetails() *EmmAddExceptionDetails { // for team members. type EmmChangePolicyDetails struct { // NewValue : New enterprise mobility management policy. - NewValue *EmmPolicy `json:"new_value"` + NewValue *team_policies.EmmState `json:"new_value"` // PreviousValue : Previous enterprise mobility management policy. Might be // missing due to historical data gap. - PreviousValue *EmmPolicy `json:"previous_value,omitempty"` + PreviousValue *team_policies.EmmState `json:"previous_value,omitempty"` } // NewEmmChangePolicyDetails returns a new EmmChangePolicyDetails instance -func NewEmmChangePolicyDetails(NewValue *EmmPolicy) *EmmChangePolicyDetails { +func NewEmmChangePolicyDetails(NewValue *team_policies.EmmState) *EmmChangePolicyDetails { s := new(EmmChangePolicyDetails) s.NewValue = NewValue return s @@ -1311,19 +1299,6 @@ func NewEmmLoginSuccessDetails() *EmmLoginSuccessDetails { return s } -// EmmPolicy : Enterprise mobility management policy -type EmmPolicy struct { - dropbox.Tagged -} - -// Valid tag values for EmmPolicy -const ( - EmmPolicyDisabled = "disabled" - EmmPolicyOptional = "optional" - EmmPolicyRequired = "required" - EmmPolicyOther = "other" -) - // EmmRefreshAuthTokenDetails : Refreshed the auth token used for setting up // enterprise mobility management. type EmmRefreshAuthTokenDetails struct { @@ -1413,6 +1388,8 @@ type EventDetails struct { // MemberTransferAccountContentsDetails : Transferred contents of a removed // team member account to another member. MemberTransferAccountContentsDetails *MemberTransferAccountContentsDetails `json:"member_transfer_account_contents_details,omitempty"` + // PaperAdminExportStartDetails : Exported all Paper documents in the team. + PaperAdminExportStartDetails *PaperAdminExportStartDetails `json:"paper_admin_export_start_details,omitempty"` // PaperEnabledUsersGroupAdditionDetails : Users added to Paper enabled // users list. PaperEnabledUsersGroupAdditionDetails *PaperEnabledUsersGroupAdditionDetails `json:"paper_enabled_users_group_addition_details,omitempty"` @@ -1443,6 +1420,21 @@ type EventDetails struct { AppUnlinkTeamDetails *AppUnlinkTeamDetails `json:"app_unlink_team_details,omitempty"` // AppUnlinkUserDetails : Unlinked an app for team member. AppUnlinkUserDetails *AppUnlinkUserDetails `json:"app_unlink_user_details,omitempty"` + // FileAddCommentDetails : Added a file comment. + FileAddCommentDetails *FileAddCommentDetails `json:"file_add_comment_details,omitempty"` + // FileChangeCommentSubscriptionDetails : Subscribed to or unsubscribed from + // comment notifications for file. + FileChangeCommentSubscriptionDetails *FileChangeCommentSubscriptionDetails `json:"file_change_comment_subscription_details,omitempty"` + // FileDeleteCommentDetails : Deleted a file comment. + FileDeleteCommentDetails *FileDeleteCommentDetails `json:"file_delete_comment_details,omitempty"` + // FileLikeCommentDetails : Liked a file comment. + FileLikeCommentDetails *FileLikeCommentDetails `json:"file_like_comment_details,omitempty"` + // FileResolveCommentDetails : Resolved a file comment. + FileResolveCommentDetails *FileResolveCommentDetails `json:"file_resolve_comment_details,omitempty"` + // FileUnlikeCommentDetails : Unliked a file comment. + FileUnlikeCommentDetails *FileUnlikeCommentDetails `json:"file_unlike_comment_details,omitempty"` + // FileUnresolveCommentDetails : Unresolved a file comment. + FileUnresolveCommentDetails *FileUnresolveCommentDetails `json:"file_unresolve_comment_details,omitempty"` // DeviceChangeIpDesktopDetails : IP address associated with active desktop // session changed. DeviceChangeIpDesktopDetails *DeviceChangeIpDesktopDetails `json:"device_change_ip_desktop_details,omitempty"` @@ -1574,10 +1566,6 @@ type EventDetails struct { GroupCreateDetails *GroupCreateDetails `json:"group_create_details,omitempty"` // GroupDeleteDetails : Deleted a group. GroupDeleteDetails *GroupDeleteDetails `json:"group_delete_details,omitempty"` - // GroupDescriptionUpdatedDetails : Updated a group. - GroupDescriptionUpdatedDetails *GroupDescriptionUpdatedDetails `json:"group_description_updated_details,omitempty"` - // GroupJoinPolicyUpdatedDetails : Updated a group join policy. - GroupJoinPolicyUpdatedDetails *GroupJoinPolicyUpdatedDetails `json:"group_join_policy_updated_details,omitempty"` // GroupMovedDetails : Moved a group. GroupMovedDetails *GroupMovedDetails `json:"group_moved_details,omitempty"` // GroupRemoveExternalIdDetails : Removed the external ID for group. @@ -1626,9 +1614,6 @@ type EventDetails struct { PaperContentAddToFolderDetails *PaperContentAddToFolderDetails `json:"paper_content_add_to_folder_details,omitempty"` // PaperContentArchiveDetails : Archived Paper doc or folder. PaperContentArchiveDetails *PaperContentArchiveDetails `json:"paper_content_archive_details,omitempty"` - // PaperContentChangeSubscriptionDetails : Followed or unfollowed a Paper - // doc or folder. - PaperContentChangeSubscriptionDetails *PaperContentChangeSubscriptionDetails `json:"paper_content_change_subscription_details,omitempty"` // PaperContentCreateDetails : Created a Paper doc or folder. PaperContentCreateDetails *PaperContentCreateDetails `json:"paper_content_create_details,omitempty"` // PaperContentPermanentlyDeleteDetails : Permanently deleted a Paper doc or @@ -1652,6 +1637,8 @@ type EventDetails struct { // PaperDocChangeSharingPolicyDetails : Changed the sharing policy for Paper // doc. PaperDocChangeSharingPolicyDetails *PaperDocChangeSharingPolicyDetails `json:"paper_doc_change_sharing_policy_details,omitempty"` + // PaperDocChangeSubscriptionDetails : Followed or unfollowed a Paper doc. + PaperDocChangeSubscriptionDetails *PaperDocChangeSubscriptionDetails `json:"paper_doc_change_subscription_details,omitempty"` // PaperDocDeletedDetails : Paper doc archived. PaperDocDeletedDetails *PaperDocDeletedDetails `json:"paper_doc_deleted_details,omitempty"` // PaperDocDeleteCommentDetails : Deleted a Paper doc comment. @@ -1677,10 +1664,17 @@ type EventDetails struct { PaperDocSlackShareDetails *PaperDocSlackShareDetails `json:"paper_doc_slack_share_details,omitempty"` // PaperDocTeamInviteDetails : Paper doc shared with team member. PaperDocTeamInviteDetails *PaperDocTeamInviteDetails `json:"paper_doc_team_invite_details,omitempty"` + // PaperDocTrashedDetails : Paper doc trashed. + PaperDocTrashedDetails *PaperDocTrashedDetails `json:"paper_doc_trashed_details,omitempty"` // PaperDocUnresolveCommentDetails : Unresolved a Paper doc comment. PaperDocUnresolveCommentDetails *PaperDocUnresolveCommentDetails `json:"paper_doc_unresolve_comment_details,omitempty"` + // PaperDocUntrashedDetails : Paper doc untrashed. + PaperDocUntrashedDetails *PaperDocUntrashedDetails `json:"paper_doc_untrashed_details,omitempty"` // PaperDocViewDetails : Viewed Paper doc. PaperDocViewDetails *PaperDocViewDetails `json:"paper_doc_view_details,omitempty"` + // PaperFolderChangeSubscriptionDetails : Followed or unfollowed a Paper + // folder. + PaperFolderChangeSubscriptionDetails *PaperFolderChangeSubscriptionDetails `json:"paper_folder_change_subscription_details,omitempty"` // PaperFolderDeletedDetails : Paper folder archived. PaperFolderDeletedDetails *PaperFolderDeletedDetails `json:"paper_folder_deleted_details,omitempty"` // PaperFolderFollowedDetails : Followed a Paper folder. @@ -1704,12 +1698,6 @@ type EventDetails struct { TeamActivityCreateReportDetails *TeamActivityCreateReportDetails `json:"team_activity_create_report_details,omitempty"` // CollectionShareDetails : Shared an album. CollectionShareDetails *CollectionShareDetails `json:"collection_share_details,omitempty"` - // FileAddCommentDetails : Added a file comment. - FileAddCommentDetails *FileAddCommentDetails `json:"file_add_comment_details,omitempty"` - // FileLikeCommentDetails : Liked a file comment. - FileLikeCommentDetails *FileLikeCommentDetails `json:"file_like_comment_details,omitempty"` - // FileUnlikeCommentDetails : Unliked a file comment. - FileUnlikeCommentDetails *FileUnlikeCommentDetails `json:"file_unlike_comment_details,omitempty"` // NoteAclInviteOnlyDetails : Changed a Paper document to be invite-only. NoteAclInviteOnlyDetails *NoteAclInviteOnlyDetails `json:"note_acl_invite_only_details,omitempty"` // NoteAclLinkDetails : Changed a Paper document to be link accessible. @@ -1868,10 +1856,10 @@ type EventDetails struct { // ShmodelVisibilityTeamOnlyDetails : Made a file/folder visible only to // team members with the link. ShmodelVisibilityTeamOnlyDetails *ShmodelVisibilityTeamOnlyDetails `json:"shmodel_visibility_team_only_details,omitempty"` - // RemoveLogoutUrlDetails : Removed single sign-on logout URL. - RemoveLogoutUrlDetails *RemoveLogoutUrlDetails `json:"remove_logout_url_details,omitempty"` - // RemoveSsoUrlDetails : Changed the sign-out URL for SSO. - RemoveSsoUrlDetails *RemoveSsoUrlDetails `json:"remove_sso_url_details,omitempty"` + // SsoAddLoginUrlDetails : Added sign-in URL for SSO. + SsoAddLoginUrlDetails *SsoAddLoginUrlDetails `json:"sso_add_login_url_details,omitempty"` + // SsoAddLogoutUrlDetails : Added sign-out URL for SSO. + SsoAddLogoutUrlDetails *SsoAddLogoutUrlDetails `json:"sso_add_logout_url_details,omitempty"` // SsoChangeCertDetails : Changed the X.509 certificate for SSO. SsoChangeCertDetails *SsoChangeCertDetails `json:"sso_change_cert_details,omitempty"` // SsoChangeLoginUrlDetails : Changed the sign-in URL for SSO. @@ -1881,6 +1869,10 @@ type EventDetails struct { // SsoChangeSamlIdentityModeDetails : Changed the SAML identity mode for // SSO. SsoChangeSamlIdentityModeDetails *SsoChangeSamlIdentityModeDetails `json:"sso_change_saml_identity_mode_details,omitempty"` + // SsoRemoveLoginUrlDetails : Removed the sign-in URL for SSO. + SsoRemoveLoginUrlDetails *SsoRemoveLoginUrlDetails `json:"sso_remove_login_url_details,omitempty"` + // SsoRemoveLogoutUrlDetails : Removed single sign-on logout URL. + SsoRemoveLogoutUrlDetails *SsoRemoveLogoutUrlDetails `json:"sso_remove_logout_url_details,omitempty"` // TeamFolderChangeStatusDetails : Changed the archival status of a team // folder. TeamFolderChangeStatusDetails *TeamFolderChangeStatusDetails `json:"team_folder_change_status_details,omitempty"` @@ -2060,6 +2052,7 @@ const ( EventDetailsMemberPermanentlyDeleteAccountContentsDetails = "member_permanently_delete_account_contents_details" EventDetailsMemberSpaceLimitsChangeStatusDetails = "member_space_limits_change_status_details" EventDetailsMemberTransferAccountContentsDetails = "member_transfer_account_contents_details" + EventDetailsPaperAdminExportStartDetails = "paper_admin_export_start_details" EventDetailsPaperEnabledUsersGroupAdditionDetails = "paper_enabled_users_group_addition_details" EventDetailsPaperEnabledUsersGroupRemovalDetails = "paper_enabled_users_group_removal_details" EventDetailsPaperExternalViewAllowDetails = "paper_external_view_allow_details" @@ -2072,6 +2065,13 @@ const ( EventDetailsAppLinkUserDetails = "app_link_user_details" EventDetailsAppUnlinkTeamDetails = "app_unlink_team_details" EventDetailsAppUnlinkUserDetails = "app_unlink_user_details" + EventDetailsFileAddCommentDetails = "file_add_comment_details" + EventDetailsFileChangeCommentSubscriptionDetails = "file_change_comment_subscription_details" + EventDetailsFileDeleteCommentDetails = "file_delete_comment_details" + EventDetailsFileLikeCommentDetails = "file_like_comment_details" + EventDetailsFileResolveCommentDetails = "file_resolve_comment_details" + EventDetailsFileUnlikeCommentDetails = "file_unlike_comment_details" + EventDetailsFileUnresolveCommentDetails = "file_unresolve_comment_details" EventDetailsDeviceChangeIpDesktopDetails = "device_change_ip_desktop_details" EventDetailsDeviceChangeIpMobileDetails = "device_change_ip_mobile_details" EventDetailsDeviceChangeIpWebDetails = "device_change_ip_web_details" @@ -2127,8 +2127,6 @@ const ( EventDetailsGroupChangeMemberRoleDetails = "group_change_member_role_details" EventDetailsGroupCreateDetails = "group_create_details" EventDetailsGroupDeleteDetails = "group_delete_details" - EventDetailsGroupDescriptionUpdatedDetails = "group_description_updated_details" - EventDetailsGroupJoinPolicyUpdatedDetails = "group_join_policy_updated_details" EventDetailsGroupMovedDetails = "group_moved_details" EventDetailsGroupRemoveExternalIdDetails = "group_remove_external_id_details" EventDetailsGroupRemoveMemberDetails = "group_remove_member_details" @@ -2151,7 +2149,6 @@ const ( EventDetailsPaperContentAddMemberDetails = "paper_content_add_member_details" EventDetailsPaperContentAddToFolderDetails = "paper_content_add_to_folder_details" EventDetailsPaperContentArchiveDetails = "paper_content_archive_details" - EventDetailsPaperContentChangeSubscriptionDetails = "paper_content_change_subscription_details" EventDetailsPaperContentCreateDetails = "paper_content_create_details" EventDetailsPaperContentPermanentlyDeleteDetails = "paper_content_permanently_delete_details" EventDetailsPaperContentRemoveFromFolderDetails = "paper_content_remove_from_folder_details" @@ -2161,6 +2158,7 @@ const ( EventDetailsPaperDocAddCommentDetails = "paper_doc_add_comment_details" EventDetailsPaperDocChangeMemberRoleDetails = "paper_doc_change_member_role_details" EventDetailsPaperDocChangeSharingPolicyDetails = "paper_doc_change_sharing_policy_details" + EventDetailsPaperDocChangeSubscriptionDetails = "paper_doc_change_subscription_details" EventDetailsPaperDocDeletedDetails = "paper_doc_deleted_details" EventDetailsPaperDocDeleteCommentDetails = "paper_doc_delete_comment_details" EventDetailsPaperDocDownloadDetails = "paper_doc_download_details" @@ -2173,8 +2171,11 @@ const ( EventDetailsPaperDocRevertDetails = "paper_doc_revert_details" EventDetailsPaperDocSlackShareDetails = "paper_doc_slack_share_details" EventDetailsPaperDocTeamInviteDetails = "paper_doc_team_invite_details" + EventDetailsPaperDocTrashedDetails = "paper_doc_trashed_details" EventDetailsPaperDocUnresolveCommentDetails = "paper_doc_unresolve_comment_details" + EventDetailsPaperDocUntrashedDetails = "paper_doc_untrashed_details" EventDetailsPaperDocViewDetails = "paper_doc_view_details" + EventDetailsPaperFolderChangeSubscriptionDetails = "paper_folder_change_subscription_details" EventDetailsPaperFolderDeletedDetails = "paper_folder_deleted_details" EventDetailsPaperFolderFollowedDetails = "paper_folder_followed_details" EventDetailsPaperFolderTeamInviteDetails = "paper_folder_team_invite_details" @@ -2186,9 +2187,6 @@ const ( EventDetailsSmartSyncCreateAdminPrivilegeReportDetails = "smart_sync_create_admin_privilege_report_details" EventDetailsTeamActivityCreateReportDetails = "team_activity_create_report_details" EventDetailsCollectionShareDetails = "collection_share_details" - EventDetailsFileAddCommentDetails = "file_add_comment_details" - EventDetailsFileLikeCommentDetails = "file_like_comment_details" - EventDetailsFileUnlikeCommentDetails = "file_unlike_comment_details" EventDetailsNoteAclInviteOnlyDetails = "note_acl_invite_only_details" EventDetailsNoteAclLinkDetails = "note_acl_link_details" EventDetailsNoteAclTeamLinkDetails = "note_acl_team_link_details" @@ -2251,12 +2249,14 @@ const ( EventDetailsShmodelVisibilityPasswordDetails = "shmodel_visibility_password_details" EventDetailsShmodelVisibilityPublicDetails = "shmodel_visibility_public_details" EventDetailsShmodelVisibilityTeamOnlyDetails = "shmodel_visibility_team_only_details" - EventDetailsRemoveLogoutUrlDetails = "remove_logout_url_details" - EventDetailsRemoveSsoUrlDetails = "remove_sso_url_details" + EventDetailsSsoAddLoginUrlDetails = "sso_add_login_url_details" + EventDetailsSsoAddLogoutUrlDetails = "sso_add_logout_url_details" EventDetailsSsoChangeCertDetails = "sso_change_cert_details" EventDetailsSsoChangeLoginUrlDetails = "sso_change_login_url_details" EventDetailsSsoChangeLogoutUrlDetails = "sso_change_logout_url_details" EventDetailsSsoChangeSamlIdentityModeDetails = "sso_change_saml_identity_mode_details" + EventDetailsSsoRemoveLoginUrlDetails = "sso_remove_login_url_details" + EventDetailsSsoRemoveLogoutUrlDetails = "sso_remove_logout_url_details" EventDetailsTeamFolderChangeStatusDetails = "team_folder_change_status_details" EventDetailsTeamFolderCreateDetails = "team_folder_create_details" EventDetailsTeamFolderDowngradeDetails = "team_folder_downgrade_details" @@ -2335,6 +2335,9 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { // MemberTransferAccountContentsDetails : Transferred contents of a // removed team member account to another member. MemberTransferAccountContentsDetails json.RawMessage `json:"member_transfer_account_contents_details,omitempty"` + // PaperAdminExportStartDetails : Exported all Paper documents in the + // team. + PaperAdminExportStartDetails json.RawMessage `json:"paper_admin_export_start_details,omitempty"` // PaperEnabledUsersGroupAdditionDetails : Users added to Paper enabled // users list. PaperEnabledUsersGroupAdditionDetails json.RawMessage `json:"paper_enabled_users_group_addition_details,omitempty"` @@ -2365,6 +2368,21 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { AppUnlinkTeamDetails json.RawMessage `json:"app_unlink_team_details,omitempty"` // AppUnlinkUserDetails : Unlinked an app for team member. AppUnlinkUserDetails json.RawMessage `json:"app_unlink_user_details,omitempty"` + // FileAddCommentDetails : Added a file comment. + FileAddCommentDetails json.RawMessage `json:"file_add_comment_details,omitempty"` + // FileChangeCommentSubscriptionDetails : Subscribed to or unsubscribed + // from comment notifications for file. + FileChangeCommentSubscriptionDetails json.RawMessage `json:"file_change_comment_subscription_details,omitempty"` + // FileDeleteCommentDetails : Deleted a file comment. + FileDeleteCommentDetails json.RawMessage `json:"file_delete_comment_details,omitempty"` + // FileLikeCommentDetails : Liked a file comment. + FileLikeCommentDetails json.RawMessage `json:"file_like_comment_details,omitempty"` + // FileResolveCommentDetails : Resolved a file comment. + FileResolveCommentDetails json.RawMessage `json:"file_resolve_comment_details,omitempty"` + // FileUnlikeCommentDetails : Unliked a file comment. + FileUnlikeCommentDetails json.RawMessage `json:"file_unlike_comment_details,omitempty"` + // FileUnresolveCommentDetails : Unresolved a file comment. + FileUnresolveCommentDetails json.RawMessage `json:"file_unresolve_comment_details,omitempty"` // DeviceChangeIpDesktopDetails : IP address associated with active // desktop session changed. DeviceChangeIpDesktopDetails json.RawMessage `json:"device_change_ip_desktop_details,omitempty"` @@ -2498,10 +2516,6 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { GroupCreateDetails json.RawMessage `json:"group_create_details,omitempty"` // GroupDeleteDetails : Deleted a group. GroupDeleteDetails json.RawMessage `json:"group_delete_details,omitempty"` - // GroupDescriptionUpdatedDetails : Updated a group. - GroupDescriptionUpdatedDetails json.RawMessage `json:"group_description_updated_details,omitempty"` - // GroupJoinPolicyUpdatedDetails : Updated a group join policy. - GroupJoinPolicyUpdatedDetails json.RawMessage `json:"group_join_policy_updated_details,omitempty"` // GroupMovedDetails : Moved a group. GroupMovedDetails json.RawMessage `json:"group_moved_details,omitempty"` // GroupRemoveExternalIdDetails : Removed the external ID for group. @@ -2552,9 +2566,6 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { PaperContentAddToFolderDetails json.RawMessage `json:"paper_content_add_to_folder_details,omitempty"` // PaperContentArchiveDetails : Archived Paper doc or folder. PaperContentArchiveDetails json.RawMessage `json:"paper_content_archive_details,omitempty"` - // PaperContentChangeSubscriptionDetails : Followed or unfollowed a - // Paper doc or folder. - PaperContentChangeSubscriptionDetails json.RawMessage `json:"paper_content_change_subscription_details,omitempty"` // PaperContentCreateDetails : Created a Paper doc or folder. PaperContentCreateDetails json.RawMessage `json:"paper_content_create_details,omitempty"` // PaperContentPermanentlyDeleteDetails : Permanently deleted a Paper @@ -2579,6 +2590,9 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { // PaperDocChangeSharingPolicyDetails : Changed the sharing policy for // Paper doc. PaperDocChangeSharingPolicyDetails json.RawMessage `json:"paper_doc_change_sharing_policy_details,omitempty"` + // PaperDocChangeSubscriptionDetails : Followed or unfollowed a Paper + // doc. + PaperDocChangeSubscriptionDetails json.RawMessage `json:"paper_doc_change_subscription_details,omitempty"` // PaperDocDeletedDetails : Paper doc archived. PaperDocDeletedDetails json.RawMessage `json:"paper_doc_deleted_details,omitempty"` // PaperDocDeleteCommentDetails : Deleted a Paper doc comment. @@ -2605,10 +2619,17 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { PaperDocSlackShareDetails json.RawMessage `json:"paper_doc_slack_share_details,omitempty"` // PaperDocTeamInviteDetails : Paper doc shared with team member. PaperDocTeamInviteDetails json.RawMessage `json:"paper_doc_team_invite_details,omitempty"` + // PaperDocTrashedDetails : Paper doc trashed. + PaperDocTrashedDetails json.RawMessage `json:"paper_doc_trashed_details,omitempty"` // PaperDocUnresolveCommentDetails : Unresolved a Paper doc comment. PaperDocUnresolveCommentDetails json.RawMessage `json:"paper_doc_unresolve_comment_details,omitempty"` + // PaperDocUntrashedDetails : Paper doc untrashed. + PaperDocUntrashedDetails json.RawMessage `json:"paper_doc_untrashed_details,omitempty"` // PaperDocViewDetails : Viewed Paper doc. PaperDocViewDetails json.RawMessage `json:"paper_doc_view_details,omitempty"` + // PaperFolderChangeSubscriptionDetails : Followed or unfollowed a Paper + // folder. + PaperFolderChangeSubscriptionDetails json.RawMessage `json:"paper_folder_change_subscription_details,omitempty"` // PaperFolderDeletedDetails : Paper folder archived. PaperFolderDeletedDetails json.RawMessage `json:"paper_folder_deleted_details,omitempty"` // PaperFolderFollowedDetails : Followed a Paper folder. @@ -2632,12 +2653,6 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { TeamActivityCreateReportDetails json.RawMessage `json:"team_activity_create_report_details,omitempty"` // CollectionShareDetails : Shared an album. CollectionShareDetails json.RawMessage `json:"collection_share_details,omitempty"` - // FileAddCommentDetails : Added a file comment. - FileAddCommentDetails json.RawMessage `json:"file_add_comment_details,omitempty"` - // FileLikeCommentDetails : Liked a file comment. - FileLikeCommentDetails json.RawMessage `json:"file_like_comment_details,omitempty"` - // FileUnlikeCommentDetails : Unliked a file comment. - FileUnlikeCommentDetails json.RawMessage `json:"file_unlike_comment_details,omitempty"` // NoteAclInviteOnlyDetails : Changed a Paper document to be // invite-only. NoteAclInviteOnlyDetails json.RawMessage `json:"note_acl_invite_only_details,omitempty"` @@ -2798,10 +2813,10 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { // ShmodelVisibilityTeamOnlyDetails : Made a file/folder visible only to // team members with the link. ShmodelVisibilityTeamOnlyDetails json.RawMessage `json:"shmodel_visibility_team_only_details,omitempty"` - // RemoveLogoutUrlDetails : Removed single sign-on logout URL. - RemoveLogoutUrlDetails json.RawMessage `json:"remove_logout_url_details,omitempty"` - // RemoveSsoUrlDetails : Changed the sign-out URL for SSO. - RemoveSsoUrlDetails json.RawMessage `json:"remove_sso_url_details,omitempty"` + // SsoAddLoginUrlDetails : Added sign-in URL for SSO. + SsoAddLoginUrlDetails json.RawMessage `json:"sso_add_login_url_details,omitempty"` + // SsoAddLogoutUrlDetails : Added sign-out URL for SSO. + SsoAddLogoutUrlDetails json.RawMessage `json:"sso_add_logout_url_details,omitempty"` // SsoChangeCertDetails : Changed the X.509 certificate for SSO. SsoChangeCertDetails json.RawMessage `json:"sso_change_cert_details,omitempty"` // SsoChangeLoginUrlDetails : Changed the sign-in URL for SSO. @@ -2811,6 +2826,10 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { // SsoChangeSamlIdentityModeDetails : Changed the SAML identity mode for // SSO. SsoChangeSamlIdentityModeDetails json.RawMessage `json:"sso_change_saml_identity_mode_details,omitempty"` + // SsoRemoveLoginUrlDetails : Removed the sign-in URL for SSO. + SsoRemoveLoginUrlDetails json.RawMessage `json:"sso_remove_login_url_details,omitempty"` + // SsoRemoveLogoutUrlDetails : Removed single sign-on logout URL. + SsoRemoveLogoutUrlDetails json.RawMessage `json:"sso_remove_logout_url_details,omitempty"` // TeamFolderChangeStatusDetails : Changed the archival status of a team // folder. TeamFolderChangeStatusDetails json.RawMessage `json:"team_folder_change_status_details,omitempty"` @@ -3020,6 +3039,12 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "member_transfer_account_contents_details": err = json.Unmarshal(body, &u.MemberTransferAccountContentsDetails) + if err != nil { + return err + } + case "paper_admin_export_start_details": + err = json.Unmarshal(body, &u.PaperAdminExportStartDetails) + if err != nil { return err } @@ -3092,6 +3117,48 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "app_unlink_user_details": err = json.Unmarshal(body, &u.AppUnlinkUserDetails) + if err != nil { + return err + } + case "file_add_comment_details": + err = json.Unmarshal(body, &u.FileAddCommentDetails) + + if err != nil { + return err + } + case "file_change_comment_subscription_details": + err = json.Unmarshal(body, &u.FileChangeCommentSubscriptionDetails) + + if err != nil { + return err + } + case "file_delete_comment_details": + err = json.Unmarshal(body, &u.FileDeleteCommentDetails) + + if err != nil { + return err + } + case "file_like_comment_details": + err = json.Unmarshal(body, &u.FileLikeCommentDetails) + + if err != nil { + return err + } + case "file_resolve_comment_details": + err = json.Unmarshal(body, &u.FileResolveCommentDetails) + + if err != nil { + return err + } + case "file_unlike_comment_details": + err = json.Unmarshal(body, &u.FileUnlikeCommentDetails) + + if err != nil { + return err + } + case "file_unresolve_comment_details": + err = json.Unmarshal(body, &u.FileUnresolveCommentDetails) + if err != nil { return err } @@ -3422,18 +3489,6 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "group_delete_details": err = json.Unmarshal(body, &u.GroupDeleteDetails) - if err != nil { - return err - } - case "group_description_updated_details": - err = json.Unmarshal(body, &u.GroupDescriptionUpdatedDetails) - - if err != nil { - return err - } - case "group_join_policy_updated_details": - err = json.Unmarshal(body, &u.GroupJoinPolicyUpdatedDetails) - if err != nil { return err } @@ -3566,12 +3621,6 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "paper_content_archive_details": err = json.Unmarshal(body, &u.PaperContentArchiveDetails) - if err != nil { - return err - } - case "paper_content_change_subscription_details": - err = json.Unmarshal(body, &u.PaperContentChangeSubscriptionDetails) - if err != nil { return err } @@ -3626,6 +3675,12 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "paper_doc_change_sharing_policy_details": err = json.Unmarshal(body, &u.PaperDocChangeSharingPolicyDetails) + if err != nil { + return err + } + case "paper_doc_change_subscription_details": + err = json.Unmarshal(body, &u.PaperDocChangeSubscriptionDetails) + if err != nil { return err } @@ -3698,18 +3753,36 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "paper_doc_team_invite_details": err = json.Unmarshal(body, &u.PaperDocTeamInviteDetails) + if err != nil { + return err + } + case "paper_doc_trashed_details": + err = json.Unmarshal(body, &u.PaperDocTrashedDetails) + if err != nil { return err } case "paper_doc_unresolve_comment_details": err = json.Unmarshal(body, &u.PaperDocUnresolveCommentDetails) + if err != nil { + return err + } + case "paper_doc_untrashed_details": + err = json.Unmarshal(body, &u.PaperDocUntrashedDetails) + if err != nil { return err } case "paper_doc_view_details": err = json.Unmarshal(body, &u.PaperDocViewDetails) + if err != nil { + return err + } + case "paper_folder_change_subscription_details": + err = json.Unmarshal(body, &u.PaperFolderChangeSubscriptionDetails) + if err != nil { return err } @@ -3776,24 +3849,6 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "collection_share_details": err = json.Unmarshal(body, &u.CollectionShareDetails) - if err != nil { - return err - } - case "file_add_comment_details": - err = json.Unmarshal(body, &u.FileAddCommentDetails) - - if err != nil { - return err - } - case "file_like_comment_details": - err = json.Unmarshal(body, &u.FileLikeCommentDetails) - - if err != nil { - return err - } - case "file_unlike_comment_details": - err = json.Unmarshal(body, &u.FileUnlikeCommentDetails) - if err != nil { return err } @@ -4169,14 +4224,14 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { if err != nil { return err } - case "remove_logout_url_details": - err = json.Unmarshal(body, &u.RemoveLogoutUrlDetails) + case "sso_add_login_url_details": + err = json.Unmarshal(body, &u.SsoAddLoginUrlDetails) if err != nil { return err } - case "remove_sso_url_details": - err = json.Unmarshal(body, &u.RemoveSsoUrlDetails) + case "sso_add_logout_url_details": + err = json.Unmarshal(body, &u.SsoAddLogoutUrlDetails) if err != nil { return err @@ -4202,6 +4257,18 @@ func (u *EventDetails) UnmarshalJSON(body []byte) error { case "sso_change_saml_identity_mode_details": err = json.Unmarshal(body, &u.SsoChangeSamlIdentityModeDetails) + if err != nil { + return err + } + case "sso_remove_login_url_details": + err = json.Unmarshal(body, &u.SsoRemoveLoginUrlDetails) + + if err != nil { + return err + } + case "sso_remove_logout_url_details": + err = json.Unmarshal(body, &u.SsoRemoveLogoutUrlDetails) + if err != nil { return err } @@ -4568,6 +4635,7 @@ const ( EventTypeMemberPermanentlyDeleteAccountContents = "member_permanently_delete_account_contents" EventTypeMemberSpaceLimitsChangeStatus = "member_space_limits_change_status" EventTypeMemberTransferAccountContents = "member_transfer_account_contents" + EventTypePaperAdminExportStart = "paper_admin_export_start" EventTypePaperEnabledUsersGroupAddition = "paper_enabled_users_group_addition" EventTypePaperEnabledUsersGroupRemoval = "paper_enabled_users_group_removal" EventTypePaperExternalViewAllow = "paper_external_view_allow" @@ -4580,6 +4648,13 @@ const ( EventTypeAppLinkUser = "app_link_user" EventTypeAppUnlinkTeam = "app_unlink_team" EventTypeAppUnlinkUser = "app_unlink_user" + EventTypeFileAddComment = "file_add_comment" + EventTypeFileChangeCommentSubscription = "file_change_comment_subscription" + EventTypeFileDeleteComment = "file_delete_comment" + EventTypeFileLikeComment = "file_like_comment" + EventTypeFileResolveComment = "file_resolve_comment" + EventTypeFileUnlikeComment = "file_unlike_comment" + EventTypeFileUnresolveComment = "file_unresolve_comment" EventTypeDeviceChangeIpDesktop = "device_change_ip_desktop" EventTypeDeviceChangeIpMobile = "device_change_ip_mobile" EventTypeDeviceChangeIpWeb = "device_change_ip_web" @@ -4635,8 +4710,6 @@ const ( EventTypeGroupChangeMemberRole = "group_change_member_role" EventTypeGroupCreate = "group_create" EventTypeGroupDelete = "group_delete" - EventTypeGroupDescriptionUpdated = "group_description_updated" - EventTypeGroupJoinPolicyUpdated = "group_join_policy_updated" EventTypeGroupMoved = "group_moved" EventTypeGroupRemoveExternalId = "group_remove_external_id" EventTypeGroupRemoveMember = "group_remove_member" @@ -4659,7 +4732,6 @@ const ( EventTypePaperContentAddMember = "paper_content_add_member" EventTypePaperContentAddToFolder = "paper_content_add_to_folder" EventTypePaperContentArchive = "paper_content_archive" - EventTypePaperContentChangeSubscription = "paper_content_change_subscription" EventTypePaperContentCreate = "paper_content_create" EventTypePaperContentPermanentlyDelete = "paper_content_permanently_delete" EventTypePaperContentRemoveFromFolder = "paper_content_remove_from_folder" @@ -4669,6 +4741,7 @@ const ( EventTypePaperDocAddComment = "paper_doc_add_comment" EventTypePaperDocChangeMemberRole = "paper_doc_change_member_role" EventTypePaperDocChangeSharingPolicy = "paper_doc_change_sharing_policy" + EventTypePaperDocChangeSubscription = "paper_doc_change_subscription" EventTypePaperDocDeleted = "paper_doc_deleted" EventTypePaperDocDeleteComment = "paper_doc_delete_comment" EventTypePaperDocDownload = "paper_doc_download" @@ -4681,8 +4754,11 @@ const ( EventTypePaperDocRevert = "paper_doc_revert" EventTypePaperDocSlackShare = "paper_doc_slack_share" EventTypePaperDocTeamInvite = "paper_doc_team_invite" + EventTypePaperDocTrashed = "paper_doc_trashed" EventTypePaperDocUnresolveComment = "paper_doc_unresolve_comment" + EventTypePaperDocUntrashed = "paper_doc_untrashed" EventTypePaperDocView = "paper_doc_view" + EventTypePaperFolderChangeSubscription = "paper_folder_change_subscription" EventTypePaperFolderDeleted = "paper_folder_deleted" EventTypePaperFolderFollowed = "paper_folder_followed" EventTypePaperFolderTeamInvite = "paper_folder_team_invite" @@ -4694,9 +4770,6 @@ const ( EventTypeSmartSyncCreateAdminPrivilegeReport = "smart_sync_create_admin_privilege_report" EventTypeTeamActivityCreateReport = "team_activity_create_report" EventTypeCollectionShare = "collection_share" - EventTypeFileAddComment = "file_add_comment" - EventTypeFileLikeComment = "file_like_comment" - EventTypeFileUnlikeComment = "file_unlike_comment" EventTypeNoteAclInviteOnly = "note_acl_invite_only" EventTypeNoteAclLink = "note_acl_link" EventTypeNoteAclTeamLink = "note_acl_team_link" @@ -4759,12 +4832,14 @@ const ( EventTypeShmodelVisibilityPassword = "shmodel_visibility_password" EventTypeShmodelVisibilityPublic = "shmodel_visibility_public" EventTypeShmodelVisibilityTeamOnly = "shmodel_visibility_team_only" - EventTypeRemoveLogoutUrl = "remove_logout_url" - EventTypeRemoveSsoUrl = "remove_sso_url" + EventTypeSsoAddLoginUrl = "sso_add_login_url" + EventTypeSsoAddLogoutUrl = "sso_add_logout_url" EventTypeSsoChangeCert = "sso_change_cert" EventTypeSsoChangeLoginUrl = "sso_change_login_url" EventTypeSsoChangeLogoutUrl = "sso_change_logout_url" EventTypeSsoChangeSamlIdentityMode = "sso_change_saml_identity_mode" + EventTypeSsoRemoveLoginUrl = "sso_remove_login_url" + EventTypeSsoRemoveLogoutUrl = "sso_remove_logout_url" EventTypeTeamFolderChangeStatus = "team_folder_change_status" EventTypeTeamFolderCreate = "team_folder_create" EventTypeTeamFolderDowngrade = "team_folder_downgrade" @@ -4849,9 +4924,10 @@ type ExtendedVersionHistoryPolicy struct { // Valid tag values for ExtendedVersionHistoryPolicy const ( - ExtendedVersionHistoryPolicyLimited = "limited" - ExtendedVersionHistoryPolicyUnlimited = "unlimited" - ExtendedVersionHistoryPolicyOther = "other" + ExtendedVersionHistoryPolicyExplicitlyLimited = "explicitly_limited" + ExtendedVersionHistoryPolicyExplicitlyUnlimited = "explicitly_unlimited" + ExtendedVersionHistoryPolicyImplicitlyLimited = "implicitly_limited" + ExtendedVersionHistoryPolicyOther = "other" ) // FailureDetailsLogInfo : Provides details about a failure @@ -4872,16 +4948,16 @@ func NewFailureDetailsLogInfo() *FailureDetailsLogInfo { // FileAddCommentDetails : Added a file comment. type FileAddCommentDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // CommentText : Comment text. Might be missing due to historical data gap. CommentText string `json:"comment_text,omitempty"` } // NewFileAddCommentDetails returns a new FileAddCommentDetails instance -func NewFileAddCommentDetails(TargetIndex int64) *FileAddCommentDetails { +func NewFileAddCommentDetails(TargetAssetIndex uint64) *FileAddCommentDetails { s := new(FileAddCommentDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -4895,6 +4971,38 @@ func NewFileAddDetails() *FileAddDetails { return s } +// FileChangeCommentSubscriptionDetails : Subscribed to or unsubscribed from +// comment notifications for file. +type FileChangeCommentSubscriptionDetails struct { + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` + // NewValue : New file comment subscription. + NewValue *FileCommentNotificationPolicy `json:"new_value"` + // PreviousValue : Previous file comment subscription. Might be missing due + // to historical data gap. + PreviousValue *FileCommentNotificationPolicy `json:"previous_value,omitempty"` +} + +// NewFileChangeCommentSubscriptionDetails returns a new FileChangeCommentSubscriptionDetails instance +func NewFileChangeCommentSubscriptionDetails(TargetAssetIndex uint64, NewValue *FileCommentNotificationPolicy) *FileChangeCommentSubscriptionDetails { + s := new(FileChangeCommentSubscriptionDetails) + s.TargetAssetIndex = TargetAssetIndex + s.NewValue = NewValue + return s +} + +// FileCommentNotificationPolicy : Enable or disable file comments notifications +type FileCommentNotificationPolicy struct { + dropbox.Tagged +} + +// Valid tag values for FileCommentNotificationPolicy +const ( + FileCommentNotificationPolicyDisabled = "disabled" + FileCommentNotificationPolicyEnabled = "enabled" + FileCommentNotificationPolicyOther = "other" +) + // FileCommentsChangePolicyDetails : Enabled or disabled commenting on team // files. type FileCommentsChangePolicyDetails struct { @@ -4937,6 +5045,21 @@ func NewFileCopyDetails(RelocateActionDetails []*RelocateAssetReferencesLogInfo) return s } +// FileDeleteCommentDetails : Deleted a file comment. +type FileDeleteCommentDetails struct { + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` + // CommentText : Comment text. Might be missing due to historical data gap. + CommentText string `json:"comment_text,omitempty"` +} + +// NewFileDeleteCommentDetails returns a new FileDeleteCommentDetails instance +func NewFileDeleteCommentDetails(TargetAssetIndex uint64) *FileDeleteCommentDetails { + s := new(FileDeleteCommentDetails) + s.TargetAssetIndex = TargetAssetIndex + return s +} + // FileDeleteDetails : Deleted files and/or folders. type FileDeleteDetails struct { } @@ -4979,16 +5102,16 @@ func NewFileGetCopyReferenceDetails() *FileGetCopyReferenceDetails { // FileLikeCommentDetails : Liked a file comment. type FileLikeCommentDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // CommentText : Comment text. Might be missing due to historical data gap. CommentText string `json:"comment_text,omitempty"` } // NewFileLikeCommentDetails returns a new FileLikeCommentDetails instance -func NewFileLikeCommentDetails(TargetIndex int64) *FileLikeCommentDetails { +func NewFileLikeCommentDetails(TargetAssetIndex uint64) *FileLikeCommentDetails { s := new(FileLikeCommentDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -5070,80 +5193,74 @@ func NewFileRenameDetails(RelocateActionDetails []*RelocateAssetReferencesLogInf // FileRequestAddDeadlineDetails : Added a deadline to a file request. type FileRequestAddDeadlineDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` } // NewFileRequestAddDeadlineDetails returns a new FileRequestAddDeadlineDetails instance -func NewFileRequestAddDeadlineDetails(RequestTitle string) *FileRequestAddDeadlineDetails { +func NewFileRequestAddDeadlineDetails() *FileRequestAddDeadlineDetails { s := new(FileRequestAddDeadlineDetails) - s.RequestTitle = RequestTitle return s } // FileRequestChangeFolderDetails : Changed the file request folder. type FileRequestChangeFolderDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` } // NewFileRequestChangeFolderDetails returns a new FileRequestChangeFolderDetails instance -func NewFileRequestChangeFolderDetails(RequestTitle string) *FileRequestChangeFolderDetails { +func NewFileRequestChangeFolderDetails() *FileRequestChangeFolderDetails { s := new(FileRequestChangeFolderDetails) - s.RequestTitle = RequestTitle return s } // FileRequestChangeTitleDetails : Change the file request title. type FileRequestChangeTitleDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` } // NewFileRequestChangeTitleDetails returns a new FileRequestChangeTitleDetails instance -func NewFileRequestChangeTitleDetails(RequestTitle string) *FileRequestChangeTitleDetails { +func NewFileRequestChangeTitleDetails() *FileRequestChangeTitleDetails { s := new(FileRequestChangeTitleDetails) - s.RequestTitle = RequestTitle return s } // FileRequestCloseDetails : Closed a file request. type FileRequestCloseDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` } // NewFileRequestCloseDetails returns a new FileRequestCloseDetails instance -func NewFileRequestCloseDetails(RequestTitle string) *FileRequestCloseDetails { +func NewFileRequestCloseDetails() *FileRequestCloseDetails { s := new(FileRequestCloseDetails) - s.RequestTitle = RequestTitle return s } // FileRequestCreateDetails : Created a file request. type FileRequestCreateDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` } // NewFileRequestCreateDetails returns a new FileRequestCreateDetails instance -func NewFileRequestCreateDetails(RequestTitle string) *FileRequestCreateDetails { +func NewFileRequestCreateDetails() *FileRequestCreateDetails { s := new(FileRequestCreateDetails) - s.RequestTitle = RequestTitle return s } // FileRequestReceiveFileDetails : Received files for a file request. type FileRequestReceiveFileDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` // SubmittedFileNames : Submitted file names. SubmittedFileNames []string `json:"submitted_file_names"` } // NewFileRequestReceiveFileDetails returns a new FileRequestReceiveFileDetails instance -func NewFileRequestReceiveFileDetails(RequestTitle string, SubmittedFileNames []string) *FileRequestReceiveFileDetails { +func NewFileRequestReceiveFileDetails(SubmittedFileNames []string) *FileRequestReceiveFileDetails { s := new(FileRequestReceiveFileDetails) - s.RequestTitle = RequestTitle s.SubmittedFileNames = SubmittedFileNames return s } @@ -5151,26 +5268,24 @@ func NewFileRequestReceiveFileDetails(RequestTitle string, SubmittedFileNames [] // FileRequestRemoveDeadlineDetails : Removed the file request deadline. type FileRequestRemoveDeadlineDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` } // NewFileRequestRemoveDeadlineDetails returns a new FileRequestRemoveDeadlineDetails instance -func NewFileRequestRemoveDeadlineDetails(RequestTitle string) *FileRequestRemoveDeadlineDetails { +func NewFileRequestRemoveDeadlineDetails() *FileRequestRemoveDeadlineDetails { s := new(FileRequestRemoveDeadlineDetails) - s.RequestTitle = RequestTitle return s } // FileRequestSendDetails : Sent file request to users via email. type FileRequestSendDetails struct { // RequestTitle : File request title. - RequestTitle string `json:"request_title"` + RequestTitle string `json:"request_title,omitempty"` } // NewFileRequestSendDetails returns a new FileRequestSendDetails instance -func NewFileRequestSendDetails(RequestTitle string) *FileRequestSendDetails { +func NewFileRequestSendDetails() *FileRequestSendDetails { s := new(FileRequestSendDetails) - s.RequestTitle = RequestTitle return s } @@ -5223,6 +5338,21 @@ const ( FileRequestsPolicyOther = "other" ) +// FileResolveCommentDetails : Resolved a file comment. +type FileResolveCommentDetails struct { + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` + // CommentText : Comment text. Might be missing due to historical data gap. + CommentText string `json:"comment_text,omitempty"` +} + +// NewFileResolveCommentDetails returns a new FileResolveCommentDetails instance +func NewFileResolveCommentDetails(TargetAssetIndex uint64) *FileResolveCommentDetails { + s := new(FileResolveCommentDetails) + s.TargetAssetIndex = TargetAssetIndex + return s +} + // FileRestoreDetails : Restored deleted files and/or folders. type FileRestoreDetails struct { } @@ -5268,16 +5398,31 @@ func NewFileSaveCopyReferenceDetails(RelocateActionDetails []*RelocateAssetRefer // FileUnlikeCommentDetails : Unliked a file comment. type FileUnlikeCommentDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // CommentText : Comment text. Might be missing due to historical data gap. CommentText string `json:"comment_text,omitempty"` } // NewFileUnlikeCommentDetails returns a new FileUnlikeCommentDetails instance -func NewFileUnlikeCommentDetails(TargetIndex int64) *FileUnlikeCommentDetails { +func NewFileUnlikeCommentDetails(TargetAssetIndex uint64) *FileUnlikeCommentDetails { s := new(FileUnlikeCommentDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex + return s +} + +// FileUnresolveCommentDetails : Unresolved a file comment. +type FileUnresolveCommentDetails struct { + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` + // CommentText : Comment text. Might be missing due to historical data gap. + CommentText string `json:"comment_text,omitempty"` +} + +// NewFileUnresolveCommentDetails returns a new FileUnresolveCommentDetails instance +func NewFileUnresolveCommentDetails(TargetAssetIndex uint64) *FileUnresolveCommentDetails { + s := new(FileUnresolveCommentDetails) + s.TargetAssetIndex = TargetAssetIndex return s } @@ -5465,14 +5610,14 @@ func NewGroupChangeExternalIdDetails(NewValue string, PreviousValue string) *Gro // GroupChangeManagementTypeDetails : Changed group management type. type GroupChangeManagementTypeDetails struct { // NewValue : New group management type. - NewValue *GroupManagementType `json:"new_value"` + NewValue *team_common.GroupManagementType `json:"new_value"` // PreviousValue : Previous group management type. Might be missing due to // historical data gap. - PreviousValue *GroupManagementType `json:"previous_value,omitempty"` + PreviousValue *team_common.GroupManagementType `json:"previous_value,omitempty"` } // NewGroupChangeManagementTypeDetails returns a new GroupChangeManagementTypeDetails instance -func NewGroupChangeManagementTypeDetails(NewValue *GroupManagementType) *GroupChangeManagementTypeDetails { +func NewGroupChangeManagementTypeDetails(NewValue *team_common.GroupManagementType) *GroupChangeManagementTypeDetails { s := new(GroupChangeManagementTypeDetails) s.NewValue = NewValue return s @@ -5521,16 +5666,6 @@ func NewGroupDeleteDetails() *GroupDeleteDetails { return s } -// GroupDescriptionUpdatedDetails : Updated a group. -type GroupDescriptionUpdatedDetails struct { -} - -// NewGroupDescriptionUpdatedDetails returns a new GroupDescriptionUpdatedDetails instance -func NewGroupDescriptionUpdatedDetails() *GroupDescriptionUpdatedDetails { - s := new(GroupDescriptionUpdatedDetails) - return s -} - // GroupJoinPolicy : has no documentation (yet) type GroupJoinPolicy struct { dropbox.Tagged @@ -5543,22 +5678,6 @@ const ( GroupJoinPolicyOther = "other" ) -// GroupJoinPolicyUpdatedDetails : Updated a group join policy. -type GroupJoinPolicyUpdatedDetails struct { - // IsAdminManaged : Is admin managed group. Might be missing due to - // historical data gap. - IsAdminManaged bool `json:"is_admin_managed,omitempty"` - // JoinPolicy : Group join policy. - JoinPolicy *GroupJoinPolicy `json:"join_policy"` -} - -// NewGroupJoinPolicyUpdatedDetails returns a new GroupJoinPolicyUpdatedDetails instance -func NewGroupJoinPolicyUpdatedDetails(JoinPolicy *GroupJoinPolicy) *GroupJoinPolicyUpdatedDetails { - s := new(GroupJoinPolicyUpdatedDetails) - s.JoinPolicy = JoinPolicy - return s -} - // GroupLogInfo : Group's logged information. type GroupLogInfo struct { // GroupId : The unique id of this group. Might be missing due to historical @@ -5578,18 +5697,6 @@ func NewGroupLogInfo(DisplayName string) *GroupLogInfo { return s } -// GroupManagementType : has no documentation (yet) -type GroupManagementType struct { - dropbox.Tagged -} - -// Valid tag values for GroupManagementType -const ( - GroupManagementTypeAdminManagementGroup = "admin_management_group" - GroupManagementTypeMemberManagementGroup = "member_management_group" - GroupManagementTypeOther = "other" -) - // GroupMovedDetails : Moved a group. type GroupMovedDetails struct { } @@ -5627,12 +5734,15 @@ func NewGroupRemoveMemberDetails() *GroupRemoveMemberDetails { type GroupRenameDetails struct { // PreviousValue : Previous display name. PreviousValue string `json:"previous_value"` + // NewValue : New display name. + NewValue string `json:"new_value"` } // NewGroupRenameDetails returns a new GroupRenameDetails instance -func NewGroupRenameDetails(PreviousValue string) *GroupRenameDetails { +func NewGroupRenameDetails(PreviousValue string, NewValue string) *GroupRenameDetails { s := new(GroupRenameDetails) s.PreviousValue = PreviousValue + s.NewValue = NewValue return s } @@ -5659,8 +5769,8 @@ type GroupUserManagementPolicy struct { // Valid tag values for GroupUserManagementPolicy const ( + GroupUserManagementPolicyAdminsOnly = "admins_only" GroupUserManagementPolicyAllUsers = "all_users" - GroupUserManagementPolicyOnlyAdmins = "only_admins" GroupUserManagementPolicyOther = "other" ) @@ -5789,15 +5899,15 @@ func NewMemberChangeMembershipTypeDetails(PrevValue *TeamMembershipType, NewValu type MemberChangeNameDetails struct { // NewValue : New user's name. NewValue *UserNameLogInfo `json:"new_value"` - // PreviousValue : Previous user's name. - PreviousValue *UserNameLogInfo `json:"previous_value"` + // PreviousValue : Previous user's name. Might be missing due to historical + // data gap. + PreviousValue *UserNameLogInfo `json:"previous_value,omitempty"` } // NewMemberChangeNameDetails returns a new MemberChangeNameDetails instance -func NewMemberChangeNameDetails(NewValue *UserNameLogInfo, PreviousValue *UserNameLogInfo) *MemberChangeNameDetails { +func NewMemberChangeNameDetails(NewValue *UserNameLogInfo) *MemberChangeNameDetails { s := new(MemberChangeNameDetails) s.NewValue = NewValue - s.PreviousValue = PreviousValue return s } @@ -5855,9 +5965,9 @@ type MemberRequestsPolicy struct { // Valid tag values for MemberRequestsPolicy const ( + MemberRequestsPolicyAutoAccept = "auto_accept" MemberRequestsPolicyDisabled = "disabled" MemberRequestsPolicyRequireApproval = "require_approval" - MemberRequestsPolicyAutoApproval = "auto_approval" MemberRequestsPolicyOther = "other" ) @@ -5974,17 +6084,19 @@ const ( // MemberTransferAccountContentsDetails : Transferred contents of a removed team // member account to another member. type MemberTransferAccountContentsDetails struct { - // SrcIndex : Source asset index. - SrcIndex int64 `json:"src_index"` - // DestIndex : Destination asset index. - DestIndex int64 `json:"dest_index"` + // SrcParticipantIndex : Source participant position in the Participants + // list. + SrcParticipantIndex uint64 `json:"src_participant_index"` + // DestParticipantIndex : Destination participant position in the + // Participants list. + DestParticipantIndex uint64 `json:"dest_participant_index"` } // NewMemberTransferAccountContentsDetails returns a new MemberTransferAccountContentsDetails instance -func NewMemberTransferAccountContentsDetails(SrcIndex int64, DestIndex int64) *MemberTransferAccountContentsDetails { +func NewMemberTransferAccountContentsDetails(SrcParticipantIndex uint64, DestParticipantIndex uint64) *MemberTransferAccountContentsDetails { s := new(MemberTransferAccountContentsDetails) - s.SrcIndex = SrcIndex - s.DestIndex = DestIndex + s.SrcParticipantIndex = SrcParticipantIndex + s.DestParticipantIndex = DestParticipantIndex return s } @@ -6273,18 +6385,28 @@ const ( PaperAccessTypeOther = "other" ) +// PaperAdminExportStartDetails : Exported all Paper documents in the team. +type PaperAdminExportStartDetails struct { +} + +// NewPaperAdminExportStartDetails returns a new PaperAdminExportStartDetails instance +func NewPaperAdminExportStartDetails() *PaperAdminExportStartDetails { + s := new(PaperAdminExportStartDetails) + return s +} + // PaperChangeDeploymentPolicyDetails : Changed whether Dropbox Paper, when // enabled, is deployed to all teams or to specific members of the team. type PaperChangeDeploymentPolicyDetails struct { // NewValue : New Dropbox Paper deployment policy. - NewValue *PaperDeploymentPolicy `json:"new_value"` + NewValue *team_policies.PaperDeploymentPolicy `json:"new_value"` // PreviousValue : Previous Dropbox Paper deployment policy. Might be // missing due to historical data gap. - PreviousValue *PaperDeploymentPolicy `json:"previous_value,omitempty"` + PreviousValue *team_policies.PaperDeploymentPolicy `json:"previous_value,omitempty"` } // NewPaperChangeDeploymentPolicyDetails returns a new PaperChangeDeploymentPolicyDetails instance -func NewPaperChangeDeploymentPolicyDetails(NewValue *PaperDeploymentPolicy) *PaperChangeDeploymentPolicyDetails { +func NewPaperChangeDeploymentPolicyDetails(NewValue *team_policies.PaperDeploymentPolicy) *PaperChangeDeploymentPolicyDetails { s := new(PaperChangeDeploymentPolicyDetails) s.NewValue = NewValue return s @@ -6311,14 +6433,14 @@ func NewPaperChangeMemberPolicyDetails(NewValue *PaperMemberPolicy) *PaperChange // PaperChangePolicyDetails : Enabled or disabled Dropbox Paper for the team. type PaperChangePolicyDetails struct { // NewValue : New Dropbox Paper policy. - NewValue *PaperPolicy `json:"new_value"` + NewValue *team_policies.PaperEnabledPolicy `json:"new_value"` // PreviousValue : Previous Dropbox Paper policy. Might be missing due to // historical data gap. - PreviousValue *PaperPolicy `json:"previous_value,omitempty"` + PreviousValue *team_policies.PaperEnabledPolicy `json:"previous_value,omitempty"` } // NewPaperChangePolicyDetails returns a new PaperChangePolicyDetails instance -func NewPaperChangePolicyDetails(NewValue *PaperPolicy) *PaperChangePolicyDetails { +func NewPaperChangePolicyDetails(NewValue *team_policies.PaperEnabledPolicy) *PaperChangePolicyDetails { s := new(PaperChangePolicyDetails) s.NewValue = NewValue return s @@ -6342,18 +6464,18 @@ func NewPaperContentAddMemberDetails(EventUuid string) *PaperContentAddMemberDet type PaperContentAddToFolderDetails struct { // EventUuid : Event unique identifier. EventUuid string `json:"event_uuid"` - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` - // ParentIndex : Parent asset index. - ParentIndex int64 `json:"parent_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` + // ParentAssetIndex : Parent asset position in the Assets list. + ParentAssetIndex uint64 `json:"parent_asset_index"` } // NewPaperContentAddToFolderDetails returns a new PaperContentAddToFolderDetails instance -func NewPaperContentAddToFolderDetails(EventUuid string, TargetIndex int64, ParentIndex int64) *PaperContentAddToFolderDetails { +func NewPaperContentAddToFolderDetails(EventUuid string, TargetAssetIndex uint64, ParentAssetIndex uint64) *PaperContentAddToFolderDetails { s := new(PaperContentAddToFolderDetails) s.EventUuid = EventUuid - s.TargetIndex = TargetIndex - s.ParentIndex = ParentIndex + s.TargetAssetIndex = TargetAssetIndex + s.ParentAssetIndex = ParentAssetIndex return s } @@ -6370,26 +6492,6 @@ func NewPaperContentArchiveDetails(EventUuid string) *PaperContentArchiveDetails return s } -// PaperContentChangeSubscriptionDetails : Followed or unfollowed a Paper doc or -// folder. -type PaperContentChangeSubscriptionDetails struct { - // EventUuid : Event unique identifier. - EventUuid string `json:"event_uuid"` - // NewSubscriptionLevel : New subscription level. - NewSubscriptionLevel *PaperTaggedValue `json:"new_subscription_level"` - // PreviousSubscriptionLevel : Previous subscription level. Might be missing - // due to historical data gap. - PreviousSubscriptionLevel *PaperTaggedValue `json:"previous_subscription_level,omitempty"` -} - -// NewPaperContentChangeSubscriptionDetails returns a new PaperContentChangeSubscriptionDetails instance -func NewPaperContentChangeSubscriptionDetails(EventUuid string, NewSubscriptionLevel *PaperTaggedValue) *PaperContentChangeSubscriptionDetails { - s := new(PaperContentChangeSubscriptionDetails) - s.EventUuid = EventUuid - s.NewSubscriptionLevel = NewSubscriptionLevel - return s -} - // PaperContentCreateDetails : Created a Paper doc or folder. type PaperContentCreateDetails struct { // EventUuid : Event unique identifier. @@ -6471,18 +6573,6 @@ func NewPaperContentRestoreDetails(EventUuid string) *PaperContentRestoreDetails return s } -// PaperDeploymentPolicy : has no documentation (yet) -type PaperDeploymentPolicy struct { - dropbox.Tagged -} - -// Valid tag values for PaperDeploymentPolicy -const ( - PaperDeploymentPolicyPartial = "partial" - PaperDeploymentPolicyFull = "full" - PaperDeploymentPolicyOther = "other" -) - // PaperDocAddCommentDetails : Added a Paper doc comment. type PaperDocAddCommentDetails struct { // EventUuid : Event unique identifier. @@ -6535,6 +6625,25 @@ func NewPaperDocChangeSharingPolicyDetails(EventUuid string) *PaperDocChangeShar return s } +// PaperDocChangeSubscriptionDetails : Followed or unfollowed a Paper doc. +type PaperDocChangeSubscriptionDetails struct { + // EventUuid : Event unique identifier. + EventUuid string `json:"event_uuid"` + // NewSubscriptionLevel : New doc subscription level. + NewSubscriptionLevel string `json:"new_subscription_level"` + // PreviousSubscriptionLevel : Previous doc subscription level. Might be + // missing due to historical data gap. + PreviousSubscriptionLevel string `json:"previous_subscription_level,omitempty"` +} + +// NewPaperDocChangeSubscriptionDetails returns a new PaperDocChangeSubscriptionDetails instance +func NewPaperDocChangeSubscriptionDetails(EventUuid string, NewSubscriptionLevel string) *PaperDocChangeSubscriptionDetails { + s := new(PaperDocChangeSubscriptionDetails) + s.EventUuid = EventUuid + s.NewSubscriptionLevel = NewSubscriptionLevel + return s +} + // PaperDocDeleteCommentDetails : Deleted a Paper doc comment. type PaperDocDeleteCommentDetails struct { // EventUuid : Event unique identifier. @@ -6701,6 +6810,19 @@ func NewPaperDocTeamInviteDetails(EventUuid string) *PaperDocTeamInviteDetails { return s } +// PaperDocTrashedDetails : Paper doc trashed. +type PaperDocTrashedDetails struct { + // EventUuid : Event unique identifier. + EventUuid string `json:"event_uuid"` +} + +// NewPaperDocTrashedDetails returns a new PaperDocTrashedDetails instance +func NewPaperDocTrashedDetails(EventUuid string) *PaperDocTrashedDetails { + s := new(PaperDocTrashedDetails) + s.EventUuid = EventUuid + return s +} + // PaperDocUnresolveCommentDetails : Unresolved a Paper doc comment. type PaperDocUnresolveCommentDetails struct { // EventUuid : Event unique identifier. @@ -6716,6 +6838,19 @@ func NewPaperDocUnresolveCommentDetails(EventUuid string) *PaperDocUnresolveComm return s } +// PaperDocUntrashedDetails : Paper doc untrashed. +type PaperDocUntrashedDetails struct { + // EventUuid : Event unique identifier. + EventUuid string `json:"event_uuid"` +} + +// NewPaperDocUntrashedDetails returns a new PaperDocUntrashedDetails instance +func NewPaperDocUntrashedDetails(EventUuid string) *PaperDocUntrashedDetails { + s := new(PaperDocUntrashedDetails) + s.EventUuid = EventUuid + return s +} + // PaperDocViewDetails : Viewed Paper doc. type PaperDocViewDetails struct { // EventUuid : Event unique identifier. @@ -6813,6 +6948,25 @@ func NewPaperExternalViewForbidDetails() *PaperExternalViewForbidDetails { return s } +// PaperFolderChangeSubscriptionDetails : Followed or unfollowed a Paper folder. +type PaperFolderChangeSubscriptionDetails struct { + // EventUuid : Event unique identifier. + EventUuid string `json:"event_uuid"` + // NewSubscriptionLevel : New folder subscription level. + NewSubscriptionLevel string `json:"new_subscription_level"` + // PreviousSubscriptionLevel : Previous folder subscription level. Might be + // missing due to historical data gap. + PreviousSubscriptionLevel string `json:"previous_subscription_level,omitempty"` +} + +// NewPaperFolderChangeSubscriptionDetails returns a new PaperFolderChangeSubscriptionDetails instance +func NewPaperFolderChangeSubscriptionDetails(EventUuid string, NewSubscriptionLevel string) *PaperFolderChangeSubscriptionDetails { + s := new(PaperFolderChangeSubscriptionDetails) + s.EventUuid = EventUuid + s.NewSubscriptionLevel = NewSubscriptionLevel + return s +} + // PaperFolderDeletedDetails : Paper folder archived. type PaperFolderDeletedDetails struct { // EventUuid : Event unique identifier. @@ -6876,37 +7030,12 @@ type PaperMemberPolicy struct { // Valid tag values for PaperMemberPolicy const ( - PaperMemberPolicyTeamOnly = "team_only" - PaperMemberPolicyDefaultTeamOnly = "default_team_only" - PaperMemberPolicyDefaultAnyone = "default_anyone" - PaperMemberPolicyOther = "other" + PaperMemberPolicyAnyoneWithLink = "anyone_with_link" + PaperMemberPolicyOnlyTeam = "only_team" + PaperMemberPolicyTeamAndExplicitlyShared = "team_and_explicitly_shared" + PaperMemberPolicyOther = "other" ) -// PaperPolicy : Policy for enabling or disabling Dropbox Paper for the team. -type PaperPolicy struct { - dropbox.Tagged -} - -// Valid tag values for PaperPolicy -const ( - PaperPolicyDisabled = "disabled" - PaperPolicyEnabled = "enabled" - PaperPolicyOther = "other" -) - -// PaperTaggedValue : Paper tagged value. -type PaperTaggedValue struct { - // Tag : Tag. - Tag string `json:"tag"` -} - -// NewPaperTaggedValue returns a new PaperTaggedValue instance -func NewPaperTaggedValue(Tag string) *PaperTaggedValue { - s := new(PaperTaggedValue) - s.Tag = Tag - return s -} - // ParticipantLogInfo : A user or group type ParticipantLogInfo struct { dropbox.Tagged @@ -7057,46 +7186,17 @@ const ( // RelocateAssetReferencesLogInfo : Provides the indices of the source asset and // the destination asset for a relocate action. type RelocateAssetReferencesLogInfo struct { - // SrcIndex : Source asset index. - SrcIndex int64 `json:"src_index"` - // DestIndex : Destination asset index. - DestIndex int64 `json:"dest_index"` + // SrcAssetIndex : Source asset position in the Assets list. + SrcAssetIndex uint64 `json:"src_asset_index"` + // DestAssetIndex : Destination asset position in the Assets list. + DestAssetIndex uint64 `json:"dest_asset_index"` } // NewRelocateAssetReferencesLogInfo returns a new RelocateAssetReferencesLogInfo instance -func NewRelocateAssetReferencesLogInfo(SrcIndex int64, DestIndex int64) *RelocateAssetReferencesLogInfo { +func NewRelocateAssetReferencesLogInfo(SrcAssetIndex uint64, DestAssetIndex uint64) *RelocateAssetReferencesLogInfo { s := new(RelocateAssetReferencesLogInfo) - s.SrcIndex = SrcIndex - s.DestIndex = DestIndex - return s -} - -// RemoveLogoutUrlDetails : Removed single sign-on logout URL. -type RemoveLogoutUrlDetails struct { - // PreviousValue : Previous single sign-on logout URL. - PreviousValue string `json:"previous_value"` - // NewValue : New single sign-on logout URL. Might be missing due to - // historical data gap. - NewValue string `json:"new_value,omitempty"` -} - -// NewRemoveLogoutUrlDetails returns a new RemoveLogoutUrlDetails instance -func NewRemoveLogoutUrlDetails(PreviousValue string) *RemoveLogoutUrlDetails { - s := new(RemoveLogoutUrlDetails) - s.PreviousValue = PreviousValue - return s -} - -// RemoveSsoUrlDetails : Changed the sign-out URL for SSO. -type RemoveSsoUrlDetails struct { - // PreviousValue : Previous single sign-on logout URL. - PreviousValue string `json:"previous_value"` -} - -// NewRemoveSsoUrlDetails returns a new RemoveSsoUrlDetails instance -func NewRemoveSsoUrlDetails(PreviousValue string) *RemoveSsoUrlDetails { - s := new(RemoveSsoUrlDetails) - s.PreviousValue = PreviousValue + s.SrcAssetIndex = SrcAssetIndex + s.DestAssetIndex = DestAssetIndex return s } @@ -7138,8 +7238,8 @@ func NewResellerSupportSessionStartDetails() *ResellerSupportSessionStartDetails // SfAddGroupDetails : Added the team to a shared folder. type SfAddGroupDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // SharingPermission : Sharing permission. Might be missing due to @@ -7150,9 +7250,9 @@ type SfAddGroupDetails struct { } // NewSfAddGroupDetails returns a new SfAddGroupDetails instance -func NewSfAddGroupDetails(TargetIndex int64, OriginalFolderName string, TeamName string) *SfAddGroupDetails { +func NewSfAddGroupDetails(TargetAssetIndex uint64, OriginalFolderName string, TeamName string) *SfAddGroupDetails { s := new(SfAddGroupDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName s.TeamName = TeamName return s @@ -7161,8 +7261,8 @@ func NewSfAddGroupDetails(TargetIndex int64, OriginalFolderName string, TeamName // SfAllowNonMembersToViewSharedLinksDetails : Allowed non collaborators to view // links to files in a shared folder. type SfAllowNonMembersToViewSharedLinksDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7171,9 +7271,9 @@ type SfAllowNonMembersToViewSharedLinksDetails struct { } // NewSfAllowNonMembersToViewSharedLinksDetails returns a new SfAllowNonMembersToViewSharedLinksDetails instance -func NewSfAllowNonMembersToViewSharedLinksDetails(TargetIndex int64, OriginalFolderName string) *SfAllowNonMembersToViewSharedLinksDetails { +func NewSfAllowNonMembersToViewSharedLinksDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfAllowNonMembersToViewSharedLinksDetails { s := new(SfAllowNonMembersToViewSharedLinksDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7191,21 +7291,21 @@ func NewSfExternalInviteWarnDetails() *SfExternalInviteWarnDetails { // SfInviteGroupDetails : Invited a group to a shared folder. type SfInviteGroupDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` } // NewSfInviteGroupDetails returns a new SfInviteGroupDetails instance -func NewSfInviteGroupDetails(TargetIndex int64) *SfInviteGroupDetails { +func NewSfInviteGroupDetails(TargetAssetIndex uint64) *SfInviteGroupDetails { s := new(SfInviteGroupDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SfNestDetails : Changed parent of shared folder. type SfNestDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // PrevParentNsId : Previous parent namespace ID. Might be missing due to @@ -7217,9 +7317,9 @@ type SfNestDetails struct { } // NewSfNestDetails returns a new SfNestDetails instance -func NewSfNestDetails(TargetIndex int64, OriginalFolderName string) *SfNestDetails { +func NewSfNestDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfNestDetails { s := new(SfNestDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7227,32 +7327,32 @@ func NewSfNestDetails(TargetIndex int64, OriginalFolderName string) *SfNestDetai // SfTeamDeclineDetails : Declined a team member's invitation to a shared // folder. type SfTeamDeclineDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSfTeamDeclineDetails returns a new SfTeamDeclineDetails instance -func NewSfTeamDeclineDetails(TargetIndex int64, OriginalFolderName string) *SfTeamDeclineDetails { +func NewSfTeamDeclineDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfTeamDeclineDetails { s := new(SfTeamDeclineDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } // SfTeamGrantAccessDetails : Granted access to a shared folder. type SfTeamGrantAccessDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSfTeamGrantAccessDetails returns a new SfTeamGrantAccessDetails instance -func NewSfTeamGrantAccessDetails(TargetIndex int64, OriginalFolderName string) *SfTeamGrantAccessDetails { +func NewSfTeamGrantAccessDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfTeamGrantAccessDetails { s := new(SfTeamGrantAccessDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7260,8 +7360,8 @@ func NewSfTeamGrantAccessDetails(TargetIndex int64, OriginalFolderName string) * // SfTeamInviteChangeRoleDetails : Changed a team member's role in a shared // folder. type SfTeamInviteChangeRoleDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // NewSharingPermission : New sharing permission. Might be missing due to @@ -7273,17 +7373,17 @@ type SfTeamInviteChangeRoleDetails struct { } // NewSfTeamInviteChangeRoleDetails returns a new SfTeamInviteChangeRoleDetails instance -func NewSfTeamInviteChangeRoleDetails(TargetIndex int64, OriginalFolderName string) *SfTeamInviteChangeRoleDetails { +func NewSfTeamInviteChangeRoleDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfTeamInviteChangeRoleDetails { s := new(SfTeamInviteChangeRoleDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } // SfTeamInviteDetails : Invited team members to a shared folder. type SfTeamInviteDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // SharingPermission : Sharing permission. Might be missing due to @@ -7292,25 +7392,25 @@ type SfTeamInviteDetails struct { } // NewSfTeamInviteDetails returns a new SfTeamInviteDetails instance -func NewSfTeamInviteDetails(TargetIndex int64, OriginalFolderName string) *SfTeamInviteDetails { +func NewSfTeamInviteDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfTeamInviteDetails { s := new(SfTeamInviteDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } // SfTeamJoinDetails : Joined a team member's shared folder. type SfTeamJoinDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSfTeamJoinDetails returns a new SfTeamJoinDetails instance -func NewSfTeamJoinDetails(TargetIndex int64, OriginalFolderName string) *SfTeamJoinDetails { +func NewSfTeamJoinDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfTeamJoinDetails { s := new(SfTeamJoinDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7318,8 +7418,8 @@ func NewSfTeamJoinDetails(TargetIndex int64, OriginalFolderName string) *SfTeamJ // SfTeamJoinFromOobLinkDetails : Joined a team member's shared folder from a // link. type SfTeamJoinFromOobLinkDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // TokenKey : Shared link token key. @@ -7330,25 +7430,25 @@ type SfTeamJoinFromOobLinkDetails struct { } // NewSfTeamJoinFromOobLinkDetails returns a new SfTeamJoinFromOobLinkDetails instance -func NewSfTeamJoinFromOobLinkDetails(TargetIndex int64, OriginalFolderName string) *SfTeamJoinFromOobLinkDetails { +func NewSfTeamJoinFromOobLinkDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfTeamJoinFromOobLinkDetails { s := new(SfTeamJoinFromOobLinkDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } // SfTeamUninviteDetails : Unshared a folder with a team member. type SfTeamUninviteDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSfTeamUninviteDetails returns a new SfTeamUninviteDetails instance -func NewSfTeamUninviteDetails(TargetIndex int64, OriginalFolderName string) *SfTeamUninviteDetails { +func NewSfTeamUninviteDetails(TargetAssetIndex uint64, OriginalFolderName string) *SfTeamUninviteDetails { s := new(SfTeamUninviteDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7356,8 +7456,8 @@ func NewSfTeamUninviteDetails(TargetIndex int64, OriginalFolderName string) *SfT // SharedContentAddInviteesDetails : Sent an email invitation to the membership // of a shared file or folder. type SharedContentAddInviteesDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharingPermission : Sharing permission. Might be missing due to @@ -7366,17 +7466,17 @@ type SharedContentAddInviteesDetails struct { } // NewSharedContentAddInviteesDetails returns a new SharedContentAddInviteesDetails instance -func NewSharedContentAddInviteesDetails(TargetIndex int64) *SharedContentAddInviteesDetails { +func NewSharedContentAddInviteesDetails(TargetAssetIndex uint64) *SharedContentAddInviteesDetails { s := new(SharedContentAddInviteesDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentAddLinkExpiryDetails : Added an expiry to the link for the // shared file or folder. type SharedContentAddLinkExpiryDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7390,9 +7490,9 @@ type SharedContentAddLinkExpiryDetails struct { } // NewSharedContentAddLinkExpiryDetails returns a new SharedContentAddLinkExpiryDetails instance -func NewSharedContentAddLinkExpiryDetails(TargetIndex int64, ExpirationStartDate string, ExpirationDays int64) *SharedContentAddLinkExpiryDetails { +func NewSharedContentAddLinkExpiryDetails(TargetAssetIndex uint64, ExpirationStartDate string, ExpirationDays int64) *SharedContentAddLinkExpiryDetails { s := new(SharedContentAddLinkExpiryDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.ExpirationStartDate = ExpirationStartDate s.ExpirationDays = ExpirationDays return s @@ -7401,8 +7501,8 @@ func NewSharedContentAddLinkExpiryDetails(TargetIndex int64, ExpirationStartDate // SharedContentAddLinkPasswordDetails : Added a password to the link for the // shared file or folder. type SharedContentAddLinkPasswordDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7411,17 +7511,17 @@ type SharedContentAddLinkPasswordDetails struct { } // NewSharedContentAddLinkPasswordDetails returns a new SharedContentAddLinkPasswordDetails instance -func NewSharedContentAddLinkPasswordDetails(TargetIndex int64) *SharedContentAddLinkPasswordDetails { +func NewSharedContentAddLinkPasswordDetails(TargetAssetIndex uint64) *SharedContentAddLinkPasswordDetails { s := new(SharedContentAddLinkPasswordDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentAddMemberDetails : Added users and/or groups to the membership // of a shared file or folder. type SharedContentAddMemberDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharingPermission : Sharing permission. Might be missing due to @@ -7433,17 +7533,17 @@ type SharedContentAddMemberDetails struct { } // NewSharedContentAddMemberDetails returns a new SharedContentAddMemberDetails instance -func NewSharedContentAddMemberDetails(TargetIndex int64) *SharedContentAddMemberDetails { +func NewSharedContentAddMemberDetails(TargetAssetIndex uint64) *SharedContentAddMemberDetails { s := new(SharedContentAddMemberDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentChangeDownloadsPolicyDetails : Changed whether members can // download the shared file or folder. type SharedContentChangeDownloadsPolicyDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7457,9 +7557,9 @@ type SharedContentChangeDownloadsPolicyDetails struct { } // NewSharedContentChangeDownloadsPolicyDetails returns a new SharedContentChangeDownloadsPolicyDetails instance -func NewSharedContentChangeDownloadsPolicyDetails(TargetIndex int64, NewValue *SharedContentDownloadsPolicy) *SharedContentChangeDownloadsPolicyDetails { +func NewSharedContentChangeDownloadsPolicyDetails(TargetAssetIndex uint64, NewValue *SharedContentDownloadsPolicy) *SharedContentChangeDownloadsPolicyDetails { s := new(SharedContentChangeDownloadsPolicyDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.NewValue = NewValue return s } @@ -7467,8 +7567,8 @@ func NewSharedContentChangeDownloadsPolicyDetails(TargetIndex int64, NewValue *S // SharedContentChangeInviteeRoleDetails : Changed the access type of an invitee // to a shared file or folder before the invitation was claimed. type SharedContentChangeInviteeRoleDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // NewSharingPermission : New sharing permission. Might be missing due to @@ -7480,9 +7580,9 @@ type SharedContentChangeInviteeRoleDetails struct { } // NewSharedContentChangeInviteeRoleDetails returns a new SharedContentChangeInviteeRoleDetails instance -func NewSharedContentChangeInviteeRoleDetails(TargetIndex int64, OriginalFolderName string) *SharedContentChangeInviteeRoleDetails { +func NewSharedContentChangeInviteeRoleDetails(TargetAssetIndex uint64, OriginalFolderName string) *SharedContentChangeInviteeRoleDetails { s := new(SharedContentChangeInviteeRoleDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7490,8 +7590,8 @@ func NewSharedContentChangeInviteeRoleDetails(TargetIndex int64, OriginalFolderN // SharedContentChangeLinkAudienceDetails : Changed the audience of the link for // a shared file or folder. type SharedContentChangeLinkAudienceDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7505,9 +7605,9 @@ type SharedContentChangeLinkAudienceDetails struct { } // NewSharedContentChangeLinkAudienceDetails returns a new SharedContentChangeLinkAudienceDetails instance -func NewSharedContentChangeLinkAudienceDetails(TargetIndex int64, NewValue *LinkAudience) *SharedContentChangeLinkAudienceDetails { +func NewSharedContentChangeLinkAudienceDetails(TargetAssetIndex uint64, NewValue *LinkAudience) *SharedContentChangeLinkAudienceDetails { s := new(SharedContentChangeLinkAudienceDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.NewValue = NewValue return s } @@ -7515,8 +7615,8 @@ func NewSharedContentChangeLinkAudienceDetails(TargetIndex int64, NewValue *Link // SharedContentChangeLinkExpiryDetails : Changed the expiry of the link for the // shared file or folder. type SharedContentChangeLinkExpiryDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7530,9 +7630,9 @@ type SharedContentChangeLinkExpiryDetails struct { } // NewSharedContentChangeLinkExpiryDetails returns a new SharedContentChangeLinkExpiryDetails instance -func NewSharedContentChangeLinkExpiryDetails(TargetIndex int64, ExpirationStartDate string, ExpirationDays int64) *SharedContentChangeLinkExpiryDetails { +func NewSharedContentChangeLinkExpiryDetails(TargetAssetIndex uint64, ExpirationStartDate string, ExpirationDays int64) *SharedContentChangeLinkExpiryDetails { s := new(SharedContentChangeLinkExpiryDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.ExpirationStartDate = ExpirationStartDate s.ExpirationDays = ExpirationDays return s @@ -7541,8 +7641,8 @@ func NewSharedContentChangeLinkExpiryDetails(TargetIndex int64, ExpirationStartD // SharedContentChangeLinkPasswordDetails : Changed the password on the link for // the shared file or folder. type SharedContentChangeLinkPasswordDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7551,17 +7651,17 @@ type SharedContentChangeLinkPasswordDetails struct { } // NewSharedContentChangeLinkPasswordDetails returns a new SharedContentChangeLinkPasswordDetails instance -func NewSharedContentChangeLinkPasswordDetails(TargetIndex int64) *SharedContentChangeLinkPasswordDetails { +func NewSharedContentChangeLinkPasswordDetails(TargetAssetIndex uint64) *SharedContentChangeLinkPasswordDetails { s := new(SharedContentChangeLinkPasswordDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentChangeMemberRoleDetails : Changed the access type of a shared // file or folder member. type SharedContentChangeMemberRoleDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // NewSharingPermission : New sharing permission. Might be missing due to @@ -7576,17 +7676,17 @@ type SharedContentChangeMemberRoleDetails struct { } // NewSharedContentChangeMemberRoleDetails returns a new SharedContentChangeMemberRoleDetails instance -func NewSharedContentChangeMemberRoleDetails(TargetIndex int64) *SharedContentChangeMemberRoleDetails { +func NewSharedContentChangeMemberRoleDetails(TargetAssetIndex uint64) *SharedContentChangeMemberRoleDetails { s := new(SharedContentChangeMemberRoleDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentChangeViewerInfoPolicyDetails : Changed whether members can see // who viewed the shared file or folder. type SharedContentChangeViewerInfoPolicyDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7600,9 +7700,9 @@ type SharedContentChangeViewerInfoPolicyDetails struct { } // NewSharedContentChangeViewerInfoPolicyDetails returns a new SharedContentChangeViewerInfoPolicyDetails instance -func NewSharedContentChangeViewerInfoPolicyDetails(TargetIndex int64, NewValue *SharedContentViewerInfoPolicy) *SharedContentChangeViewerInfoPolicyDetails { +func NewSharedContentChangeViewerInfoPolicyDetails(TargetAssetIndex uint64, NewValue *SharedContentViewerInfoPolicy) *SharedContentChangeViewerInfoPolicyDetails { s := new(SharedContentChangeViewerInfoPolicyDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.NewValue = NewValue return s } @@ -7610,8 +7710,8 @@ func NewSharedContentChangeViewerInfoPolicyDetails(TargetIndex int64, NewValue * // SharedContentClaimInvitationDetails : Claimed membership to a team member's // shared folder. type SharedContentClaimInvitationDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedContentLink : Shared content link. @@ -7619,9 +7719,9 @@ type SharedContentClaimInvitationDetails struct { } // NewSharedContentClaimInvitationDetails returns a new SharedContentClaimInvitationDetails instance -func NewSharedContentClaimInvitationDetails(TargetIndex int64) *SharedContentClaimInvitationDetails { +func NewSharedContentClaimInvitationDetails(TargetAssetIndex uint64) *SharedContentClaimInvitationDetails { s := new(SharedContentClaimInvitationDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -7632,18 +7732,18 @@ type SharedContentCopyDetails struct { // SharingPermission : Sharing permission. Might be missing due to // historical data gap. SharingPermission string `json:"sharing_permission,omitempty"` - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // RelocateActionDetails : Specifies the source and destination indices in // the assets list. RelocateActionDetails *RelocateAssetReferencesLogInfo `json:"relocate_action_details"` } // NewSharedContentCopyDetails returns a new SharedContentCopyDetails instance -func NewSharedContentCopyDetails(SharedContentLink string, TargetIndex int64, RelocateActionDetails *RelocateAssetReferencesLogInfo) *SharedContentCopyDetails { +func NewSharedContentCopyDetails(SharedContentLink string, TargetAssetIndex uint64, RelocateActionDetails *RelocateAssetReferencesLogInfo) *SharedContentCopyDetails { s := new(SharedContentCopyDetails) s.SharedContentLink = SharedContentLink - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.RelocateActionDetails = RelocateActionDetails return s } @@ -7655,15 +7755,15 @@ type SharedContentDownloadDetails struct { // SharingPermission : Sharing permission. Might be missing due to // historical data gap. SharingPermission string `json:"sharing_permission,omitempty"` - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` } // NewSharedContentDownloadDetails returns a new SharedContentDownloadDetails instance -func NewSharedContentDownloadDetails(SharedContentLink string, TargetIndex int64) *SharedContentDownloadDetails { +func NewSharedContentDownloadDetails(SharedContentLink string, TargetAssetIndex uint64) *SharedContentDownloadDetails { s := new(SharedContentDownloadDetails) s.SharedContentLink = SharedContentLink - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -7682,16 +7782,16 @@ const ( // SharedContentRelinquishMembershipDetails : Left the membership of a shared // file or folder. type SharedContentRelinquishMembershipDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSharedContentRelinquishMembershipDetails returns a new SharedContentRelinquishMembershipDetails instance -func NewSharedContentRelinquishMembershipDetails(TargetIndex int64, OriginalFolderName string) *SharedContentRelinquishMembershipDetails { +func NewSharedContentRelinquishMembershipDetails(TargetAssetIndex uint64, OriginalFolderName string) *SharedContentRelinquishMembershipDetails { s := new(SharedContentRelinquishMembershipDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7699,16 +7799,16 @@ func NewSharedContentRelinquishMembershipDetails(TargetIndex int64, OriginalFold // SharedContentRemoveInviteeDetails : Removed an invitee from the membership of // a shared file or folder before it was claimed. type SharedContentRemoveInviteeDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSharedContentRemoveInviteeDetails returns a new SharedContentRemoveInviteeDetails instance -func NewSharedContentRemoveInviteeDetails(TargetIndex int64, OriginalFolderName string) *SharedContentRemoveInviteeDetails { +func NewSharedContentRemoveInviteeDetails(TargetAssetIndex uint64, OriginalFolderName string) *SharedContentRemoveInviteeDetails { s := new(SharedContentRemoveInviteeDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -7716,8 +7816,8 @@ func NewSharedContentRemoveInviteeDetails(TargetIndex int64, OriginalFolderName // SharedContentRemoveLinkExpiryDetails : Removed the expiry of the link for the // shared file or folder. type SharedContentRemoveLinkExpiryDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7726,17 +7826,17 @@ type SharedContentRemoveLinkExpiryDetails struct { } // NewSharedContentRemoveLinkExpiryDetails returns a new SharedContentRemoveLinkExpiryDetails instance -func NewSharedContentRemoveLinkExpiryDetails(TargetIndex int64) *SharedContentRemoveLinkExpiryDetails { +func NewSharedContentRemoveLinkExpiryDetails(TargetAssetIndex uint64) *SharedContentRemoveLinkExpiryDetails { s := new(SharedContentRemoveLinkExpiryDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentRemoveLinkPasswordDetails : Removed the password on the link for // the shared file or folder. type SharedContentRemoveLinkPasswordDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7745,17 +7845,17 @@ type SharedContentRemoveLinkPasswordDetails struct { } // NewSharedContentRemoveLinkPasswordDetails returns a new SharedContentRemoveLinkPasswordDetails instance -func NewSharedContentRemoveLinkPasswordDetails(TargetIndex int64) *SharedContentRemoveLinkPasswordDetails { +func NewSharedContentRemoveLinkPasswordDetails(TargetAssetIndex uint64) *SharedContentRemoveLinkPasswordDetails { s := new(SharedContentRemoveLinkPasswordDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentRemoveMemberDetails : Removed a user or a group from the // membership of a shared file or folder. type SharedContentRemoveMemberDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharingPermission : Sharing permission. Might be missing due to @@ -7767,17 +7867,17 @@ type SharedContentRemoveMemberDetails struct { } // NewSharedContentRemoveMemberDetails returns a new SharedContentRemoveMemberDetails instance -func NewSharedContentRemoveMemberDetails(TargetIndex int64) *SharedContentRemoveMemberDetails { +func NewSharedContentRemoveMemberDetails(TargetAssetIndex uint64) *SharedContentRemoveMemberDetails { s := new(SharedContentRemoveMemberDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentRequestAccessDetails : Requested to be on the membership of a // shared file or folder. type SharedContentRequestAccessDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` // SharedContentLink : Shared content link. @@ -7785,25 +7885,25 @@ type SharedContentRequestAccessDetails struct { } // NewSharedContentRequestAccessDetails returns a new SharedContentRequestAccessDetails instance -func NewSharedContentRequestAccessDetails(TargetIndex int64) *SharedContentRequestAccessDetails { +func NewSharedContentRequestAccessDetails(TargetAssetIndex uint64) *SharedContentRequestAccessDetails { s := new(SharedContentRequestAccessDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } // SharedContentUnshareDetails : Unshared a shared file or folder by clearing // its membership and turning off its link. type SharedContentUnshareDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name,omitempty"` } // NewSharedContentUnshareDetails returns a new SharedContentUnshareDetails instance -func NewSharedContentUnshareDetails(TargetIndex int64) *SharedContentUnshareDetails { +func NewSharedContentUnshareDetails(TargetAssetIndex uint64) *SharedContentUnshareDetails { s := new(SharedContentUnshareDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -7814,15 +7914,15 @@ type SharedContentViewDetails struct { // SharingPermission : Sharing permission. Might be missing due to // historical data gap. SharingPermission string `json:"sharing_permission,omitempty"` - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` } // NewSharedContentViewDetails returns a new SharedContentViewDetails instance -func NewSharedContentViewDetails(SharedContentLink string, TargetIndex int64) *SharedContentViewDetails { +func NewSharedContentViewDetails(SharedContentLink string, TargetAssetIndex uint64) *SharedContentViewDetails { s := new(SharedContentViewDetails) s.SharedContentLink = SharedContentLink - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -7841,8 +7941,8 @@ const ( // SharedFolderChangeConfidentialityDetails : Set or unset the confidential flag // on a shared folder. type SharedFolderChangeConfidentialityDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // NewValue : New confidentiality value. @@ -7853,9 +7953,9 @@ type SharedFolderChangeConfidentialityDetails struct { } // NewSharedFolderChangeConfidentialityDetails returns a new SharedFolderChangeConfidentialityDetails instance -func NewSharedFolderChangeConfidentialityDetails(TargetIndex int64, OriginalFolderName string, NewValue *Confidentiality) *SharedFolderChangeConfidentialityDetails { +func NewSharedFolderChangeConfidentialityDetails(TargetAssetIndex uint64, OriginalFolderName string, NewValue *Confidentiality) *SharedFolderChangeConfidentialityDetails { s := new(SharedFolderChangeConfidentialityDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName s.NewValue = NewValue return s @@ -7864,8 +7964,8 @@ func NewSharedFolderChangeConfidentialityDetails(TargetIndex int64, OriginalFold // SharedFolderChangeLinkPolicyDetails : Changed who can access the shared // folder via a link. type SharedFolderChangeLinkPolicyDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7879,9 +7979,9 @@ type SharedFolderChangeLinkPolicyDetails struct { } // NewSharedFolderChangeLinkPolicyDetails returns a new SharedFolderChangeLinkPolicyDetails instance -func NewSharedFolderChangeLinkPolicyDetails(TargetIndex int64, OriginalFolderName string, NewValue *SharedFolderLinkPolicy) *SharedFolderChangeLinkPolicyDetails { +func NewSharedFolderChangeLinkPolicyDetails(TargetAssetIndex uint64, OriginalFolderName string, NewValue *SharedFolderLinkPolicy) *SharedFolderChangeLinkPolicyDetails { s := new(SharedFolderChangeLinkPolicyDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName s.NewValue = NewValue return s @@ -7890,8 +7990,8 @@ func NewSharedFolderChangeLinkPolicyDetails(TargetIndex int64, OriginalFolderNam // SharedFolderChangeMemberManagementPolicyDetails : Changed who can manage the // membership of a shared folder. type SharedFolderChangeMemberManagementPolicyDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7905,9 +8005,9 @@ type SharedFolderChangeMemberManagementPolicyDetails struct { } // NewSharedFolderChangeMemberManagementPolicyDetails returns a new SharedFolderChangeMemberManagementPolicyDetails instance -func NewSharedFolderChangeMemberManagementPolicyDetails(TargetIndex int64, OriginalFolderName string, NewValue *SharedFolderMembershipManagementPolicy) *SharedFolderChangeMemberManagementPolicyDetails { +func NewSharedFolderChangeMemberManagementPolicyDetails(TargetAssetIndex uint64, OriginalFolderName string, NewValue *SharedFolderMembershipManagementPolicy) *SharedFolderChangeMemberManagementPolicyDetails { s := new(SharedFolderChangeMemberManagementPolicyDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName s.NewValue = NewValue return s @@ -7916,8 +8016,8 @@ func NewSharedFolderChangeMemberManagementPolicyDetails(TargetIndex int64, Origi // SharedFolderChangeMemberPolicyDetails : Changed who can become a member of // the shared folder. type SharedFolderChangeMemberPolicyDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` // SharedFolderType : Shared folder type. Might be missing due to historical @@ -7931,9 +8031,9 @@ type SharedFolderChangeMemberPolicyDetails struct { } // NewSharedFolderChangeMemberPolicyDetails returns a new SharedFolderChangeMemberPolicyDetails instance -func NewSharedFolderChangeMemberPolicyDetails(TargetIndex int64, OriginalFolderName string, NewValue *SharedFolderMemberPolicy) *SharedFolderChangeMemberPolicyDetails { +func NewSharedFolderChangeMemberPolicyDetails(TargetAssetIndex uint64, OriginalFolderName string, NewValue *SharedFolderMemberPolicy) *SharedFolderChangeMemberPolicyDetails { s := new(SharedFolderChangeMemberPolicyDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName s.NewValue = NewValue return s @@ -7941,17 +8041,17 @@ func NewSharedFolderChangeMemberPolicyDetails(TargetIndex int64, OriginalFolderN // SharedFolderCreateDetails : Created a shared folder. type SharedFolderCreateDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // ParentNsId : Parent namespace ID. Might be missing due to historical data // gap. ParentNsId string `json:"parent_ns_id,omitempty"` } // NewSharedFolderCreateDetails returns a new SharedFolderCreateDetails instance -func NewSharedFolderCreateDetails(TargetIndex int64) *SharedFolderCreateDetails { +func NewSharedFolderCreateDetails(TargetAssetIndex uint64) *SharedFolderCreateDetails { s := new(SharedFolderCreateDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -7995,16 +8095,16 @@ const ( // SharedFolderMountDetails : Added a shared folder to own Dropbox. type SharedFolderMountDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSharedFolderMountDetails returns a new SharedFolderMountDetails instance -func NewSharedFolderMountDetails(TargetIndex int64, OriginalFolderName string) *SharedFolderMountDetails { +func NewSharedFolderMountDetails(TargetAssetIndex uint64, OriginalFolderName string) *SharedFolderMountDetails { s := new(SharedFolderMountDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -8012,32 +8112,32 @@ func NewSharedFolderMountDetails(TargetIndex int64, OriginalFolderName string) * // SharedFolderTransferOwnershipDetails : Transferred the ownership of a shared // folder to another member. type SharedFolderTransferOwnershipDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSharedFolderTransferOwnershipDetails returns a new SharedFolderTransferOwnershipDetails instance -func NewSharedFolderTransferOwnershipDetails(TargetIndex int64, OriginalFolderName string) *SharedFolderTransferOwnershipDetails { +func NewSharedFolderTransferOwnershipDetails(TargetAssetIndex uint64, OriginalFolderName string) *SharedFolderTransferOwnershipDetails { s := new(SharedFolderTransferOwnershipDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } // SharedFolderUnmountDetails : Deleted a shared folder from Dropbox. type SharedFolderUnmountDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` // OriginalFolderName : Original shared folder name. OriginalFolderName string `json:"original_folder_name"` } // NewSharedFolderUnmountDetails returns a new SharedFolderUnmountDetails instance -func NewSharedFolderUnmountDetails(TargetIndex int64, OriginalFolderName string) *SharedFolderUnmountDetails { +func NewSharedFolderUnmountDetails(TargetAssetIndex uint64, OriginalFolderName string) *SharedFolderUnmountDetails { s := new(SharedFolderUnmountDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex s.OriginalFolderName = OriginalFolderName return s } @@ -8112,9 +8212,9 @@ type SharingFolderJoinPolicy struct { // Valid tag values for SharingFolderJoinPolicy const ( - SharingFolderJoinPolicyTeamOnly = "team_only" - SharingFolderJoinPolicyAnyone = "anyone" - SharingFolderJoinPolicyOther = "other" + SharingFolderJoinPolicyFromAnyone = "from_anyone" + SharingFolderJoinPolicyFromTeamOnly = "from_team_only" + SharingFolderJoinPolicyOther = "other" ) // SharingLinkPolicy : Policy for controlling if team members can share links @@ -8125,10 +8225,10 @@ type SharingLinkPolicy struct { // Valid tag values for SharingLinkPolicy const ( - SharingLinkPolicyTeamOnly = "team_only" - SharingLinkPolicyDefaultTeamOnly = "default_team_only" - SharingLinkPolicyDefaultAnyone = "default_anyone" - SharingLinkPolicyOther = "other" + SharingLinkPolicyDefaultPrivate = "default_private" + SharingLinkPolicyDefaultPublic = "default_public" + SharingLinkPolicyOnlyPrivate = "only_private" + SharingLinkPolicyOther = "other" ) // SharingMemberPolicy : External sharing policy @@ -8138,9 +8238,9 @@ type SharingMemberPolicy struct { // Valid tag values for SharingMemberPolicy const ( - SharingMemberPolicyTeamOnly = "team_only" - SharingMemberPolicyAnyone = "anyone" - SharingMemberPolicyOther = "other" + SharingMemberPolicyAllow = "allow" + SharingMemberPolicyForbid = "forbid" + SharingMemberPolicyOther = "other" ) // ShmodelAppCreateDetails : Created a link to a file using an app. @@ -8399,8 +8499,8 @@ type SmartSyncOptOutPolicy struct { // Valid tag values for SmartSyncOptOutPolicy const ( - SmartSyncOptOutPolicyOptedOut = "opted_out" SmartSyncOptOutPolicyDefault = "default" + SmartSyncOptOutPolicyOptedOut = "opted_out" SmartSyncOptOutPolicyOther = "other" ) @@ -8443,6 +8543,32 @@ const ( SpaceLimitsStatusOther = "other" ) +// SsoAddLoginUrlDetails : Added sign-in URL for SSO. +type SsoAddLoginUrlDetails struct { + // NewValue : New single sign-on login URL. + NewValue string `json:"new_value"` +} + +// NewSsoAddLoginUrlDetails returns a new SsoAddLoginUrlDetails instance +func NewSsoAddLoginUrlDetails(NewValue string) *SsoAddLoginUrlDetails { + s := new(SsoAddLoginUrlDetails) + s.NewValue = NewValue + return s +} + +// SsoAddLogoutUrlDetails : Added sign-out URL for SSO. +type SsoAddLogoutUrlDetails struct { + // NewValue : New single sign-on logout URL. Might be missing due to + // historical data gap. + NewValue string `json:"new_value,omitempty"` +} + +// NewSsoAddLogoutUrlDetails returns a new SsoAddLogoutUrlDetails instance +func NewSsoAddLogoutUrlDetails() *SsoAddLogoutUrlDetails { + s := new(SsoAddLogoutUrlDetails) + return s +} + // SsoChangeCertDetails : Changed the X.509 certificate for SSO. type SsoChangeCertDetails struct { // CertificateDetails : SSO certificate details. @@ -8474,31 +8600,31 @@ func NewSsoChangeLoginUrlDetails(PreviousValue string, NewValue string) *SsoChan // SsoChangeLogoutUrlDetails : Changed the sign-out URL for SSO. type SsoChangeLogoutUrlDetails struct { - // PreviousValue : Previous single sign-on logout URL. - PreviousValue string `json:"previous_value"` + // PreviousValue : Previous single sign-on logout URL. Might be missing due + // to historical data gap. + PreviousValue string `json:"previous_value,omitempty"` // NewValue : New single sign-on logout URL. Might be missing due to // historical data gap. NewValue string `json:"new_value,omitempty"` } // NewSsoChangeLogoutUrlDetails returns a new SsoChangeLogoutUrlDetails instance -func NewSsoChangeLogoutUrlDetails(PreviousValue string) *SsoChangeLogoutUrlDetails { +func NewSsoChangeLogoutUrlDetails() *SsoChangeLogoutUrlDetails { s := new(SsoChangeLogoutUrlDetails) - s.PreviousValue = PreviousValue return s } // SsoChangePolicyDetails : Change the single sign-on policy for the team. type SsoChangePolicyDetails struct { // NewValue : New single sign-on policy. - NewValue *SsoPolicy `json:"new_value"` + NewValue *team_policies.SsoPolicy `json:"new_value"` // PreviousValue : Previous single sign-on policy. Might be missing due to // historical data gap. - PreviousValue *SsoPolicy `json:"previous_value,omitempty"` + PreviousValue *team_policies.SsoPolicy `json:"previous_value,omitempty"` } // NewSsoChangePolicyDetails returns a new SsoChangePolicyDetails instance -func NewSsoChangePolicyDetails(NewValue *SsoPolicy) *SsoChangePolicyDetails { +func NewSsoChangePolicyDetails(NewValue *team_policies.SsoPolicy) *SsoChangePolicyDetails { s := new(SsoChangePolicyDetails) s.NewValue = NewValue return s @@ -8533,18 +8659,31 @@ func NewSsoLoginFailDetails(ErrorDetails *FailureDetailsLogInfo) *SsoLoginFailDe return s } -// SsoPolicy : SSO policy -type SsoPolicy struct { - dropbox.Tagged +// SsoRemoveLoginUrlDetails : Removed the sign-in URL for SSO. +type SsoRemoveLoginUrlDetails struct { + // PreviousValue : Previous single sign-on login URL. + PreviousValue string `json:"previous_value"` } -// Valid tag values for SsoPolicy -const ( - SsoPolicyDisabled = "disabled" - SsoPolicyOptional = "optional" - SsoPolicyRequired = "required" - SsoPolicyOther = "other" -) +// NewSsoRemoveLoginUrlDetails returns a new SsoRemoveLoginUrlDetails instance +func NewSsoRemoveLoginUrlDetails(PreviousValue string) *SsoRemoveLoginUrlDetails { + s := new(SsoRemoveLoginUrlDetails) + s.PreviousValue = PreviousValue + return s +} + +// SsoRemoveLogoutUrlDetails : Removed single sign-on logout URL. +type SsoRemoveLogoutUrlDetails struct { + // PreviousValue : Previous single sign-on logout URL. + PreviousValue string `json:"previous_value"` +} + +// NewSsoRemoveLogoutUrlDetails returns a new SsoRemoveLogoutUrlDetails instance +func NewSsoRemoveLogoutUrlDetails(PreviousValue string) *SsoRemoveLogoutUrlDetails { + s := new(SsoRemoveLogoutUrlDetails) + s.PreviousValue = PreviousValue + return s +} // TeamActivityCreateReportDetails : Created a team activity report. type TeamActivityCreateReportDetails struct { @@ -8575,6 +8714,12 @@ type TeamEvent struct { // was performed programmatically via the API the origin represents the API // client. Origin *OriginLogInfo `json:"origin,omitempty"` + // InvolveNonTeamMember : True if the action involved a non team member + // either as the actor or as one of the affected users. + InvolveNonTeamMember bool `json:"involve_non_team_member"` + // Context : The user or team on whose behalf the actor performed the + // action. + Context *ContextLogInfo `json:"context"` // Participants : Zero or more users and/or groups that are affected by the // action. Note that this list doesn't include any actors or users in // context. @@ -8583,12 +8728,6 @@ type TeamEvent struct { // these include Dropbox files and folders but in the future we might add // other asset types such as Paper documents, folders, projects, etc. Assets []*AssetLogInfo `json:"assets,omitempty"` - // InvolveNonTeamMember : True if the action involved a non team member - // either as the actor or as one of the affected users. - InvolveNonTeamMember bool `json:"involve_non_team_member"` - // Context : The user or team on whose behalf the actor performed the - // action. - Context *ContextLogInfo `json:"context"` // EventType : The particular type of action taken. EventType *EventType `json:"event_type"` // Details : The variable event schema applicable to this type of action, @@ -8638,14 +8777,14 @@ func NewTeamFolderCreateDetails() *TeamFolderCreateDetails { // TeamFolderDowngradeDetails : Downgraded a team folder to a regular shared // folder. type TeamFolderDowngradeDetails struct { - // TargetIndex : Target asset index. - TargetIndex int64 `json:"target_index"` + // TargetAssetIndex : Target asset position in the Assets list. + TargetAssetIndex uint64 `json:"target_asset_index"` } // NewTeamFolderDowngradeDetails returns a new TeamFolderDowngradeDetails instance -func NewTeamFolderDowngradeDetails(TargetIndex int64) *TeamFolderDowngradeDetails { +func NewTeamFolderDowngradeDetails(TargetAssetIndex uint64) *TeamFolderDowngradeDetails { s := new(TeamFolderDowngradeDetails) - s.TargetIndex = TargetIndex + s.TargetAssetIndex = TargetAssetIndex return s } @@ -8905,10 +9044,9 @@ type TfaPolicy struct { // Valid tag values for TfaPolicy const ( - TfaPolicyDisabled = "disabled" - TfaPolicyOptional = "optional" - TfaPolicyRequired = "required" - TfaPolicyOther = "other" + TfaPolicyAllowDisable = "allow_disable" + TfaPolicyStickyEnable = "sticky_enable" + TfaPolicyOther = "other" ) // TfaRemoveBackupPhoneDetails : Removed the backup phone for two-step @@ -9046,34 +9184,34 @@ func NewWebSessionLogInfo() *WebSessionLogInfo { // WebSessionsChangeFixedLengthPolicyDetails : Changed how long team members can // stay signed in to Dropbox on the web. type WebSessionsChangeFixedLengthPolicyDetails struct { - // NewValue : New session length policy. - NewValue *WebSessionsFixedLengthPolicy `json:"new_value"` - // PreviousValue : Previous session length policy. - PreviousValue *WebSessionsFixedLengthPolicy `json:"previous_value"` + // NewValue : New session length policy. Might be missing due to historical + // data gap. + NewValue *WebSessionsFixedLengthPolicy `json:"new_value,omitempty"` + // PreviousValue : Previous session length policy. Might be missing due to + // historical data gap. + PreviousValue *WebSessionsFixedLengthPolicy `json:"previous_value,omitempty"` } // NewWebSessionsChangeFixedLengthPolicyDetails returns a new WebSessionsChangeFixedLengthPolicyDetails instance -func NewWebSessionsChangeFixedLengthPolicyDetails(NewValue *WebSessionsFixedLengthPolicy, PreviousValue *WebSessionsFixedLengthPolicy) *WebSessionsChangeFixedLengthPolicyDetails { +func NewWebSessionsChangeFixedLengthPolicyDetails() *WebSessionsChangeFixedLengthPolicyDetails { s := new(WebSessionsChangeFixedLengthPolicyDetails) - s.NewValue = NewValue - s.PreviousValue = PreviousValue return s } // WebSessionsChangeIdleLengthPolicyDetails : Changed how long team members can // be idle while signed in to Dropbox on the web. type WebSessionsChangeIdleLengthPolicyDetails struct { - // NewValue : New idle length policy. - NewValue *WebSessionsIdleLengthPolicy `json:"new_value"` - // PreviousValue : Previous idle length policy. - PreviousValue *WebSessionsIdleLengthPolicy `json:"previous_value"` + // NewValue : New idle length policy. Might be missing due to historical + // data gap. + NewValue *WebSessionsIdleLengthPolicy `json:"new_value,omitempty"` + // PreviousValue : Previous idle length policy. Might be missing due to + // historical data gap. + PreviousValue *WebSessionsIdleLengthPolicy `json:"previous_value,omitempty"` } // NewWebSessionsChangeIdleLengthPolicyDetails returns a new WebSessionsChangeIdleLengthPolicyDetails instance -func NewWebSessionsChangeIdleLengthPolicyDetails(NewValue *WebSessionsIdleLengthPolicy, PreviousValue *WebSessionsIdleLengthPolicy) *WebSessionsChangeIdleLengthPolicyDetails { +func NewWebSessionsChangeIdleLengthPolicyDetails() *WebSessionsChangeIdleLengthPolicyDetails { s := new(WebSessionsChangeIdleLengthPolicyDetails) - s.NewValue = NewValue - s.PreviousValue = PreviousValue return s } diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_policies/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_policies/types.go index 4c5196664..718a8664a 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_policies/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/team_policies/types.go @@ -48,6 +48,56 @@ const ( OfficeAddInPolicyOther = "other" ) +// PaperDeploymentPolicy : has no documentation (yet) +type PaperDeploymentPolicy struct { + dropbox.Tagged +} + +// Valid tag values for PaperDeploymentPolicy +const ( + PaperDeploymentPolicyFull = "full" + PaperDeploymentPolicyPartial = "partial" + PaperDeploymentPolicyOther = "other" +) + +// PaperEnabledPolicy : has no documentation (yet) +type PaperEnabledPolicy struct { + dropbox.Tagged +} + +// Valid tag values for PaperEnabledPolicy +const ( + PaperEnabledPolicyDisabled = "disabled" + PaperEnabledPolicyEnabled = "enabled" + PaperEnabledPolicyUnspecified = "unspecified" + PaperEnabledPolicyOther = "other" +) + +// PasswordStrengthPolicy : has no documentation (yet) +type PasswordStrengthPolicy struct { + dropbox.Tagged +} + +// Valid tag values for PasswordStrengthPolicy +const ( + PasswordStrengthPolicyMinimalRequirements = "minimal_requirements" + PasswordStrengthPolicyModeratePassword = "moderate_password" + PasswordStrengthPolicyStrongPassword = "strong_password" + PasswordStrengthPolicyOther = "other" +) + +// RolloutMethod : has no documentation (yet) +type RolloutMethod struct { + dropbox.Tagged +} + +// Valid tag values for RolloutMethod +const ( + RolloutMethodUnlinkAll = "unlink_all" + RolloutMethodUnlinkMostInactive = "unlink_most_inactive" + RolloutMethodAddMemberToExceptions = "add_member_to_exceptions" +) + // SharedFolderJoinPolicy : Policy governing which shared folders a team member // can join. type SharedFolderJoinPolicy struct { @@ -88,6 +138,19 @@ const ( SharedLinkCreatePolicyOther = "other" ) +// SsoPolicy : has no documentation (yet) +type SsoPolicy struct { + dropbox.Tagged +} + +// Valid tag values for SsoPolicy +const ( + SsoPolicyDisabled = "disabled" + SsoPolicyOptional = "optional" + SsoPolicyRequired = "required" + SsoPolicyOther = "other" +) + // TeamMemberPolicies : Policies governing team members. type TeamMemberPolicies struct { // Sharing : Policies governing sharing. diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/users_common/types.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/users_common/types.go index e7a6a1a9d..74abd0990 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/users_common/types.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/dropbox/users_common/types.go @@ -19,7 +19,7 @@ // THE SOFTWARE. // Package users_common : This namespace contains common data types used within -// the users namespace +// the users namespace. package users_common import "github.com/dropbox/dropbox-sdk-go-unofficial/dropbox" diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/generate-sdk.sh b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/generate-sdk.sh index 718f686f4..108c18cd6 100755 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/generate-sdk.sh +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/generate-sdk.sh @@ -1,7 +1,7 @@ #! /usr/bin/env bash set -euo pipefail -if [[ $# -ne 0 ]]; then +if [[ $# -gt 1 ]]; then echo "$0: Not expecting any command-line arguments, got $#." 1>&2 exit 1 fi @@ -15,7 +15,7 @@ stone -v -a :all go_types.stoneg.py "$gen_dir" "$spec_dir"/*.stone stone -v -a :all go_client.stoneg.py "$gen_dir" "$spec_dir"/*.stone # Update SDK and API spec versions -sdk_version="1.0.0-beta" +sdk_version=${1:-"1.0.0-beta"} pushd ${spec_dir} spec_version=$(git rev-parse --short HEAD) popd diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_client.stoneg.py b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_client.stoneg.py index 4193a25b4..eb89d81e3 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_client.stoneg.py +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_client.stoneg.py @@ -1,7 +1,7 @@ import os -from stone.generator import CodeGenerator -from stone.data_type import ( +from stone.backend import CodeBackend +from stone.ir import ( is_void_type, is_struct_type ) @@ -14,7 +14,7 @@ from go_helpers import ( ) -class GoClientGenerator(CodeGenerator): +class GoClientBackend(CodeBackend): def generate(self, api): for namespace in api.namespaces.values(): if len(namespace.routes) > 0: @@ -120,7 +120,7 @@ class GoClientGenerator(CodeGenerator): headers = {} if not is_void_type(route.arg_data_type): - if host == 'content': + if host == 'content' or style in ['upload', 'download']: headers["Dropbox-API-Arg"] = "string(b)" else: headers["Content-Type"] = '"application/json"' diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_helpers.py b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_helpers.py index 71183e520..cab893cdb 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_helpers.py +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_helpers.py @@ -1,5 +1,5 @@ -from stone.api import (ApiNamespace, ApiRoute) -from stone.data_type import ( +from stone.ir import (ApiNamespace, ApiRoute) +from stone.ir import ( Boolean, Float32, Float64, @@ -15,7 +15,7 @@ from stone.data_type import ( is_struct_type, Void, ) -from stone.target import helpers +from stone.backends import helpers HEADER = """\ // Copyright (c) Dropbox, Inc. diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_rsrc/files/metadata.go b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_rsrc/files/metadata.go index d2346b4f5..e70da6b67 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_rsrc/files/metadata.go +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_rsrc/files/metadata.go @@ -23,9 +23,9 @@ package files import "encoding/json" type listFolderResult struct { - Entries []metadataUnion `json:"entries"` - Cursor string `json:"cursor"` - HasMore bool `json:"has_more"` + Entries []json.RawMessage `json:"entries"` + Cursor string `json:"cursor"` + HasMore bool `json:"has_more"` } // UnmarshalJSON deserializes into a ListFolderResult instance @@ -38,21 +38,18 @@ func (r *ListFolderResult) UnmarshalJSON(b []byte) error { r.HasMore = l.HasMore r.Entries = make([]IsMetadata, len(l.Entries)) for i, e := range l.Entries { - switch e.Tag { - case "file": - r.Entries[i] = e.File - case "folder": - r.Entries[i] = e.Folder - case "deleted": - r.Entries[i] = e.Deleted + metadata, err := IsMetadataFromJSON(e) + if err != nil { + return err } + r.Entries[i] = metadata } return nil } type searchMatch struct { MatchType *SearchMatchType `json:"match_type"` - Metadata metadataUnion `json:"metadata"` + Metadata json.RawMessage `json:"metadata"` } // UnmarshalJSON deserializes into a SearchMatch instance @@ -62,38 +59,51 @@ func (s *SearchMatch) UnmarshalJSON(b []byte) error { return err } s.MatchType = m.MatchType - e := m.Metadata - switch e.Tag { - case "file": - s.Metadata = e.File - case "folder": - s.Metadata = e.Folder - case "deleted": - s.Metadata = e.Deleted + metadata, err := IsMetadataFromJSON(m.Metadata) + if err != nil { + return err } + s.Metadata = metadata return nil } type deleteResult struct { FileOpsResult - Metadata metadataUnion `json:"metadata"` + Metadata json.RawMessage `json:"metadata"` } -// UnmarshalJSON deserializes into a SearchMatch instance +// UnmarshalJSON deserializes into a DeleteResult instance func (s *DeleteResult) UnmarshalJSON(b []byte) error { var m deleteResult if err := json.Unmarshal(b, &m); err != nil { return err } s.FileOpsResult = m.FileOpsResult - e := m.Metadata - switch e.Tag { - case "file": - s.Metadata = e.File - case "folder": - s.Metadata = e.Folder - case "deleted": - s.Metadata = e.Deleted + metadata, err := IsMetadataFromJSON(m.Metadata) + if err != nil { + return err } + s.Metadata = metadata + return nil +} + +type relocationResult struct { + FileOpsResult + // Metadata : Metadata of the relocated object. + Metadata json.RawMessage `json:"metadata"` +} + +// UnmarshalJSON deserializes into a RelocationResult instance +func (s *RelocationResult) UnmarshalJSON(b []byte) error { + var m relocationResult + if err := json.Unmarshal(b, &m); err != nil { + return err + } + s.FileOpsResult = m.FileOpsResult + metadata, err := IsMetadataFromJSON(m.Metadata) + if err != nil { + return err + } + s.Metadata = metadata return nil } diff --git a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_types.stoneg.py b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_types.stoneg.py index d00443c84..343a97060 100644 --- a/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_types.stoneg.py +++ b/vendor/github.com/dropbox/dropbox-sdk-go-unofficial/generator/go_types.stoneg.py @@ -1,8 +1,8 @@ import os import shutil -from stone.generator import CodeGenerator -from stone.data_type import ( +from stone.backend import CodeBackend +from stone.ir import ( is_boolean_type, is_nullable_type, is_primitive_type, @@ -19,7 +19,7 @@ from go_helpers import ( ) -class GoTypesGenerator(CodeGenerator): +class GoTypesBackend(CodeBackend): def generate(self, api): rsrc_folder = os.path.join(os.path.dirname(__file__), 'go_rsrc') shutil.copy(os.path.join(rsrc_folder, 'sdk.go'),