
# 查询项目下的所有仓库
#### 功能介绍
用户可获取项目下有权限的仓库列表。
如果用户未传入项目ID，则支持按仓库名或项目名进行模糊查询。
如果用户提供了项目ID，则仅根据仓库名进行模糊匹配。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CodeHub/doc?api=ShowAllRepositoryByTwoProjectId)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
GET /v2/projects/{project_uuid}/repositories
表1路径参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
|:---|:---|:---|:---|
| project_uuid | 是    | String | **参数解释**： 项目ID，获取方式请参见[获取项目ID](https://support.huaweicloud.com/api-codeartsrepo/codehub_api_0014.html)。 **约束限制**： 不涉及。 **取值范围**： 32位字符串。 **默认取值：** 不涉及。 |
   
表2Query参数 
| 参数         | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
|:---|:---|:---|:---|
| page_index | 否    | Integer | **参数解释**： 分页索引，从1开始计数。 **约束限制**： 不涉及。 **取值范围**： 1-2147483647 **默认取值：** 1                         |
| page_size  | 否    | Integer | **参数解释**： 每页显示查询到的仓库条目数量。 **约束限制**： 不涉及。 **取值范围**： 1-100 **默认取值：** 20                      |
| search     | 否    | String  | **参数解释**： 用户可根据仓库创建者的名称进行搜索，也可以根据仓库名称进行搜索。 **约束限制**： 不涉及。 **取值范围**： 字符串。 **默认取值：** 不涉及。 |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取（响应消息头中X-Subject-Token的值）。 **约束限制：** 不涉及。 **取值范围：** 字符串长度为\[1100000\]。 **默认取值：** 不涉及。 |
   
#### 响应参数
**状态码： 200**
表4响应Body参数 
| 参数     | 参数类型                                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
|:---|:---|:---|
| error  | [Error] object                   | **参数解释**： 响应错误。                                                                                                                                                                                                                                                                                                                                                                                                                     |
| result | [RepoListInfoV2] object | **参数解释**： 响应结果。                                                                                                                                                                                                                                                                                                                                                                                                                      |
| status | String                                                                                                          | **参数解释**： 响应状态。 **取值范围**： - success，表示接口调用成功。  - fail，表示接口调用失败。   |
   
 表5Error 
| 参数      | 参数类型   | 描述                                                                                                                                                                                               |
|:---|:---|:---|
| code    | String | **参数解释：** 错误码。 **取值范围：** 符合错误码格式字符串，长度\[0,100\]。 |
| message | String | **参数解释：** 错误信息。 **取值范围：** 不涉及。               |
   
 表6RepoListInfoV2 
| 参数           | 参数类型                                                                                                              | 描述                                                                                                                                                                                           |
|:---|:---|:---|
| repositories | Array of [RepoInfoV2] objects | **参数解释**： 仓库列表。                                                                                                                              |
| total        | Integer                                                                                                           | **参数解释**： 仓库总数。 **取值范围**： 1-2147483647 |
   
 表7RepoInfoV2 
| 参数                 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
|:---|:---|:---|
| created_at         | String  | **参数解释**： 创建时间。 **取值范围**： 不涉及                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| creator_name       | String  | **参数解释**： 创建者的用户名。当用户作为租户时，其用户名即为租户名称。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| domain_name        | String  | **参数解释**： 创建者的租户名。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| group_name         | String  | **参数解释**： 仓库组名（克隆地址中域名后面仓库名前的一段。示例：git@repo.example.com:Demo00228/testword.git 组名：Demo00228 )。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| https_url          | String  | **参数解释**： 使用HTTPS克隆仓库时所使用的URL。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| iam_user_uuid      | String  | **参数解释**： 用户的IAM User UUID。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| is_owner           | Integer | **参数解释**： 当前用户是否是仓库的创建者。 **取值范围**： - 1：是  - 0：不是                                                                                                                                                                                                                                                                                                                                               |
| lfs_size           | String  | **参数解释**： 仓库LFS容量，单位为M，当容量大于1024M，单位为G。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| project_is_deleted | String  | **参数解释**： 项目是否被删除。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| project_uuid       | String  | **参数解释**： 项目ID，获取方式请参见[获取项目ID](https://support.huaweicloud.com/api-codeartsrepo/codehub_api_0014.html)。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| repository_id      | Integer | **参数解释**： 仓库主键ID。 **取值范围**： 1-2147483647                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| repository_name    | String  | **参数解释**： 仓库名称。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| repository_size    | String  | **参数解释**： 仓库总容量=仓库LFS容量 +Git库容量，单位为M，当容量大于1024M，单位为G。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| repository_uuid    | String  | **参数解释**： 仓库UUID(由CreateRepository接口返回)。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| ssh_url            | String  | **参数解释**： 使用SSH方式克隆仓库时所使用的URL。 **取值范围**： 字符串。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| star               | Boolean | **参数解释**： 当前用户是否收藏该仓库。 **取值范围**： - true：已收藏。  - false：未收藏。                                                                                                                                                                                                                                                                                                                                       |
| status             | Integer | **参数解释**： 仓库状态。 **取值范围**： - 0：仓库正常创建成功。  - 1：仓库创建中。  - 2：创建失败。  - 3：仓库冻结。  - 4：仓库已经关闭。   |
| updated_at         | String  | **参数解释**： 更新时间。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| userRole           | Integer | **参数解释**： 用户在仓库中的权限。 **取值范围**： - 20：只读成员  - 30：普通成员  - 40：管理员                                                                                                                                                                                                                      |
| visibility_level   | Integer | **参数解释**： 仓库的可见范围。 **取值范围**： - 0，私有仓库  - 20，公有仓库                                                                                                                                                                                                                                                                                                                                            |
| web_url            | String  | **参数解释**： 网页URL路径，访问后将直接跳转至仓库详情页面。 **取值范围**： 不涉及。                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
   
#### 请求示例
```
GET https://{endpoint}/v2/projects/{project_uuid}/repositories
```
#### 响应示例
**状态码： 200**
OK
```
{
  "result" : {
    "total" : 14,
    "repositories" : {
      "repository_uuid" : "d0457f74cc5b43d989ded7248f71b4e5",
      "repository_id" : 468480,
      "repository_name" : "CreatRepository_2qD5i",
      "ssh_url" : "git@repo.example.com:Demo00228/CreatRepository_2qD5i.git",
      "https_url" : "https://repo.example.com/Demo00228/CreatRepository_2qD5i.git",
      "group_name" : "Demo00228",
      "web_url" : "https://repo.example.com/repo/468480/home",
      "visibility_level" : 0,
      "created_at" : "2019-10-15 09:40:26",
      "updated_at" : "2019-10-15 09:40:26",
      "repository_size" : "0.06M",
      "lfs_size" : "0.00M",
      "creator_name" : "repo",
      "domain_name" : "repo",
      "star" : false,
      "status" : 0,
      "is_owner" : 1,
      "iam_user_uuid" : "a618e34bd5704be3ae3395dfede06041",
      "project_uuid" : "4838955a48e2492bbe44b31bc4c272f6",
      "project_is_deleted" : "false",
      "userRole" : null
    }
  },
  "status" : "success"
}
```
#### 状态码
| 状态码 | 描述 |
|:---|:---|
| 200 | OK |
   
#### 错误码
请参见错误码。
