Commit Graph

411 Commits

Author SHA1 Message Date
Eric fb5b2d8d0e Extending API for protected branches 2017-08-02 10:16:17 +00:00
Kamil Trzciński 8ffd40cee7 Merge branch '34519-extend-api-group-secret-variable' into 'master'
Extend API: Group Secret Variable

Closes #34519

See merge request !12936
2017-08-01 09:29:50 +00:00
Rémy Coutable 4e3e0dc8d4
DRY the branches API requirements definition
Signed-off-by: Rémy Coutable <remy@rymai.me>
2017-07-27 14:29:42 +02:00
Sean McGivern 1162257080 Merge branch 'issue_34622' into 'master'
Group milestones API endpoint

Closes #34622

See merge request !12819
2017-07-25 12:52:47 +00:00
Oswaldo Ferreira 33dc5171e5 Resolve "More RESTful API: include resource URLs in responses" 2017-07-25 09:35:45 +00:00
Felipe Artur c5c9dce270 Add group milestones API endpoint 2017-07-21 11:00:00 -03:00
Shinya Maeda b539951768 Ini 2017-07-19 20:50:05 +09:00
Timothy Andrew 6f1922500b Initial attempt at refactoring API scope declarations.
- Declaring an endpoint's scopes in a `before` block has proved to be
  unreliable. For example, if we're accessing the `API::Users` endpoint - code
  in a `before` block in `API::API` wouldn't be able to see the scopes set in
  `API::Users` since the `API::API` `before` block runs first.

- This commit moves these declarations to the class level, since they don't need
  to change once set.
2017-06-28 07:17:13 +00:00
DJ Mountney e1d1a5240c Merge branch 'dz-api-x-frame' into 'security-9-2'
Restrict API X-Frame-Options to same origin

See merge request !2103
2017-06-08 09:54:24 -07:00
Mark Fletcher ad3e180ed3 Introduce an Events API
* Meld the following disparate endpoints:
 * `/projects/:id/events`
 * `/events`
 * `/users/:id/events`
+ Add result filtering to the above endpoints:
 * action
 * target_type
 * before and after dates
2017-06-06 20:16:41 +08:00
Alejandro Rodríguez 671284ba37 Add feature toggles through Flipper 2017-05-31 21:06:01 +00:00
Shinya Maeda fbd3b3d8a2 Add API support for pipeline schedule 2017-05-30 23:55:08 +09:00
Ruben Davila 5c921809cd Bugfix: Always use the default language when generating emails.
There was a race condition issue when the application was generating an
email and was using a language that was previously being used in other
request.
2017-05-25 10:22:45 -05:00
Valery Sizov 5004579b15 Merge branch 'master' of gitlab.com:gitlab-org/gitlab-ce into mia_backort[ci skip] 2017-05-05 16:59:31 +03:00
Valery Sizov 387c4b2c21 Backport of multiple_assignees_feature [ci skip] 2017-05-04 17:11:53 +03:00
Ruben Davila dbd1bdaeed More updates for translations plus some refactoring. 2017-05-03 21:08:43 -05:00
Timothy Andrew dd99622347
API routes referencing a specific issue should use the issue `iid`
- As opposed to the issue `id` that was previously being used.
- This brings the API routes closer to the web interface's routes.
- This is specific to API v4.
2017-03-07 13:06:42 +05:30
Kamil Trzciński b63c41e12e Merge branch 'zj-builds-to-jobs-api' into 'master'
Rename builds to jobs in the API

Closes #28515

See merge request !9463
2017-03-06 16:36:16 +00:00
Pawel Chojnacki 9cc0ff8f46 Cleanup common code in Unique Ips tests 2017-03-06 15:41:25 +01:00
Pawel Chojnacki 8993801f0c Test various login scenarios if the limit gets enforced 2017-03-06 15:41:25 +01:00
Z.J. van de Weg 111748ea89 Rename Builds to Jobs in the API
Fixes gitlab-org/gitlab-ce#28515

[ci skip]
2017-03-06 14:34:07 +01:00
Toon Claes 59e7d04bc7 Expose pipelines as PipelineBasic `projects/:id/pipelines`
The `projects/:id/pipelines` exposed a lot of extra details
that are superfluous and it was taking extra resources to fetch them.

To get more details about a pipeline, use
`projects/:id/pipelines/:pipeline_id`.
2017-03-03 09:52:04 +01:00
Sean McGivern b18646040c Merge branch '27532_api_changes' into 'master'
Use iids as filter parameter

Closes #27532

See merge request !9096
2017-03-03 06:32:58 +00:00
Jarka Kadlecova 17ee1e1a63 Use iids as filter parameter 2017-03-02 13:17:39 +01:00
Toon Claes 260cc57838 Expose ApplicationSetting visibility settings as String
Use strings for the ApplicationSetting properties:
 - restricted_visibility_levels
 - default_project_visibility
 - default_snippet_visibility
 - default_group_visibility
2017-03-02 12:15:25 +01:00
Toon Claes 209856166e Expose Snippet VisibilityLevel as String 2017-03-02 12:15:24 +01:00
Robert Schilling c280acb00b Backport API to V3 2017-02-28 08:32:39 +01:00
Kamil Trzciński 3e8d63293e Merge branch 'feature/runners-v4-api' into 'master'
Add Runner registration/deletion API

See merge request !9246
2017-02-27 11:46:55 +00:00
Robert Schilling 2ac84e36f9 Backport groups API to V3 2017-02-24 10:31:44 +01:00
Robert Schilling 0b402e11e3 Remove deprecated `upvotes` and `downvotes` from the notes API 2017-02-22 13:07:49 +01:00
Rémy Coutable 87411889b9 Merge branch '22132-rename-branch-name-params-to-branch' into 'master'
Standardize branch name params as `branch` on V4 API

Closes #22132

See merge request !8936
2017-02-22 11:47:13 +00:00
Oswaldo Ferreira c79bbe26ab Change branch_name param to branch throughout V4 API 2017-02-21 16:33:14 -03:00
Robert Schilling 55f2425a67 API: Make subscription API more RESTfuL 2017-02-21 17:44:44 +01:00
Robert Schilling 32691ffd4a Backport Todos API to V3 2017-02-21 12:01:18 +01:00
Robert Schilling ce54a801fe Backport API to v3 2017-02-17 09:05:24 +01:00
Tomasz Maczukin e25f26e550
Rename API::Ci to API::Runner 2017-02-16 01:30:46 +01:00
Tomasz Maczukin 618ce94164
Add Runner registration/deletion API 2017-02-16 01:16:41 +01:00
Oswaldo Ferreira 8adc356902 Remove deprecated templates endpoints in V4 2017-02-13 13:59:17 -02:00
Jarka Kadlecova 88d610c60e Add member: Always return 409 when a member exists 2017-02-10 15:53:01 +01:00
Robert Schilling 67f5522d2e Remove /projects/:id/keys/.. endpoints 2017-02-07 14:14:15 +01:00
Robert Schilling 5985b55769 Remove deprecated 'expires_at' from project snippets API 2017-02-07 12:16:00 +01:00
Oswaldo Ferreira c2d64d6702 Remove deprecated MR and Issue endpoints and preserve V3 namespace 2017-02-06 10:12:20 -02:00
Oswaldo Ferreira cadef80275 Remain V3 endpoint unchanged 2017-01-30 17:00:21 -02:00
Rémy Coutable c28b0a539d Don't instrument 405 Grape calls
Fixes #26051.

Signed-off-by: Rémy Coutable <remy@rymai.me>
2017-01-09 10:02:52 +01:00
Timothy Andrew 7fa06ed55d Calls to the API are checked for scope.
- Move the `Oauth2::AccessTokenValidationService` class to
  `AccessTokenValidationService`, since it is now being used for
  personal access token validation as well.

- Each API endpoint declares the scopes it accepts (if any). Currently,
  the top level API module declares the `api` scope, and the `Users` API
  module declares the `read_user` scope (for GET requests).

- Move the `find_user_by_private_token` from the API `Helpers` module to
  the `APIGuard` module, to avoid littering `Helpers` with more
  auth-related methods to support `find_user_by_private_token`
2016-12-16 16:29:31 +05:30
Guyzmo fde754e267 API: Endpoint to expose personal snippets as /snippets
Adding the necessary API for the new /snippets Restful resource
added with this commit. Added a new Grape class `Snippets`, as
well as a `PersonalSnippet` entity.

Issue: #20042
Merge-Request: !6373
Signed-off-by: Guyzmo <guyzmo+gitlab+pub@m0g.net>
2016-12-01 19:07:49 +01:00
Rémy Coutable 626d5e555a Merge branch 'api-order-mounts' into 'master'
Sort API mounts

## What does this MR do?

Sort the API mounts.

## Why was this MR needed?

The API mounts are unsorted.

See merge request !6831
2016-10-13 16:03:22 +00:00
Robert Schilling 2273b5d6d6 Sort API mounts 2016-10-13 12:52:51 +02:00
Robert Speicher 58e2b44afe Merge branch 'api-version' into 'master'
API: Version information

## What does this MR do?

Adds a new endpoint to retrieve the version information.

## Why was this MR needed?

Clients can now use this information to enable/disable certain API features depending on the version.  

## What are the relevant issue numbers?

Closes #22608, https://gitlab.com/gitlab-org/gitlab-ce/issues/23148

See merge request !6822
2016-10-12 18:38:02 +00:00
Robert Schilling b998479c81 API: Version information 2016-10-12 16:47:35 +02:00
Thomas Balthazar b9b13ea801 Create a new /templates API namespace
The /licenses, /gitignores and /gitlab_ci_ymls endpoints are now also
available under a new /templates namespace. Old endpoints will be
deprecated when GitLab 9.0.0 is released.
2016-10-12 11:09:41 +02:00
Dmitriy Zaporozhets 137ebcfb3c Replace undefined Grape routing code from 400 to 404
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10 16:32:32 +03:00
Dmitriy Zaporozhets d6cfc0042e Catch any undefined API routing and return 400 Bad Request
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-10-10 16:32:32 +03:00
Andre Guedes 41d70ea300 Added Issue Board API support
- Includes documentation and tests
2016-10-05 13:12:07 -03:00
Achilleas Pipinellis 7150774530 Keep API mounts in alphabetical order 2016-09-25 11:28:23 +03:00
Marc Siegfriedt 48333b9da3 Add notification_settings API calls
Use NotificationSetting::EMAIL_EVENTS for params
2016-09-09 17:08:06 +00:00
Katarzyna Kobierska ca1f5ede84 Move lint to api from ci/api 2016-09-07 12:10:49 +02:00
Robert Speicher 6a58af3a4a Add BroadcastMessage API implementation 2016-08-31 17:03:18 -03:00
Douwe Maan bbd9a6fe40 Merge branch 'dz-merge-request-version' 2016-08-25 12:59:21 -05:00
Stan Hu 170885edd6 Add Sentry logging to API calls
Closes #21043
2016-08-24 12:09:51 -07:00
Dmitriy Zaporozhets 6db65143db
Merge branch 'master' into dz-merge-request-version
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-08-19 13:01:58 +03:00
Z.J. van de Weg 47d6f286eb Add deployment endpoints 2016-08-18 21:10:52 +02:00
Z.J. van de Weg de7b8e51b8 Add endpoints for pipelines 2016-08-18 16:56:39 +02:00
Dmitriy Zaporozhets 5e95c0b8d2
Merge branch 'master' into dz-merge-request-version
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-08-15 17:27:22 +03:00
Rémy Coutable 29850364ec New AccessRequests API endpoints for Group & Project
Also, mutualize AccessRequests and Members endpoints for Group &
Project.
New API documentation for the AccessRequests endpoints.

Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-08-10 19:07:05 +02:00
Connor Shea c53b599e61
Retain old behavior 2016-08-09 09:42:49 -06:00
Dmitriy Zaporozhets 9a5f40878c
Add API to list merge request diff versions
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2016-08-03 11:32:29 +03:00
Z.J. van de Weg 1b72256fa1 Use Grape DSL for environment endpoints
Also a couple of minor edits for this branch are included
2016-07-29 20:35:38 +02:00
Z.J. van de Weg 84cd212095 Add API support for environments 2016-07-29 13:54:45 +02:00
Douglas Barbosa Alexandre a1f224d3f7 Add Todos API 2016-07-01 10:49:34 +02:00
Drew Blessing 1910fd05ae Rename Licenses API to License Templates API 2016-06-27 14:42:05 -05:00
ZJ van de Weg 27bf7ae59e Refactor Gitlab::Gitignores 2016-06-20 14:48:28 -05:00
Z.J. van de Weg 05a4a586b5 Add endpoints for award emoji on notes
Docs also added.
2016-06-17 21:02:51 +02:00
Z.J. van de Weg 34558315d9 Sort API endpoints and implement feedback 2016-06-17 20:08:16 +02:00
Z.J. van de Weg 3f88221c2d Add endpoints for Award Emoji
This only supports Issues and MergeRequests right now because of the
consistency of the routes those models provide.
2016-06-17 20:07:17 +02:00
Patricio Cano 23457cba44 Added missing mount point for Sidekiq Metrics API, after it got lost on rebase. 2016-06-17 11:49:27 -05:00
Zeger-Jan van de Weg e166a8022a Backend for a gitignores dropdown 2016-05-20 15:58:36 -05:00
Ahmad Sherif 0c22698bd4 Add API endpoints for un/subscribing from/to a label
Closes #15638
2016-05-12 22:48:09 +02:00
Rémy Coutable 5589dcf8db Fix a few places where autoloading would fail
- Fix naming of API::CommitStatuses
- Ensure we use require_dependency instead of require
- Ensure the namespace is right in lib/api/api.rb, otherwise, we
  might require Grape::API::Helpers which defines the `#params` method.
  This is to avoid requiring a file multiple times and getting an "Already
  initialized constant" error.

Signed-off-by: Rémy Coutable <remy@rymai.me>
2016-05-10 11:51:19 +02:00
Anton Davydov 073c3d15c7 Initial implementation if license template selector and /licenses/:key API endpoint 2016-04-18 14:47:50 +02:00
Tomasz Maczukin 128be3c010 Add basic runners management API
- add feature to list runners
- add feature to show runners details
- add feature to delete runner
- add feature to update runner
2016-02-19 13:18:46 +01:00
Tomasz Maczukin 405b82af23 Merge branch 'master' into ci/api-builds
* master: (51 commits)
  Fix version
  Fix specs and rubocop warnings
  Improve the consistency of commit titles, branch names, tag names, issue/MR titles, on their respective project pages
  fixed LDAP activation on login to use new ldap_blocked state
  Fix Admin/Users view to position buttons without spacing magic
  Update to Go 1.5.3
  Fix the undefinded variable error in Project's safe_import_url method
  Update CHANGELOG [ci skip]
  Add some cosmetic changes to variables API documentation [ci skip]
  Fix misaligned edit button in milestone collection partial
  Update button styles for Milestones#show
  Modify builds API documentation style [ci skip]
  Modify :ci_variable factory
  Ensure the API doesn't return notes that the current user shouldn't see
  Add 'Build' prefix to Variables entry name in API docs index
  Fix some typos
  Add spec for Note#cross_reference_not_visible_for?
  Remove (invalid) timestamp formatting
  Move `BroadcastMessage#status` to a helper since it's presentational
  Update CHANGELOG
  ...

Conflicts:
	doc/api/README.md
	lib/api/api.rb
	lib/api/entities.rb
2016-01-14 13:30:18 +01:00
Tomasz Maczukin efb3395b4f Remove blank line 2016-01-12 19:32:44 +01:00
Tomasz Maczukin ab2c6cc01f Add some fixes 2016-01-12 18:32:18 +01:00
Tomasz Maczukin ea4777ff50 Add features for list and show details of variables in API 2015-12-31 16:26:54 +01:00
Tomasz Maczukin f4e7a8893d Add builds API (listing, showing trace) 2015-12-24 19:11:30 +01:00
Kamil Trzcinski 3d9ce37a48 Reimplement Trigger API 2015-12-11 18:02:09 +01:00
Dmitriy Zaporozhets a5ab56fd91
Move git tags API to separate file
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-11-12 15:41:13 +01:00
Jason Lee 3d613fe1e8 Fix API::APIHelpers -> API::Helpers;
Rails Autoload find file to require is use , APIHelpers -> api_helpers.rb, not helpers.rb;
2015-10-23 11:42:57 +08:00
Kamil Trzcinski 914cfbd2f1 Implement Commit Status API 2015-10-12 11:53:49 +02:00
Artem V. Navrotskiy 8ec59bd18b Add API method for get user by ID of an SSH key 2015-09-03 15:47:22 +03:00
Dmitriy Zaporozhets c2ee6862c8
API to set application settings for admin
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2015-07-03 16:50:21 +02:00
jubianchi 79d0b69345 Send 500 errors as JSON in the API 2015-04-27 21:27:02 +02:00
Dmitriy Zaporozhets e890582681 Rubocop enabled for: Use spaces inside hash literal braces 2015-02-02 20:36:54 -08:00
Valery Sizov e41dadcb33 Doorkeeper integration 2014-12-24 15:38:07 +02:00
Dmitriy Zaporozhets f6491508fe
Split group members api
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-10-29 13:31:23 +02:00
Robert Schilling 9284038dbe Add, delete labels via API 2014-08-13 12:28:19 +02:00
Dmitriy Zaporozhets 9b276f0003
Move branches api to separate class
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-31 16:31:53 +03:00
Dmitriy Zaporozhets 7c60713e82
Move project members api to separate file
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-03-17 13:44:54 +02:00
Dmitriy Zaporozhets 8686d09d3e Merge branch 'feature/api_fle_encoded' into 'master'
Complete api files CRUD

Adds ability to read file from repository with content encoded with Base64.
2014-02-18 14:15:40 +00:00
Dmitriy Zaporozhets 6cf39fe10d
Extract commits API to separate file
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-02-18 12:41:21 +02:00
Dmitriy Zaporozhets 3c742dad27
Fixed bug with json files content being escaped in api
After update to recent grape env['api.format'] does not work any more.
Use content_type for rendering raw json files content

Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2014-02-18 11:40:45 +02:00
Dmitriy Zaporozhets 0759dd4513
Namespaces API for admin users
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2013-11-15 15:24:10 +02:00
Dmitriy Zaporozhets 0b67606af6
New API: create file in repo
Signed-off-by: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
2013-11-07 18:53:09 +02:00
Dmitriy Zaporozhets d636ad49bf API: set gitlab-ci service for project 2013-10-29 16:39:46 +02:00
Dmitriy Zaporozhets 439f399bec Remove all team resources except models. Move models to deprecated directory 2013-06-18 21:22:34 +03:00
Dmitriy Zaporozhets b05600f28b Split Project api on several parts: deploy_keys, hooks, snippets etc 2013-06-06 12:37:51 +03:00
Dmitriy Zaporozhets c3ba0ee64b Merge branch 'feature_teams_api' of https://github.com/former03/gitlabhq into former03-feature_teams_api
Conflicts:
	doc/api/README.md
2013-05-27 15:05:01 +03:00
Dmitriy Zaporozhets 068cf2f467 split repositories and projects api 2013-05-23 12:23:47 +03:00
Christian Simon 0ebfa5e5a2 [FEATURE] Basic user_teams api
* Closing #3066
 * Closing #3609
2013-05-21 23:13:30 +02:00
Dmitriy Zaporozhets 634cbd7138 Refactor API classes. So api classes like Gitlab::Issues become API::Issues 2013-05-14 15:33:31 +03:00