@templmf/temp-solf-lmf 0.0.108 → 0.0.109

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/gitlab-foss-8-17-stable/doc/api/README.md +391 -0
  2. package/gitlab-foss-8-17-stable/doc/api/access_requests.md +139 -0
  3. package/gitlab-foss-8-17-stable/doc/api/award_emoji.md +374 -0
  4. package/gitlab-foss-8-17-stable/doc/api/boards.md +241 -0
  5. package/gitlab-foss-8-17-stable/doc/api/branches.md +260 -0
  6. package/gitlab-foss-8-17-stable/doc/api/broadcast_messages.md +154 -0
  7. package/gitlab-foss-8-17-stable/doc/api/build_triggers.md +118 -0
  8. package/gitlab-foss-8-17-stable/doc/api/build_variables.md +128 -0
  9. package/gitlab-foss-8-17-stable/doc/api/builds.md +610 -0
  10. package/gitlab-foss-8-17-stable/doc/api/ci/README.md +24 -0
  11. package/gitlab-foss-8-17-stable/doc/api/ci/builds.md +147 -0
  12. package/gitlab-foss-8-17-stable/doc/api/ci/lint.md +49 -0
  13. package/gitlab-foss-8-17-stable/doc/api/ci/runners.md +59 -0
  14. package/gitlab-foss-8-17-stable/doc/api/commits.md +479 -0
  15. package/gitlab-foss-8-17-stable/doc/api/deploy_key_multiple_projects.md +29 -0
  16. package/gitlab-foss-8-17-stable/doc/api/deploy_keys.md +216 -0
  17. package/gitlab-foss-8-17-stable/doc/api/deployments.md +218 -0
  18. package/gitlab-foss-8-17-stable/doc/api/enviroments.md +121 -0
  19. package/gitlab-foss-8-17-stable/doc/api/groups.md +484 -0
  20. package/gitlab-foss-8-17-stable/doc/api/issues.md +856 -0
  21. package/gitlab-foss-8-17-stable/doc/api/keys.md +46 -0
  22. package/gitlab-foss-8-17-stable/doc/api/labels.md +257 -0
  23. package/gitlab-foss-8-17-stable/doc/api/members.md +175 -0
  24. package/gitlab-foss-8-17-stable/doc/api/merge_requests.md +1158 -0
  25. package/gitlab-foss-8-17-stable/doc/api/milestones.md +105 -0
  26. package/gitlab-foss-8-17-stable/doc/api/namespaces.md +70 -0
  27. package/gitlab-foss-8-17-stable/doc/api/notes.md +407 -0
  28. package/gitlab-foss-8-17-stable/doc/api/notification_settings.md +177 -0
  29. package/gitlab-foss-8-17-stable/doc/api/oauth2.md +137 -0
  30. package/gitlab-foss-8-17-stable/doc/api/pipelines.md +259 -0
  31. package/gitlab-foss-8-17-stable/doc/api/project_snippets.md +118 -0
  32. package/gitlab-foss-8-17-stable/doc/api/projects.md +1402 -0
  33. package/gitlab-foss-8-17-stable/doc/api/repositories.md +200 -0
  34. package/gitlab-foss-8-17-stable/doc/api/repository_files.md +134 -0
  35. package/gitlab-foss-8-17-stable/doc/api/runners.md +322 -0
  36. package/gitlab-foss-8-17-stable/doc/api/services.md +812 -0
  37. package/gitlab-foss-8-17-stable/doc/api/session.md +56 -0
  38. package/gitlab-foss-8-17-stable/doc/api/settings.md +126 -0
  39. package/gitlab-foss-8-17-stable/doc/api/sidekiq_metrics.md +152 -0
  40. package/gitlab-foss-8-17-stable/doc/api/snippets.md +232 -0
  41. package/gitlab-foss-8-17-stable/doc/api/system_hooks.md +146 -0
  42. package/gitlab-foss-8-17-stable/doc/api/tags.md +191 -0
  43. package/gitlab-foss-8-17-stable/doc/api/templates/gitignores.md +579 -0
  44. package/gitlab-foss-8-17-stable/doc/api/templates/gitlab_ci_ymls.md +120 -0
  45. package/gitlab-foss-8-17-stable/doc/api/templates/licenses.md +147 -0
  46. package/gitlab-foss-8-17-stable/doc/api/todos.md +296 -0
  47. package/gitlab-foss-8-17-stable/doc/api/users.md +835 -0
  48. package/gitlab-foss-8-17-stable/doc/api/v3_to_v4.md +14 -0
  49. package/gitlab-foss-8-17-stable/doc/api/version.md +23 -0
  50. package/package.json +1 -1
  51. package//347/224/237/344/272/247/347/216/257/345/242/203CK/346/211/251/345/256/271/346/255/245/351/252/244.docx +0 -0
@@ -0,0 +1,835 @@
1
+ # Users
2
+
3
+ ## List users
4
+
5
+ Get a list of users.
6
+
7
+ This function takes pagination parameters `page` and `per_page` to restrict the list of users.
8
+
9
+ ### For normal users
10
+
11
+ ```
12
+ GET /users
13
+ ```
14
+
15
+ ```json
16
+ [
17
+ {
18
+ "id": 1,
19
+ "username": "john_smith",
20
+ "name": "John Smith",
21
+ "state": "active",
22
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/cd8.jpeg",
23
+ "web_url": "http://localhost:3000/john_smith"
24
+ },
25
+ {
26
+ "id": 2,
27
+ "username": "jack_smith",
28
+ "name": "Jack Smith",
29
+ "state": "blocked",
30
+ "avatar_url": "http://gravatar.com/../e32131cd8.jpeg",
31
+ "web_url": "http://localhost:3000/jack_smith"
32
+ }
33
+ ]
34
+ ```
35
+
36
+ In addition, you can filter users based on states eg. `blocked`, `active`
37
+ This works only to filter users who are `blocked` or `active`.
38
+ It does not support `active=false` or `blocked=false`.
39
+
40
+ ```
41
+ GET /users?active=true
42
+ ```
43
+
44
+ ```
45
+ GET /users?blocked=true
46
+ ```
47
+
48
+ ### For admins
49
+
50
+ ```
51
+ GET /users
52
+ ```
53
+
54
+ ```json
55
+ [
56
+ {
57
+ "id": 1,
58
+ "username": "john_smith",
59
+ "email": "john@example.com",
60
+ "name": "John Smith",
61
+ "state": "active",
62
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/index.jpg",
63
+ "web_url": "http://localhost:3000/john_smith",
64
+ "created_at": "2012-05-23T08:00:58Z",
65
+ "is_admin": false,
66
+ "bio": null,
67
+ "location": null,
68
+ "skype": "",
69
+ "linkedin": "",
70
+ "twitter": "",
71
+ "website_url": "",
72
+ "organization": "",
73
+ "last_sign_in_at": "2012-06-01T11:41:01Z",
74
+ "confirmed_at": "2012-05-23T09:05:22Z",
75
+ "theme_id": 1,
76
+ "color_scheme_id": 2,
77
+ "projects_limit": 100,
78
+ "current_sign_in_at": "2012-06-02T06:36:55Z",
79
+ "identities": [
80
+ {"provider": "github", "extern_uid": "2435223452345"},
81
+ {"provider": "bitbucket", "extern_uid": "john.smith"},
82
+ {"provider": "google_oauth2", "extern_uid": "8776128412476123468721346"}
83
+ ],
84
+ "can_create_group": true,
85
+ "can_create_project": true,
86
+ "two_factor_enabled": true,
87
+ "external": false
88
+ },
89
+ {
90
+ "id": 2,
91
+ "username": "jack_smith",
92
+ "email": "jack@example.com",
93
+ "name": "Jack Smith",
94
+ "state": "blocked",
95
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/2/index.jpg",
96
+ "web_url": "http://localhost:3000/jack_smith",
97
+ "created_at": "2012-05-23T08:01:01Z",
98
+ "is_admin": false,
99
+ "bio": null,
100
+ "location": null,
101
+ "skype": "",
102
+ "linkedin": "",
103
+ "twitter": "",
104
+ "website_url": "",
105
+ "organization": "",
106
+ "last_sign_in_at": null,
107
+ "confirmed_at": "2012-05-30T16:53:06.148Z",
108
+ "theme_id": 1,
109
+ "color_scheme_id": 3,
110
+ "projects_limit": 100,
111
+ "current_sign_in_at": "2014-03-19T17:54:13Z",
112
+ "identities": [],
113
+ "can_create_group": true,
114
+ "can_create_project": true,
115
+ "two_factor_enabled": true,
116
+ "external": false
117
+ }
118
+ ]
119
+ ```
120
+
121
+ You can search for users by email or username with: `/users?search=John`
122
+
123
+ In addition, you can lookup users by username:
124
+
125
+ ```
126
+ GET /users?username=:username
127
+ ```
128
+
129
+ For example:
130
+
131
+ ```
132
+ GET /users?username=jack_smith
133
+ ```
134
+
135
+ You can search for users who are external with: `/users?external=true`
136
+
137
+ ## Single user
138
+
139
+ Get a single user.
140
+
141
+ ### For user
142
+
143
+ ```
144
+ GET /users/:id
145
+ ```
146
+
147
+ Parameters:
148
+
149
+ - `id` (required) - The ID of a user
150
+
151
+ ```json
152
+ {
153
+ "id": 1,
154
+ "username": "john_smith",
155
+ "name": "John Smith",
156
+ "state": "active",
157
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/cd8.jpeg",
158
+ "web_url": "http://localhost:3000/john_smith",
159
+ "created_at": "2012-05-23T08:00:58Z",
160
+ "is_admin": false,
161
+ "bio": null,
162
+ "location": null,
163
+ "skype": "",
164
+ "linkedin": "",
165
+ "twitter": "",
166
+ "website_url": "",
167
+ "organization": ""
168
+ }
169
+ ```
170
+
171
+ ### For admin
172
+
173
+ ```
174
+ GET /users/:id
175
+ ```
176
+
177
+ Parameters:
178
+
179
+ - `id` (required) - The ID of a user
180
+
181
+ ```json
182
+ {
183
+ "id": 1,
184
+ "username": "john_smith",
185
+ "email": "john@example.com",
186
+ "name": "John Smith",
187
+ "state": "active",
188
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/index.jpg",
189
+ "web_url": "http://localhost:3000/john_smith",
190
+ "created_at": "2012-05-23T08:00:58Z",
191
+ "is_admin": false,
192
+ "bio": null,
193
+ "location": null,
194
+ "skype": "",
195
+ "linkedin": "",
196
+ "twitter": "",
197
+ "website_url": "",
198
+ "organization": "",
199
+ "last_sign_in_at": "2012-06-01T11:41:01Z",
200
+ "confirmed_at": "2012-05-23T09:05:22Z",
201
+ "theme_id": 1,
202
+ "color_scheme_id": 2,
203
+ "projects_limit": 100,
204
+ "current_sign_in_at": "2012-06-02T06:36:55Z",
205
+ "identities": [
206
+ {"provider": "github", "extern_uid": "2435223452345"},
207
+ {"provider": "bitbucket", "extern_uid": "john.smith"},
208
+ {"provider": "google_oauth2", "extern_uid": "8776128412476123468721346"}
209
+ ],
210
+ "can_create_group": true,
211
+ "can_create_project": true,
212
+ "two_factor_enabled": true,
213
+ "external": false
214
+ }
215
+ ```
216
+
217
+ ## User creation
218
+
219
+ Creates a new user. Note only administrators can create new users.
220
+
221
+ ```
222
+ POST /users
223
+ ```
224
+
225
+ Parameters:
226
+
227
+ - `email` (required) - Email
228
+ - `password` (required) - Password
229
+ - `username` (required) - Username
230
+ - `name` (required) - Name
231
+ - `skype` (optional) - Skype ID
232
+ - `linkedin` (optional) - LinkedIn
233
+ - `twitter` (optional) - Twitter account
234
+ - `website_url` (optional) - Website URL
235
+ - `organization` (optional) - Organization name
236
+ - `projects_limit` (optional) - Number of projects user can create
237
+ - `extern_uid` (optional) - External UID
238
+ - `provider` (optional) - External provider name
239
+ - `bio` (optional) - User's biography
240
+ - `location` (optional) - User's location
241
+ - `admin` (optional) - User is admin - true or false (default)
242
+ - `can_create_group` (optional) - User can create groups - true or false
243
+ - `confirm` (optional) - Require confirmation - true (default) or false
244
+ - `external` (optional) - Flags the user as external - true or false(default)
245
+
246
+ ## User modification
247
+
248
+ Modifies an existing user. Only administrators can change attributes of a user.
249
+
250
+ ```
251
+ PUT /users/:id
252
+ ```
253
+
254
+ Parameters:
255
+
256
+ - `email` - Email
257
+ - `username` - Username
258
+ - `name` - Name
259
+ - `password` - Password
260
+ - `skype` - Skype ID
261
+ - `linkedin` - LinkedIn
262
+ - `twitter` - Twitter account
263
+ - `website_url` - Website URL
264
+ - `organization` - Organization name
265
+ - `projects_limit` - Limit projects each user can create
266
+ - `extern_uid` - External UID
267
+ - `provider` - External provider name
268
+ - `bio` - User's biography
269
+ - `location` (optional) - User's location
270
+ - `admin` (optional) - User is admin - true or false (default)
271
+ - `can_create_group` (optional) - User can create groups - true or false
272
+ - `external` (optional) - Flags the user as external - true or false(default)
273
+
274
+ On password update, user will be forced to change it upon next login.
275
+ Note, at the moment this method does only return a `404` error,
276
+ even in cases where a `409` (Conflict) would be more appropriate,
277
+ e.g. when renaming the email address to some existing one.
278
+
279
+ ## User deletion
280
+
281
+ Deletes a user. Available only for administrators.
282
+ This is an idempotent function, calling this function for a non-existent user id
283
+ still returns a status code `200 OK`.
284
+ The JSON response differs if the user was actually deleted or not.
285
+ In the former the user is returned and in the latter not.
286
+
287
+ ```
288
+ DELETE /users/:id
289
+ ```
290
+
291
+ Parameters:
292
+
293
+ - `id` (required) - The ID of the user
294
+
295
+ ## User
296
+
297
+ ### For normal users
298
+
299
+ Gets currently authenticated user.
300
+
301
+ ```
302
+ GET /user
303
+ ```
304
+
305
+ ```json
306
+ {
307
+ "id": 1,
308
+ "username": "john_smith",
309
+ "email": "john@example.com",
310
+ "name": "John Smith",
311
+ "state": "active",
312
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/index.jpg",
313
+ "web_url": "http://localhost:3000/john_smith",
314
+ "created_at": "2012-05-23T08:00:58Z",
315
+ "is_admin": false,
316
+ "bio": null,
317
+ "location": null,
318
+ "skype": "",
319
+ "linkedin": "",
320
+ "twitter": "",
321
+ "website_url": "",
322
+ "organization": "",
323
+ "last_sign_in_at": "2012-06-01T11:41:01Z",
324
+ "confirmed_at": "2012-05-23T09:05:22Z",
325
+ "theme_id": 1,
326
+ "color_scheme_id": 2,
327
+ "projects_limit": 100,
328
+ "current_sign_in_at": "2012-06-02T06:36:55Z",
329
+ "identities": [
330
+ {"provider": "github", "extern_uid": "2435223452345"},
331
+ {"provider": "bitbucket", "extern_uid": "john_smith"},
332
+ {"provider": "google_oauth2", "extern_uid": "8776128412476123468721346"}
333
+ ],
334
+ "can_create_group": true,
335
+ "can_create_project": true,
336
+ "two_factor_enabled": true,
337
+ "external": false
338
+ }
339
+ ```
340
+
341
+ ### For admins
342
+
343
+ Parameters:
344
+
345
+ - `sudo` (required) - the ID of a user
346
+
347
+ ```
348
+ GET /user
349
+ ```
350
+
351
+ ```json
352
+ {
353
+ "id": 1,
354
+ "username": "john_smith",
355
+ "email": "john@example.com",
356
+ "name": "John Smith",
357
+ "state": "active",
358
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/index.jpg",
359
+ "web_url": "http://localhost:3000/john_smith",
360
+ "created_at": "2012-05-23T08:00:58Z",
361
+ "is_admin": false,
362
+ "bio": null,
363
+ "location": null,
364
+ "skype": "",
365
+ "linkedin": "",
366
+ "twitter": "",
367
+ "website_url": "",
368
+ "organization": "",
369
+ "last_sign_in_at": "2012-06-01T11:41:01Z",
370
+ "confirmed_at": "2012-05-23T09:05:22Z",
371
+ "theme_id": 1,
372
+ "color_scheme_id": 2,
373
+ "projects_limit": 100,
374
+ "current_sign_in_at": "2012-06-02T06:36:55Z",
375
+ "identities": [
376
+ {"provider": "github", "extern_uid": "2435223452345"},
377
+ {"provider": "bitbucket", "extern_uid": "john_smith"},
378
+ {"provider": "google_oauth2", "extern_uid": "8776128412476123468721346"}
379
+ ],
380
+ "can_create_group": true,
381
+ "can_create_project": true,
382
+ "two_factor_enabled": true,
383
+ "external": false,
384
+ "private_token": "dd34asd13as"
385
+ }
386
+ ```
387
+
388
+ ## List SSH keys
389
+
390
+ Get a list of currently authenticated user's SSH keys.
391
+
392
+ ```
393
+ GET /user/keys
394
+ ```
395
+
396
+ ```json
397
+ [
398
+ {
399
+ "id": 1,
400
+ "title": "Public key",
401
+ "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=",
402
+ "created_at": "2014-08-01T14:47:39.080Z"
403
+ },
404
+ {
405
+ "id": 3,
406
+ "title": "Another Public key",
407
+ "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=",
408
+ "created_at": "2014-08-01T14:47:39.080Z"
409
+ }
410
+ ]
411
+ ```
412
+
413
+ Parameters:
414
+
415
+ - **none**
416
+
417
+ ## List SSH keys for user
418
+
419
+ Get a list of a specified user's SSH keys. Available only for admin
420
+
421
+ ```
422
+ GET /users/:id/keys
423
+ ```
424
+
425
+ Parameters:
426
+
427
+ - `id` (required) - id of specified user
428
+
429
+ ## Single SSH key
430
+
431
+ Get a single key.
432
+
433
+ ```
434
+ GET /user/keys/:key_id
435
+ ```
436
+
437
+ Parameters:
438
+
439
+ - `key_id` (required) - The ID of an SSH key
440
+
441
+ ```json
442
+ {
443
+ "id": 1,
444
+ "title": "Public key",
445
+ "key": "ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAiPWx6WM4lhHNedGfBpPJNPpZ7yKu+dnn1SJejgt4596k6YjzGGphH2TUxwKzxcKDKKezwkpfnxPkSMkuEspGRt/aZZ9wa++Oi7Qkr8prgHc4soW6NUlfDzpvZK2H5E7eQaSeP3SAwGmQKUFHCddNaP0L+hM7zhFNzjFvpaMgJw0=",
446
+ "created_at": "2014-08-01T14:47:39.080Z"
447
+ }
448
+ ```
449
+
450
+ ## Add SSH key
451
+
452
+ Creates a new key owned by the currently authenticated user.
453
+
454
+ ```
455
+ POST /user/keys
456
+ ```
457
+
458
+ Parameters:
459
+
460
+ - `title` (required) - new SSH Key's title
461
+ - `key` (required) - new SSH key
462
+
463
+ ```json
464
+ {
465
+ "created_at": "2015-01-21T17:44:33.512Z",
466
+ "key": "ssh-dss AAAAB3NzaC1kc3MAAACBAMLrhYgI3atfrSD6KDas1b/3n6R/HP+bLaHHX6oh+L1vg31mdUqK0Ac/NjZoQunavoyzqdPYhFz9zzOezCrZKjuJDS3NRK9rspvjgM0xYR4d47oNZbdZbwkI4cTv/gcMlquRy0OvpfIvJtjtaJWMwTLtM5VhRusRuUlpH99UUVeXAAAAFQCVyX+92hBEjInEKL0v13c/egDCTQAAAIEAvFdWGq0ccOPbw4f/F8LpZqvWDydAcpXHV3thwb7WkFfppvm4SZte0zds1FJ+Hr8Xzzc5zMHe6J4Nlay/rP4ewmIW7iFKNBEYb/yWa+ceLrs+TfR672TaAgO6o7iSRofEq5YLdwgrwkMmIawa21FrZ2D9SPao/IwvENzk/xcHu7YAAACAQFXQH6HQnxOrw4dqf0NqeKy1tfIPxYYUZhPJfo9O0AmBW2S36pD2l14kS89fvz6Y1g8gN/FwFnRncMzlLY/hX70FSc/3hKBSbH6C6j8hwlgFKfizav21eS358JJz93leOakJZnGb8XlWvz1UJbwCsnR2VEY8Dz90uIk1l/UqHkA= loic@call",
467
+ "title": "ABC",
468
+ "id": 4
469
+ }
470
+ ```
471
+
472
+ Will return created key with status `201 Created` on success. If an
473
+ error occurs a `400 Bad Request` is returned with a message explaining the error:
474
+
475
+ ```json
476
+ {
477
+ "message": {
478
+ "fingerprint": [
479
+ "has already been taken"
480
+ ],
481
+ "key": [
482
+ "has already been taken"
483
+ ]
484
+ }
485
+ }
486
+ ```
487
+
488
+ ## Add SSH key for user
489
+
490
+ Create new key owned by specified user. Available only for admin
491
+
492
+ ```
493
+ POST /users/:id/keys
494
+ ```
495
+
496
+ Parameters:
497
+
498
+ - `id` (required) - id of specified user
499
+ - `title` (required) - new SSH Key's title
500
+ - `key` (required) - new SSH key
501
+
502
+ ## Delete SSH key for current user
503
+
504
+ Deletes key owned by currently authenticated user.
505
+ This is an idempotent function and calling it on a key that is already deleted
506
+ or not available results in `200 OK`.
507
+
508
+ ```
509
+ DELETE /user/keys/:key_id
510
+ ```
511
+
512
+ Parameters:
513
+
514
+ - `key_id` (required) - SSH key ID
515
+
516
+ ## Delete SSH key for given user
517
+
518
+ Deletes key owned by a specified user. Available only for admin.
519
+
520
+ ```
521
+ DELETE /users/:id/keys/:key_id
522
+ ```
523
+
524
+ Parameters:
525
+
526
+ - `id` (required) - id of specified user
527
+ - `key_id` (required) - SSH key ID
528
+
529
+ Will return `200 OK` on success, or `404 Not found` if either user or key cannot be found.
530
+
531
+ ## List emails
532
+
533
+ Get a list of currently authenticated user's emails.
534
+
535
+ ```
536
+ GET /user/emails
537
+ ```
538
+
539
+ ```json
540
+ [
541
+ {
542
+ "id": 1,
543
+ "email": "email@example.com"
544
+ },
545
+ {
546
+ "id": 3,
547
+ "email": "email2@example.com"
548
+ }
549
+ ]
550
+ ```
551
+
552
+ Parameters:
553
+
554
+ - **none**
555
+
556
+ ## List emails for user
557
+
558
+ Get a list of a specified user's emails. Available only for admin
559
+
560
+ ```
561
+ GET /users/:id/emails
562
+ ```
563
+
564
+ Parameters:
565
+
566
+ - `id` (required) - id of specified user
567
+
568
+ ## Single email
569
+
570
+ Get a single email.
571
+
572
+ ```
573
+ GET /user/emails/:email_id
574
+ ```
575
+
576
+ Parameters:
577
+
578
+ - `email_id` (required) - email ID
579
+
580
+ ```json
581
+ {
582
+ "id": 1,
583
+ "email": "email@example.com"
584
+ }
585
+ ```
586
+
587
+ ## Add email
588
+
589
+ Creates a new email owned by the currently authenticated user.
590
+
591
+ ```
592
+ POST /user/emails
593
+ ```
594
+
595
+ Parameters:
596
+
597
+ - `email` (required) - email address
598
+
599
+ ```json
600
+ {
601
+ "id": 4,
602
+ "email": "email@example.com"
603
+ }
604
+ ```
605
+
606
+ Will return created email with status `201 Created` on success. If an
607
+ error occurs a `400 Bad Request` is returned with a message explaining the error:
608
+
609
+ ```json
610
+ {
611
+ "message": {
612
+ "email": [
613
+ "has already been taken"
614
+ ]
615
+ }
616
+ }
617
+ ```
618
+
619
+ ## Add email for user
620
+
621
+ Create new email owned by specified user. Available only for admin
622
+
623
+ ```
624
+ POST /users/:id/emails
625
+ ```
626
+
627
+ Parameters:
628
+
629
+ - `id` (required) - id of specified user
630
+ - `email` (required) - email address
631
+
632
+ ## Delete email for current user
633
+
634
+ Deletes email owned by currently authenticated user.
635
+ This is an idempotent function and calling it on a email that is already deleted
636
+ or not available results in `200 OK`.
637
+
638
+ ```
639
+ DELETE /user/emails/:email_id
640
+ ```
641
+
642
+ Parameters:
643
+
644
+ - `email_id` (required) - email ID
645
+
646
+ ## Delete email for given user
647
+
648
+ Deletes email owned by a specified user. Available only for admin.
649
+
650
+ ```
651
+ DELETE /users/:id/emails/:email_id
652
+ ```
653
+
654
+ Parameters:
655
+
656
+ - `id` (required) - id of specified user
657
+ - `email_id` (required) - email ID
658
+
659
+ Will return `200 OK` on success, or `404 Not found` if either user or email cannot be found.
660
+
661
+ ## Block user
662
+
663
+ Blocks the specified user. Available only for admin.
664
+
665
+ ```
666
+ PUT /users/:id/block
667
+ ```
668
+
669
+ Parameters:
670
+
671
+ - `id` (required) - id of specified user
672
+
673
+ Will return `200 OK` on success, `404 User Not Found` is user cannot be found or
674
+ `403 Forbidden` when trying to block an already blocked user by LDAP synchronization.
675
+
676
+ ## Unblock user
677
+
678
+ Unblocks the specified user. Available only for admin.
679
+
680
+ ```
681
+ PUT /users/:id/unblock
682
+ ```
683
+
684
+ Parameters:
685
+
686
+ - `id` (required) - id of specified user
687
+
688
+ Will return `200 OK` on success, `404 User Not Found` is user cannot be found or
689
+ `403 Forbidden` when trying to unblock a user blocked by LDAP synchronization.
690
+
691
+ ### Get user contribution events
692
+
693
+ Get the contribution events for the specified user, sorted from newest to oldest.
694
+
695
+ ```
696
+ GET /users/:id/events
697
+ ```
698
+
699
+ Parameters:
700
+
701
+ | Attribute | Type | Required | Description |
702
+ | --------- | ---- | -------- | ----------- |
703
+ | `id` | integer | yes | The ID of the user |
704
+
705
+ ```bash
706
+ curl --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" https://gitlab.example.com/api/v3/users/:id/events
707
+ ```
708
+
709
+ Example response:
710
+
711
+ ```json
712
+ [
713
+ {
714
+ "title": null,
715
+ "project_id": 15,
716
+ "action_name": "closed",
717
+ "target_id": 830,
718
+ "target_type": "Issue",
719
+ "author_id": 1,
720
+ "data": null,
721
+ "target_title": "Public project search field",
722
+ "author": {
723
+ "name": "Dmitriy Zaporozhets",
724
+ "username": "root",
725
+ "id": 1,
726
+ "state": "active",
727
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png",
728
+ "web_url": "http://localhost:3000/root"
729
+ },
730
+ "author_username": "root"
731
+ },
732
+ {
733
+ "title": null,
734
+ "project_id": 15,
735
+ "action_name": "opened",
736
+ "target_id": null,
737
+ "target_type": null,
738
+ "author_id": 1,
739
+ "author": {
740
+ "name": "Dmitriy Zaporozhets",
741
+ "username": "root",
742
+ "id": 1,
743
+ "state": "active",
744
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png",
745
+ "web_url": "http://localhost:3000/root"
746
+ },
747
+ "author_username": "john",
748
+ "data": {
749
+ "before": "50d4420237a9de7be1304607147aec22e4a14af7",
750
+ "after": "c5feabde2d8cd023215af4d2ceeb7a64839fc428",
751
+ "ref": "refs/heads/master",
752
+ "user_id": 1,
753
+ "user_name": "Dmitriy Zaporozhets",
754
+ "repository": {
755
+ "name": "gitlabhq",
756
+ "url": "git@dev.gitlab.org:gitlab/gitlabhq.git",
757
+ "description": "GitLab: self hosted Git management software. \r\nDistributed under the MIT License.",
758
+ "homepage": "https://dev.gitlab.org/gitlab/gitlabhq"
759
+ },
760
+ "commits": [
761
+ {
762
+ "id": "c5feabde2d8cd023215af4d2ceeb7a64839fc428",
763
+ "message": "Add simple search to projects in public area",
764
+ "timestamp": "2013-05-13T18:18:08+00:00",
765
+ "url": "https://dev.gitlab.org/gitlab/gitlabhq/commit/c5feabde2d8cd023215af4d2ceeb7a64839fc428",
766
+ "author": {
767
+ "name": "Dmitriy Zaporozhets",
768
+ "email": "dmitriy.zaporozhets@gmail.com"
769
+ }
770
+ }
771
+ ],
772
+ "total_commits_count": 1
773
+ },
774
+ "target_title": null
775
+ },
776
+ {
777
+ "title": null,
778
+ "project_id": 15,
779
+ "action_name": "closed",
780
+ "target_id": 840,
781
+ "target_type": "Issue",
782
+ "author_id": 1,
783
+ "data": null,
784
+ "target_title": "Finish & merge Code search PR",
785
+ "author": {
786
+ "name": "Dmitriy Zaporozhets",
787
+ "username": "root",
788
+ "id": 1,
789
+ "state": "active",
790
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png",
791
+ "web_url": "http://localhost:3000/root"
792
+ },
793
+ "author_username": "root"
794
+ },
795
+ {
796
+ "title": null,
797
+ "project_id": 15,
798
+ "action_name": "commented on",
799
+ "target_id": 1312,
800
+ "target_type": "Note",
801
+ "author_id": 1,
802
+ "data": null,
803
+ "target_title": null,
804
+ "created_at": "2015-12-04T10:33:58.089Z",
805
+ "note": {
806
+ "id": 1312,
807
+ "body": "What an awesome day!",
808
+ "attachment": null,
809
+ "author": {
810
+ "name": "Dmitriy Zaporozhets",
811
+ "username": "root",
812
+ "id": 1,
813
+ "state": "active",
814
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png",
815
+ "web_url": "http://localhost:3000/root"
816
+ },
817
+ "created_at": "2015-12-04T10:33:56.698Z",
818
+ "system": false,
819
+ "upvote": false,
820
+ "downvote": false,
821
+ "noteable_id": 377,
822
+ "noteable_type": "Issue"
823
+ },
824
+ "author": {
825
+ "name": "Dmitriy Zaporozhets",
826
+ "username": "root",
827
+ "id": 1,
828
+ "state": "active",
829
+ "avatar_url": "http://localhost:3000/uploads/user/avatar/1/fox_avatar.png",
830
+ "web_url": "http://localhost:3000/root"
831
+ },
832
+ "author_username": "root"
833
+ }
834
+ ]
835
+ ```