Use this API to interact with the Ruby gems and Bundler package manager clients.
This API is used by the Ruby gems and Bundler package manager clients and is generally not meant for manual consumption. This API is under development and is not ready for production use due to limited functionality.
These endpoints do not adhere to the standard API authentication methods. See the Ruby gems registry documentation for details on which headers and token types are supported. Undocumented authentication methods might be removed in the future.
Retrieve dependencies
GET /api/v4/projects/{id}/packages/rubygems/api/v1/dependencies
Retrieves a list of dependencies for specified gems. The response is a marshalled array of hashes for all versions of the requested gems. Because the response is marshalled, you can store it in a file.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer or string | The ID or URL- |
gemsQuery | Array of strings | Comma delimited gem names |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | String (binary) (application/) |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Upload a gem
POST /api/v4/projects/{id}/packages/rubygems/api/v1/gems
Uploads a gem for a specified project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer or string | The ID or URL- |
Request body (multipart/form-data)
| Property | Type | Description |
|---|---|---|
fileRequired | String (binary) | The package file to be published (generated by Multipart middleware) |
Responses
| Code | Description | Schema |
|---|---|---|
201 | Created | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Authorize a gem upload from workhorse
POST /api/v4/projects/{id}/packages/rubygems/api/v1/gems/authorize
This feature was introduced in GitLab 13.9
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer or string | The ID or URL- |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | — |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Download a gem file
GET /api/v4/projects/{id}/packages/rubygems/gems/{file_name}
Downloads a specified gem file for a project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer or string | The ID or URL- |
file_Path, | String | Package file name |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | String (binary) (application/) |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Download a gemspec file
GET /api/v4/projects/{id}/packages/rubygems/quick/Marshal.4.8/{file_name}
Downloads a gemspec file in Marshal format for a specified gem version.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer or string | The ID or URL- |
file_Path, | String | Gemspec file name |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | String (binary) (application/) |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |
Download the spec index file
GET /api/v4/projects/{id}/packages/rubygems/{file_name}
Downloads a RubyGems spec index file (specs.4.8.gz, latest_specs.4.8.gz, or prerelease_specs.4.8.gz) for a project.
Parameters
| Name | Type | Description |
|---|---|---|
idPath, | Integer or string | The ID or URL- |
file_Path, | String | Spec file name Allowed values: specs.,latest_,prerelease_Minimum length: 1 |
Responses
| Code | Description | Schema |
|---|---|---|
200 | OK | String (binary) (application/) |
400 | Bad Request | — |
401 | Unauthorized | — |
403 | Forbidden | — |
404 | Not Found | — |