1 項目管理
1.1 查看倉庫中項目詳細信息
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/projects/{project_id}"
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/projects?project_name=guest"

1.2 搜索鏡像
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/search?q=nginx"

1.3 刪除項目
curl -u "admin:Harbor12345" -X DELETE -H "Content-Type: application/json" "https://192.168.56.106/api/projects/{project_id}"

1.4 創建項目
curl -u "admin:Harbor12345" -X POST -H "Content-Type: application/json" "https://192.168.56.106/api/projects" -d @createproject.json
createproject.json例子
{
"project_name": "testrpo",
"public": 0
}

1.5 查看項目日志
curl -u "admin:Harbor12345" -X POST -H "Content-Type: application/json" "https://192.168.56.106/api/projects/{project_id}/logs/filter" -d @log.json
[root@dcos-hub json]# cat log.json
{
"username": "admin"
}

2 賬號管理
2.1 創建賬號
curl -u "admin:Harbor12345" -X POST -H "Content-Type: application/json" "https://192.168.56.106/api/users" -d @user.json
[root@dcos-hub json]# cat >user.json
{
"user_id": 5,
"username": "xinju",
"email": "xinju@gmail.com",
"password": "Xinju12345",
"realname": "xinju",
"role_id": 2
}

2.2 獲取用戶信息
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/users"

2.3 獲取當前用戶信息
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/users/current"

2.4 刪除用戶
curl -u "admin:Harbor12345" -X DELETE -H "Content-Type: application/json" "https://192.168.56.106/api/users/{user_id}"

2.5 修改用戶密碼
curl -u "admin:Harbor12345" -X PUT -H "Content-Type: application/json" "https://192.168.56.106/api/users/{user_id}/password" -d @uppwd.json
[root@dcos-hub json]# cat uppwd.json
{
"old_password": "Harbor123456",
"new_password": "Harbor12345"
}

3 用戶權限管理
3.1 查看項目相關角色
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/projects/{project_id}/members/"

3.2 項目添加角色
curl -u "jaymarco:Harbor123456" -X POST -H "Content-Type: application/json" "https://192.168.56.106/api/projects/{project_id}/members/" -d @role.json
[root@dcos-hub json]# cat role.json
{
"roles": [
3
],
"username": "guest"
}
用jaymarco用戶創建一個snc_dcos項目,並對snc_dcos加一個權限
curl -u "jaymarco:Harbor123456" -X POST -H "Content-Type: application/json" "https://192.168.56.106/api/projects" -d @createproject.json


3.3 刪除項目中用戶權限
curl -u "admin:Harbor12345" -X DELETE -H "Content-Type: application/json" "https://192.168.56.106/api/projects/{project_id}/members/{user_id}"


3.4 獲取與用戶相關的項目編號和存儲庫編號
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/statistics"

3.5 修改當前用戶角色
has_admin_role :0 普通用戶
has_admin_role :1 管理員
curl -u "admin:Harbor12345" -X PUT -H "Content-Type: application/json" "https://192.168.56.106/api/users/{user_id}/sysadmin " -d @chgrole.json
[root@dcos-hub json]# cat >chgrole.json
{
"has_admin_role": 1
}

4 鏡像管理
4.1 查詢鏡像
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/repositories?project_id={project_id}&q=dcos%2Fcentos"

4.2 刪除鏡像
curl -u "admin:Harbor12345" -X DELETE -H "Content-Type: application/json" "https://192.168.56.106/api/repositories?repo_name=dcos%2Fetcd "
4.3 獲取鏡像標簽
curl -u "admin:Harbor12345" -X GET -H "Content-Type: application/json" "https://192.168.56.106/api/repositories/tags?repo_name=dcos%2Fcentos"

