diff options
Diffstat (limited to 'Documentation/rest-api-accounts.txt')
-rw-r--r-- | Documentation/rest-api-accounts.txt | 273 |
1 files changed, 188 insertions, 85 deletions
diff --git a/Documentation/rest-api-accounts.txt b/Documentation/rest-api-accounts.txt index dc45ff5382..de5f278655 100644 --- a/Documentation/rest-api-accounts.txt +++ b/Documentation/rest-api-accounts.txt @@ -63,7 +63,9 @@ for each account. [[all-emails]] -- -* `ALL_EMAILS`: Includes all registered emails. +* `ALL_EMAILS`: Includes all registered emails. Requires the caller +to have the link:access-control.html#capability_modifyAccount[Modify +Account] global capability. -- [[suggest-account]] @@ -79,6 +81,10 @@ link:#all-emails[all emails] are always returned. GET /accounts/?suggest&q=John HTTP/1.0 ---- +Secondary emails are only included if the calling user has the +link:access-control.html#capability_modifyAccount[Modify Account] +capability. + .Response ---- HTTP/1.1 200 OK @@ -1764,6 +1770,152 @@ Only external ids belonging to the caller may be deleted. HTTP/1.1 204 No Content ---- +[[list-contributor-agreements]] +=== List Contributor Agreements +-- +'GET /accounts/link:#account-id[\{account-id\}]/agreements' +-- + +Gets a list of the user's signed contributor agreements. + +.Request +---- + GET /a/accounts/self/agreements HTTP/1.0 +---- + +As response the user's signed agreements are returned as a list +of link:#contributor-agreement-info[ContributorAgreementInfo] entities. + +.Response +---- + HTTP/1.1 200 OK + Content-Disposition: attachment + Content-Type: application/json; charset=UTF-8 + + )]}' + [ + { + "name": "Individual", + "description": "If you are going to be contributing code on your own, this is the one you want. You can sign this one online.", + "url": "static/cla_individual.html" + } + ] +---- + +[delete-draft-comments] +=== Delete Draft Comments +-- +'POST /accounts/link:#account-id[\{account-id\}]/drafts:delete' +-- + +Deletes some or all of a user's draft comments. The set of comments to delete is +specified as a link:#delete-draft-comments-input[DeleteDraftCommentsInput] +entity. An empty input entity deletes all comments. + +Only drafts belonging to the caller may be deleted. + +.Request +---- + POST /accounts/self/drafts.delete HTTP/1.0 + Content-Type: application/json; charset=UTF-8 + + { + "query": "is:abandoned" + } +---- + +As a response, a list of +link:#deleted-draft-comment-info[DeletedDraftCommentInfo] entities is returned. + +.Response +---- + HTTP/1.1 200 OK + Content-Disposition: attachment + Content-Type: application/json; charset=UTF-8 + + )]}' + [ + { + "change": { + "id": "myProject~master~I8473b95934b5732ac55d26311a706c9c2bde9940", + "project": "myProject", + "branch": "master", + "change_id": "I8473b95934b5732ac55d26311a706c9c2bde9940", + "subject": "Implementing Feature X", + "status": "ABANDONED", + "created": "2013-02-01 09:59:32.126000000", + "updated": "2013-02-21 11:16:36.775000000", + "insertions": 34, + "deletions": 101, + "_number": 3965, + "owner": { + "name": "John Doe" + } + }, + "deleted": [ + { + "id": "TvcXrmjM", + "path": "gerrit-server/src/main/java/com/google/gerrit/server/project/RefControl.java", + "line": 23, + "message": "[nit] trailing whitespace", + "updated": "2013-02-26 15:40:43.986000000" + } + ] + } + ] +---- + +[[sign-contributor-agreement]] +=== Sign Contributor Agreement +-- +'PUT /accounts/link:#account-id[\{account-id\}]/agreements' +-- + +Signs a contributor agreement. + +The contributor agreement must be provided in the request body as +a link:#contributor-agreement-input[ContributorAgreementInput]. + +.Request +---- + PUT /accounts/self/agreements HTTP/1.0 + Content-Type: application/json; charset=UTF-8 + + { + "name": "Individual" + } +---- + +As response the contributor agreement name is returned. + +.Response +---- + HTTP/1.1 200 OK + Content-Disposition: attachment + Content-Type: application/json; charset=UTF-8 + + )]}' + "Individual" +---- + +[[index-account]] +=== Index Account +-- +'POST /accounts/link:#account-id[\{account-id\}]/index' +-- + +Adds or updates the account in the secondary index. + +.Request +---- + POST /accounts/1000096/index HTTP/1.0 +---- + +.Response +---- + HTTP/1.1 204 No Content +---- + [[default-star-endpoints]] == Default Star Endpoints @@ -1980,89 +2132,6 @@ returned. The labels are lexicographically sorted. ] ---- -[[list-contributor-agreements]] -=== List Contributor Agreements --- -'GET /accounts/link:#account-id[\{account-id\}]/agreements' --- - -Gets a list of the user's signed contributor agreements. - -.Request ----- - GET /a/accounts/self/agreements HTTP/1.0 ----- - -As response the user's signed agreements are returned as a list -of link:#contributor-agreement-info[ContributorAgreementInfo] entities. - -.Response ----- - HTTP/1.1 200 OK - Content-Disposition: attachment - Content-Type: application/json; charset=UTF-8 - - )]}' - [ - { - "name": "Individual", - "description": "If you are going to be contributing code on your own, this is the one you want. You can sign this one online.", - "url": "static/cla_individual.html" - } - ] ----- - -[[sign-contributor-agreement]] -=== Sign Contributor Agreement --- -'PUT /accounts/link:#account-id[\{account-id\}]/agreements' --- - -Signs a contributor agreement. - -The contributor agreement must be provided in the request body as -a link:#contributor-agreement-input[ContributorAgreementInput]. - -.Request ----- - PUT /accounts/self/agreements HTTP/1.0 - Content-Type: application/json; charset=UTF-8 - - { - "name": "Individual" - } ----- - -As response the contributor agreement name is returned. - -.Response ----- - HTTP/1.1 200 OK - Content-Disposition: attachment - Content-Type: application/json; charset=UTF-8 - - )]}' - "Individual" ----- - -[[index-account]] -=== Index Account --- -'POST /accounts/link:#account-id[\{account-id\}]/index' --- - -Adds or updates the account in the secondary index. - -.Request ----- - POST /accounts/1000096/index HTTP/1.0 ----- - -.Response ----- - HTTP/1.1 204 No Content ----- - [[ids]] == IDs @@ -2164,7 +2233,10 @@ ALL_EMAILS] for account queries. |`secondary_emails`|optional| A list of the secondary email addresses of the user. + Only set for account queries when the link:#all-emails[ALL_EMAILS] -option is set. +option or the link:#suggest-account[suggest] parameter is set. + +Secondary emails are only included if the calling user has the +link:access-control.html#capability_modifyAccount[Modify Account], and +hence is allowed to see secondary emails of other users. |`username` |optional|The username of the user. + Only set if detailed account information is requested. + See option link:rest-api-changes.html#detailed-accounts[ @@ -2304,6 +2376,37 @@ new contributor agreement. |`name` |The name of the agreement. |================================= +[[delete-draft-comments-input]] +=== DeleteDraftCommentsInput +The `DeleteDraftCommentsInput` entity contains information specifying a set of +draft comments that should be deleted. + +[options="header",cols="1,^1,5"] +|================================= +|Field Name ||Description +|`query` |optional| +A link:user-search.html[change query] limiting results to changes matching this +query; `has:draft` is implied and not necessary to list explicitly. If not set, +matches all changes with drafts. +|================================= + +[[deleted-draft-comment-info]] +=== DeletedDraftCommentInfo +The `DeletedDraftCommentInfo` entity contains information about draft comments +that were deleted. + +[options="header",cols="1,6"] +|================================= +|Field Name |Description +|`change` | +link:rest-api-changes.html#change-info[ChangeInfo] entity describing the change +on which one or more comments was deleted. Populated with only the +link:rest-api-changes.html#skip_mergeable[SKIP_MERGEABLE] option. +|`deleted` | +List of link:rest-api-changes.html#comment-info[CommentInfo] entities for each +comment that was deleted. +|================================= + [[diff-preferences-info]] === DiffPreferencesInfo The `DiffPreferencesInfo` entity contains information about the diff |