Sebastian Ziebell
7cc4339f71
API: changed status codes for project hooks functions
...
Different status codes in the API lib are returned on hook creation, update or deletion.
If a required parameter is not given (e.g. `url` in `/projects/:id/hooks/:hook_id`) status
code 400 (Bad request) is returned. On hook deletion a 200 status code is returned, regardless if
the hook is present or not. This makes the DELETE function an idempotent operation. Appropriate tests
are added to check these status codes.
2013-02-12 17:44:42 +01:00
Sebastian Ziebell
2bd955961c
Changed function to not_found
.
...
Instead of using funtion `error!` the function `not_found!` is used to return 404 error. Adjusted documentation accordingly.
2013-02-09 21:01:17 +01:00
Sebastian Ziebell
40e7846f3e
Status code 404 returned when retrieving non existent branch (issue #2922 )
...
Accessing a repository branch that does not exist returns a 404 error instead
of 200 now. Added a test.
2013-02-08 17:04:08 +01:00
Sebastian Ziebell
9544f90389
Adding a project hook returns status code 400 if url is not given
...
When adding a project hook a url must be specified or a 400 error code is returned
* Specs added to check status code on handling project hooks
* refactored code, extracted a method
2013-02-08 16:48:05 +01:00
Sebastian Ziebell
818caf0b5d
API: refined status code handling when adding or updating a project member
...
When a user is added to a project that is already a member of, a status code 201 is now returned to
signal an idempotent operation. If something fails then instead of returning error code 404 different
more specific error codes are returned. Status code 400 (Bad request) is returned when a required
attribute, e.g. `access_level` is not given or 422 if there is a semantic error, e.g. should
the `access_level` have an unsupported value.
Specs are added to check these status codes.
2013-02-08 14:33:29 +01:00
Sebastian Ziebell
8045a81bcf
Merge branch 'master' into fixes/api
2013-02-08 10:32:42 +01:00
Dmitriy Zaporozhets
4e1757bfda
Merge branch 'gitlab-shell' of dev.gitlabhq.com:gitlab/gitlabhq
2013-02-07 08:26:39 +00:00
Dmitriy Zaporozhets
8ae1d812dc
deploy keys support for gitlab-shell api
2013-02-07 09:56:13 +02:00
Sebastian Ziebell
bb24275f8d
Status code 400 is returned if body is missing on note creation.
...
If a note is created with a POST request via API (`/projects/:id/notes`) status
code 400 is returned instead of 404. The resource itself exists but the request
is incomplete. Specs added to check different status codes when accessing, creating
and updating notes.
2013-02-06 17:11:00 +01:00
Sebastian Ziebell
5be0265fe7
Status code 400 returned if title not given in a milestone (via API)
...
If a milestone is created via API but no title given then status code 400 (Bad request)
is returned instead of 404. A small helper method handles the errors collection of a
milestone.
2013-02-06 17:10:29 +01:00
Sebastian Ziebell
f978a71f41
Creating MR comment without a note returns status code 400 (Bad request)
...
Creating a comment to an existing merge request via API without providing a note
returns a status code 400 now, suggesting a bad request. The reason for this
is the resource itself (MR) exists but the required property is not set.
2013-02-06 17:02:30 +01:00
Sebastian Ziebell
3f4e215c80
Extracted helper method to avoid code duplication
2013-02-06 17:02:30 +01:00
Sebastian Ziebell
413952ff94
Creating or updating a MR returns more informative status codes.
...
Using the API library to create or update a merge request at the moment a 404 error is returned.
This is fine when the merge request in question does not exist, but does not provide good
information that for example a required attribute is missing.
A status code of 400 (Bad request) is returned when creating or updating a merge request
when either `source_branch` or `target_branch` is missing. A status code of 409 is returned
when `source_branch` and `target_branch` are the same. Tests are added for these cases.
2013-02-06 16:57:00 +01:00
Dmitriy Zaporozhets
bd3288e320
api check call
2013-02-05 15:55:49 +02:00
Dmitriy Zaporozhets
70e3bffd95
Fixed: post-receive, project remove, tests
2013-02-05 12:47:50 +02:00
Dmitriy Zaporozhets
935b6ae653
Internal API
2013-02-04 17:53:43 +02:00
Christian Simon
33c48ecd35
Code deduplication using inheritance for GroupDetail
2013-02-03 19:38:33 +01:00
Christian Simon
149ccd5d91
Fix groups api: differ between users and admin
2013-02-01 15:00:12 +01:00
Felix Gilcher
ce6436b98a
Don't crash when removing a user that's not project member
...
The attempt to revoke project access for a user that was not member of the
project results in a 500 Internal Server error where it actually should
result in a 200 OK since after the operation, the user is not member of
the project. This turns the operation into an idempotent call that can
be repeated with no ill effects.
Updated the spec and changed the code accordingly. However, the result differs
slightly, as we can't return the users project access level if the user was not
member. I'm not aware if anybody relies on the result of this call.
Fixes #2832
2013-02-01 13:53:35 +00:00
Christian Simon
8edc6b6a8c
Add api for creating/listing/viewing groups
2013-02-01 12:11:19 +01:00
Dmitriy Zaporozhets
5857a7a9ce
Merge pull request #2839 from m4tthumphrey/protected-branches-api
...
Added methods to protect and unprotect branches in from the API
2013-01-31 10:44:20 -08:00
Dmitriy Zaporozhets
fd1b9fdc12
Merge branch 'extend_user_api' of https://github.com/bladealslayer/gitlabhq into bladealslayer-extend_user_api
...
Conflicts:
spec/requests/api/users_spec.rb
2013-01-31 13:00:50 +02:00
Matt Humphrey
2c7554e897
Added methods to protect and unprotect branches
2013-01-31 09:26:03 +00:00
Dmitriy Zaporozhets
193a5624b2
add path and path_with_namespace to api project entity
2013-01-31 09:11:35 +02:00
Micah Huff
1694dc8fe2
Expose MergeRequest object as a notable in the API to allow for easy retrieval of comments
2013-01-29 21:15:13 -08:00
Dmitriy Zaporozhets
6f05ea4f6e
Improve CreateContext call. Fixed test
2013-01-18 20:21:13 +02:00
GitLab
232d61d598
Refactor project creation. Added logout link to profile page
2013-01-17 17:35:57 +02:00
Dmitriy Zaporozhets
4c93d77f24
Merge pull request #2460 from calmh/expose-namespace
...
'namespace' should be exposed via the API
2013-01-16 05:05:45 -08:00
Dmitriy Zaporozhets
afbdbb0c95
Rspec fixes
2013-01-04 18:50:31 +02:00
Jakob Borg
0f07922f19
'namespace' should be exposed via the API
...
Since it's now an integral part of the project name, it should be
visible via the API.
2013-01-02 21:31:20 +01:00
Dmitriy Zaporozhets
67896ea9a2
Fixed missing current user for issue observer
2013-01-02 20:25:25 +02:00
Dmitriy Zaporozhets
d431e43392
Fix few bugs and tests after refactoring ownership logic
2013-01-02 19:32:34 +02:00
Riyad Preukschas
056fa05b86
Remove path parameter from projects API
2012-12-22 20:06:18 +01:00
Riyad Preukschas
8f01190eb5
Remove all references tp the project code parameter from the API
2012-12-21 18:47:04 +01:00
Riyad Preukschas
931ec399bd
Remove the code parameter from the projects API
2012-12-21 18:43:46 +01:00
Valeriy Sizov
77d632890b
refactoring gfm_autocomplete
2012-12-20 20:52:12 +02:00
Boyan Tabakov
e954438a1d
Extended users API to support updating and deleting users.
...
Also added tests.
2012-12-18 21:24:31 +02:00
Cyril
d3b8952f8f
Add username to User and UserBasic entities in API and in examples in doc.
2012-12-12 18:51:20 +01:00
Cyril
63d9373aa8
Validates presence of User#name
...
The 2 reasons are :
- creation of user fail if name is empty : in after_save, it tries to create a
namespace with namespace.name = user.name and namespece validates presence
Namespace#name
- in the web app links to team members are broken with empty User#name because
they are of the form <a href'...'> user.name </a>
2012-12-12 17:53:43 +01:00
Dmitriy Zaporozhets
439d03bbed
Fix namespace api autocomplete
2012-12-12 12:54:28 +02:00
Nihad Abbasov
270a43370a
API: get a single wall note
2012-12-01 02:20:45 -08:00
Nihad Abbasov
42ef89c98a
API: expose created date for project hooks and user SSH keys
2012-12-01 02:04:44 -08:00
Nihad Abbasov
ee6187bd55
API: ability to create a wall note
2012-11-29 15:52:56 -08:00
Nihad Abbasov
2a98a060ca
API: don't expose 'updated_at' for notes
2012-11-29 14:41:24 -08:00
Nihad Abbasov
961cb285b0
API: restore broken merge request commenting
2012-11-29 12:11:01 -08:00
Nihad Abbasov
c946bf886c
API: create new notes
2012-11-29 12:11:00 -08:00
Nihad Abbasov
1c5aa848ce
API: get a single note
2012-11-29 12:11:00 -08:00
Nihad Abbasov
9a4974b760
correct example
2012-11-29 12:11:00 -08:00
Nihad Abbasov
01eab583d0
API: list wall, snippet and issue notes
2012-11-29 12:11:00 -08:00
Dmitriy Zaporozhets
0693215c30
Fixed spinach and tests. Build should pass now
2012-11-23 22:55:38 +02:00
Dmitriy Zaporozhets
0e1635a68a
Fixing requests after namespaces. Fixed admin bug with access to project
2012-11-23 22:25:28 +02:00
Dmitriy Zaporozhets
9304d049de
Fixed some tests and snippet colorize
2012-11-23 22:31:09 +03:00
Dmitriy Zaporozhets
c50ec72b52
Deprecate code for Project. Use title and path
2012-11-23 21:11:09 +03:00
Saito
6cec9ed328
linguist will take care of this
2012-11-10 01:36:55 +08:00
Valeriy Sizov
d6a5e3dad7
Merge pull request #1735 from NARKOZ/api
...
API fixes
2012-11-07 03:50:42 -08:00
Valeriy Sizov
4281de3640
API: review 2
2012-10-25 13:38:55 +03:00
Valeriy Sizov
e6cdfb607a
API: tests for merge_requests
2012-10-25 13:13:01 +03:00
Valeriy Sizov
77bc110107
API: help page and comment
2012-10-22 23:09:21 +03:00
Valeriy Sizov
6ffd2f3db6
Changes after review
2012-10-22 23:09:21 +03:00
Valeriy Sizov
93e8d426c5
API: merge request: post comment call
2012-10-22 23:09:21 +03:00
Valeriy Sizov
b32a8eea93
API: MergeRequest: authorization
2012-10-22 23:09:21 +03:00
Valeriy Sizov
524b907042
API: MergeRequest refactoring
2012-10-22 23:09:21 +03:00
Valeriy Sizov
5a89934af8
API: update merge request call
2012-10-22 23:09:21 +03:00
Valeriy Sizov
fe59547ae5
API: create merge request
2012-10-22 23:09:21 +03:00
Valeriy Sizov
bd049e5e7c
API:merge request show && list
2012-10-22 23:09:21 +03:00
Nihad Abbasov
00325a733a
name and password_confirmation not required to create a user via API
2012-10-19 03:34:18 -07:00
Nihad Abbasov
c610206321
fix mass-assignment error in user create API
2012-10-19 03:23:10 -07:00
jozefvaclavik
d1a18d038d
Update lib/api/projects.rb
...
Added methods for listing one project hook and editing hooks.
GET /project/:id/hooks/:hook_id
PUT /project/:id/hooks/:hook_id
2012-10-12 10:30:09 +03:00
Nihad Abbasov
61f12da3a5
API: add project snippets listing
2012-10-08 02:13:53 -07:00
Nihad Abbasov
ad5b5d1e51
projects API should return info about deleted hook
2012-10-08 01:54:50 -07:00
Valeriy Sizov
e7608cd6f9
API: private token via header
2012-10-02 18:43:35 +03:00
Valeriy Sizov
2e1c3c52bc
#1606 Fixes
2012-10-02 18:08:04 +03:00
Valeriy Sizov
e9c356092b
#1606 API private token via the header
2012-10-02 18:02:21 +03:00
Valeriy Sizov
d104df49e7
fix TYPO
2012-10-02 16:34:20 +03:00
Valeriy Sizov
825081174a
#1585 Api for user creation: base implementation
2012-10-02 12:46:01 +03:00
Nihad Abbasov
b62445813d
API: SSH keys belong to user entity
2012-09-21 04:49:28 -07:00
Nihad Abbasov
4a072be2d7
API: commits belong to project repository
2012-09-21 04:34:07 -07:00
Dmitriy Zaporozhets
131553627d
Merge pull request #1521 from NARKOZ/api
...
API for project team members
2012-09-21 04:19:16 -07:00
Nihad Abbasov
25b745271a
add API for project team members
2012-09-21 03:23:17 -07:00
Dmitriy Zaporozhets
10d3a30b25
APi for commits. Better api docs
2012-09-21 13:22:30 +03:00
Nihad Abbasov
b08d33f6a9
API: return 401 for invalid session
2012-09-20 08:38:08 -07:00
Nihad Abbasov
3dd940d4cb
API: extend UserLogin entity from UserBasic
2012-09-20 08:36:43 -07:00
Dmitriy Zaporozhets
9aafe77e70
I want be able to get token via api. Used for mobile applications
2012-09-20 17:45:07 +03:00
Nihad Abbasov
37817cc31d
API: expose project id for milestones
2012-09-20 18:38:34 +06:00
Alex Denisov
c83af0dfe7
Uses attributes_for_keys
2012-09-16 22:44:20 +03:00
Alex Denisov
b6c6a5b159
Merge branch 'master' into ssh_keys_api
2012-09-16 22:37:50 +03:00
Alex Denisov
b896880eb4
Method name changed
2012-09-16 20:08:57 +03:00
Alex Denisov
549c4c2202
API attributes refactored
2012-09-16 19:51:04 +03:00
Alex Denisov
87d40fd276
Docs added
2012-09-16 18:21:59 +03:00
Alex Denisov
c23eb40829
SSH Keys API implemented
2012-09-16 17:52:06 +03:00
miks
6d76e000d0
Add authorization to hooks requests
2012-09-10 16:50:01 +03:00
miks
2e34a6d3c4
Merge branch 'master' into project_hooks_api
2012-09-10 16:47:31 +03:00
Alex Denisov
a065557208
Common errors method added
2012-09-10 13:49:00 +03:00
Alex Denisov
915dac0055
Error throwing moved to api_helper
2012-09-10 10:41:46 +03:00
randx
b565f33472
Auth for API
2012-09-10 09:06:11 +03:00
miks
3b5a90bdf6
Projects hooks API implemented
2012-09-08 20:51:12 +03:00
miks
27e4436507
Return empty body
2012-09-08 20:01:08 +03:00
miks
4226458faf
Merge branch 'master' into project_users_api
2012-09-08 10:50:24 +03:00
miks
909c8c345d
Make project users API more RESTful
2012-09-06 23:49:29 +03:00
miks
e3b1f62c6b
convert params hash to array
2012-09-06 00:13:25 +03:00