User's Projects API

Description

Right now, you can not view another user's owned public projects. You can only see what projects you own. You could use the /projects search parameter but it isn't reliable enough to ONLY get the projects of the user that you are looking for. This API would be very useful for GL-Resume

Proposal

Add a list user's projects API endpoint. When accessed without authentication, only public projects should be returned.

GET /users/:id/projects

Links / references

Documentation

List a user's projects

List public repositories for the specified user. When accessed without authentication, only public projects are returned.

GET /users/:id/projects

Parameters:

Attribute Type Required Description
id integer/string yes The ID of the user
archived boolean no Limit by archived status
visibility string no Limit by visibility public, internal, or private
order_by string no Return projects ordered by id, name, path, created_at, updated_at, or last_activity_at fields. Default is created_at
sort string no Return projects sorted in asc or desc order. Default is desc
search string no Return list of authorized projects matching the search criteria
simple boolean no Return only the ID, URL, name, and path of each project
starred boolean no Limit by projects starred by the current user

Example response:

[
  {
    "id": 9,
    "description": "foo",
    "default_branch": "master",
    "tag_list": [],
    "archived": false,
    "visibility": "internal",
    "ssh_url_to_repo": "git@gitlab.example.com/html5-boilerplate.git",
    "http_url_to_repo": "http://gitlab.example.com/h5bp/html5-boilerplate.git",
    "web_url": "http://gitlab.example.com/h5bp/html5-boilerplate",
    "name": "Html5 Boilerplate",
    "name_with_namespace": "Experimental / Html5 Boilerplate",
    "path": "html5-boilerplate",
    "path_with_namespace": "h5bp/html5-boilerplate",
    "issues_enabled": true,
    "merge_requests_enabled": true,
    "wiki_enabled": true,
    "jobs_enabled": true,
    "snippets_enabled": true,
    "created_at": "2016-04-05T21:40:50.169Z",
    "last_activity_at": "2016-04-06T16:52:08.432Z",
    "shared_runners_enabled": true,
    "creator_id": 1,
    "namespace": {
      "id": 5,
      "name": "Experimental",
      "path": "h5bp",
      "kind": "group"
    },
    "avatar_url": null,
    "star_count": 1,
    "forks_count": 0,
    "open_issues_count": 3,
    "public_jobs": true,
    "shared_with_groups": [],
    "request_access_enabled": false
  }
]