Add support for managing hooks for projects.
Coderabbit hooks for group are actually ui hack: they just install hook for each project in a group.
Note: Coderabbit doesn't have official api for this:
But it could be done done with trpc api:
POST https://app.coderabbit.ai/trpc/repositories.addGitLabRepositories
{
"repositories": [
{
"id": "$project_id",
"name": "Projects",
"orgId": "$org_id",
"orgName": "$org_name",
"private": true
}
],
"requester": {
"id": "$user_id",
"login": "$user_name"
}
}
POST https://app.coderabbit.ai/trpc/repositories.removeGitLabRepositories
{
"repositories": [
{
"id": "$project_id",
"name": "Projects"
}
]
}
GET 'https://app.coderabbit.ai/trpc/repositories.getAllRepos?input={"provider":"gitlab","orgName":"$org_name","type":"Organization","orgIds":"$org_id","page":1,"perPage":10,"searchQuery":"","includeSubgroups":true}'
{
"result": {
"data": {
"repos": [
{
"name": "Projects",
"id": "$project_id",
"private": true,
"isEnabled": true,
"orgId": "$org_id",
"projectPath": "$project_path",
"needsReinstall": false
},
],
"total": $number
}
}
}
The requests seem to be authenticated with authorization: Bearer
Add support for managing hooks for projects.
Coderabbit hooks for group are actually ui hack: they just install hook for each project in a group.
Note: Coderabbit doesn't have official api for this:
But it could be done done with trpc api:
POST https://app.coderabbit.ai/trpc/repositories.addGitLabRepositories{ "repositories": [ { "id": "$project_id", "name": "Projects", "orgId": "$org_id", "orgName": "$org_name", "private": true } ], "requester": { "id": "$user_id", "login": "$user_name" } }POST https://app.coderabbit.ai/trpc/repositories.removeGitLabRepositories{ "repositories": [ { "id": "$project_id", "name": "Projects" } ] }GET 'https://app.coderabbit.ai/trpc/repositories.getAllRepos?input={"provider":"gitlab","orgName":"$org_name","type":"Organization","orgIds":"$org_id","page":1,"perPage":10,"searchQuery":"","includeSubgroups":true}'{ "result": { "data": { "repos": [ { "name": "Projects", "id": "$project_id", "private": true, "isEnabled": true, "orgId": "$org_id", "projectPath": "$project_path", "needsReinstall": false }, ], "total": $number } } }The requests seem to be authenticated with
authorization: Bearer