GitLabを使用すると、APIリストにプロジェクトがありません


18

GitLab APIを使用して、アクセスできるプロジェクトのリスト(URL /api/v3/projects/all?private_token=xxx)を取得しますが、何らかの理由でリストに含まれていないプロジェクトが6〜7個あります。

編集:私のユーザーは管理者であり、URLが示すようにすべてのプロジェクトを一覧表示たい/projects/all

git自体とGitLab Webインターフェイスを使用してプロジェクトにアクセスできます。APIのリストにプロジェクトが表示されない理由はありますか?

不足しているプロジェクトはすべて、他のプロジェクトよりも新しいものです。APIトークンを更新しようとしました。変化なし。

バージョン:

GitLab        6.4.3
GitLab Shell  1.8.0
GitLab API    v3
Ruby          2.0.0p353
Rails         4.0.2

回答:


27

これをテストしたところ、GitLab APIレスポンスがページネーションを使用しているようです。ドキュメント(http://api.gitlab.org)によると、ページごとのデフォルトの結果数は20に設定されており、開始ページは1です。

ページごとの最大結果を調整するにはper_page、HTTP要求行で変数を使用する必要があります。pageの最大値よりも多くのリポジトリがある場合、同様に使用してページ番号を変更できますper_page。最大per_page値100を指定できます。

たとえば、リクエストは次のようになります。

https://git.example.com/api/v3/projects/all?page=1&per_page=100&private_token=abc123

pageそしてper_page彼らは、デフォルト値を持っているとして、あなたはしたくない場合は、どちらか含める必要はありませんので、変数は、必要とされていません。

うまくいけば、これで問題が解決します。


確かにそうです!私は今怠zyで愚かだと感じます;)どうもありがとう!
ニルス

問題はありません。私自身も教訓を学びました:)
jaseeey 14

1
100以上を返す方法はありますか?ユーザーアクティビティの結果は100をはるかに超えていますが、APIは最大100のみを返します
。– emmdee

APIドキュメントを見ると、per_page許可される最大値はです100。参照:docs.gitlab.com/ce/api/README.html#pagination
jaseeey


-1

ページ数がわからない場合は、次のように使用してください。 https://git.example.com/api/v3/projects/all?per_page=-1&private_token=some_token_key


すべてのプロジェクトをリストしません...デフォルトの20レコードのみを提供します
-Saurabh

私と同じ。唯一のショーは、最初のページに20の項目をデフォルト
Marslo

唯一のデフォルトの20を返し、何もしない
イワン
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.