Vridlo/api/vridlo.rpms: Difference between revisions
No edit summary |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 112: | Line 112: | ||
==== Arguments ==== | ==== Arguments ==== | ||
* '''name''' is ''string ''' | * '''name''' is ''string '''optional''''' | ||
Name of the RPM, which is unique among the name group. Can be renamed with a notification. | |||
* '''epoch''' is ''natural '''optional''''' | * '''epoch''' is ''natural '''optional''''' | ||
Epoch number of the rpm build. | Epoch number of the rpm build. | ||
Line 132: | Line 132: | ||
* '''size''' is ''string '''mandatory''''' | * '''size''' is ''string '''mandatory''''' | ||
Size of the rpm file. | Size of the rpm file. | ||
* ''' | * '''src_slug''' is ''string '''optional''''' | ||
Slug of the source RPM. Must be presented and valid if arch is not ''src'', or be blank if arch is ''src''. | |||
* '''descriptions''' is ''[[Vridlo/types/Lorem|Lorem]] array '''optional''''' | * '''descriptions''' is ''[[Vridlo/types/Lorem|Lorem]] array '''optional''''' | ||
Array of descriptions of the rpm, '''text''' of which is stored in encoding specified by '''cp''' field, and '''cp'''is autodetected or inferred from encoding RPM field. It represents [[Vridlo/types/Lorem|Lorem]] structure. | Array of descriptions of the rpm, '''text''' of which is stored in encoding specified by '''cp''' field, and '''cp'''is autodetected or inferred from encoding RPM field. It represents [[Vridlo/types/Lorem|Lorem]] structure. | ||
Line 153: | Line 153: | ||
"arch": "src", | "arch": "src", | ||
"built_at": "10.10.2010 10:10:10", | "built_at": "10.10.2010 10:10:10", | ||
" | "group_slug": "development", | ||
"md5": "236abd7880b4577f2b9470c09fee79d6", | "md5": "236abd7880b4577f2b9470c09fee79d6", | ||
"sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", | "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", | ||
"size": "100000", | "size": "100000", | ||
" | "builder_slug": "builder", | ||
"repo_status": "skip", | "repo_status": "skip", | ||
"spec": "spec flow....", | "spec": "spec flow....", | ||
Line 184: | Line 184: | ||
"arch": "src", | "arch": "src", | ||
"built_at": "10.10.2010 10:10:10", | "built_at": "10.10.2010 10:10:10", | ||
" | "group_slug": "development", | ||
"md5": "236abd7880b4577f2b9470c09fee79d6", | "md5": "236abd7880b4577f2b9470c09fee79d6", | ||
"sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", | "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", | ||
"size": "100000", | "size": "100000", | ||
" | "builder_slug": "builder", | ||
"repo_status": "skip", | "repo_status": "skip", | ||
"descriptions_count: 2, | "descriptions_count: 2, | ||
Line 226: | Line 226: | ||
This method requires NO authentication. | This method requires NO authentication. | ||
==== Inline Arguments ==== | |||
* '''slug''' is ''string '''optional''''' | |||
Unique slug of the RPM. | |||
==== Arguments ==== | ==== Arguments ==== | ||
Line 287: | Line 292: | ||
This method requires write authentication with write permission to rpm model. | This method requires write authentication with write permission to rpm model. | ||
==== Inline Arguments ==== | |||
* '''slug''' is ''string '''optional''''' | |||
Unique slug of the RPM. | |||
==== Arguments ==== | ==== Arguments ==== |
Latest revision as of 20:00, 4 December 2019
vridlo.rpms
It allows accessing to a list of rpms, which are presented in the system. Do not poll this method more than once an hour. Added into API v1.0. It implements operation on the Rpm structure.
GET:/v1/rpms.json
Returns a list of rpms, which are presented in the system. Do not poll this method more than once an hour. Added into API v1.0.
Authentication
This method requires NO authentication.
Arguments
NOTE: Arguments can be provided as arguments along with headers fields.
- per_page is natural optional
Number of items to return per page. If this argument is omitted, it defaults to 10. The maximum allowed value is 50.
- page is natural optional
The page of results to return. If this argument is omitted, it defaults to 1.
- slug is string optional
Unique slug of the RPM.
- name is string optional
Name of the RPM, which is unique among the name group.
- epoch is natural optional
Epoch number of the rpm build.
- version is string optional
Version of the rpm build. Usually is is represented as a number.
- release is string optional
Release of the rpm build. Usually is is represented as a number.
- arch is string optional
Architecture slug name of the rpm build. Must be presented in the system. It represents slug link to Arch structure.
- built_at is string optional
Rpm is built at time.
- builder_slug is string optional
Slug name of the RPM builder, represents User structure.
- group_slug is string optional
Represents a slug string of the group identifier, which the rpm belongs to.
- sha is string optional
Sha of rpm file containment.
- size is string optional
Size of the rpm file.
- src_slug is string optional
Slug of the source RPM. Must be presented and valid if arch is not src, or be blank if arch is src.
Examples
Example Request Url
GET:/v1/rpms.json?name=/ruby/
Example Good Response
[ { "slug": "ruby-1:2.5.5-alt1-1286691010", "name": "ruby", "epoch": "1", "version": "2.5.5", "release": "alt1", "arch": "i586", "built_at": "10.10.10 10:10:10", "group_slug": "development", "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", "size": "100000", "builder_slug": "builder", "src_slug": "ruby-1:2.5.5-alt1-1286691009", "descriptions_count": 2, }, { "slug": "ruby-1:2.5.5-alt1-1286691009", "name": "ruby", "epoch": "1", "version": "2.5.5", "release": "alt1", "arch": "src", "built_at": "10.10.2010 10:10:09", "group_slug": "development", "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", "size": "100000", "builder_slug": "builder", "descriptions_count": 3, }, ]
Return Codes
- 200 (OK)
The resource list is accessible. Returned data responds to the current state of the resource list, and reading the list is finished.
- 206 (Partial Content)
The resource list is accessible. Returned data responds to the current state of the resource list, and reading the list is NOT finished yet.
- 416 (Range Not Satisfiable)
The resource list is accessible. But data can't be returned since range provided don't match the list boundaries.
- 422.3 (SSL is required)
SSL is required to access the Vridlo API.
- 500 (Service currently unavailable)
The requested service is temporarily unavailable.
POST:/v1/rpms.json
Creates the rpm specified by <slug> URI-parameter using the set of properties passed as form data or get parameter array, and returns state of the created record as JSON.
Authentication
This method requires write authentication with write permission to rpm model.
Arguments
- name is string optional
Name of the RPM, which is unique among the name group. Can be renamed with a notification.
- epoch is natural optional
Epoch number of the rpm build.
- version is string mandatory
Version of the rpm build. Usually is is represented as a number.
- release is string mandatory
Release of the rpm build. Usually is is represented as a number.
- arch is string mandatory
Architecture slug name of the rpm build. Must be presented in the system. It represents slug link to Arch structure.
- built_at is string mandatory
Rpm is built at time.
- builder_slug is string mandatory
Slug name of the RPM builder, represents User structure.
- group_slug is string mandatory
Represents a slug string of the group identifier, which the rpm belongs to.
- sha is string mandatory
Sha of rpm file containment.
- size is string mandatory
Size of the rpm file.
- src_slug is string optional
Slug of the source RPM. Must be presented and valid if arch is not src, or be blank if arch is src.
- descriptions is Lorem array optional
Array of descriptions of the rpm, text of which is stored in encoding specified by cp field, and cpis autodetected or inferred from encoding RPM field. It represents Lorem structure.
Examples
Example Request Url
POST:/v1/rpms.json?name=ruby<...>
Example Request Form
POST:/v1/rpms.json DATA: { "name": "ruby", "epoch": "1", "version": "2.5.5", "release": "alt1", "arch": "src", "built_at": "10.10.2010 10:10:10", "group_slug": "development", "md5": "236abd7880b4577f2b9470c09fee79d6", "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", "size": "100000", "builder_slug": "builder", "repo_status": "skip", "spec": "spec flow....", "descriptions": [ { text: "ruby package", language: "en_US.UTF8", }, { text: "руби пакет", language: "ru_RU.UTF8", }, ], }
Example Good Response
Good response with created record:
{ "slug": "ruby-1:2.5.5-alt1-1286691010", "name": "ruby", "epoch": "1", "version": "2.5.5", "release": "alt1", "arch": "src", "built_at": "10.10.2010 10:10:10", "group_slug": "development", "md5": "236abd7880b4577f2b9470c09fee79d6", "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", "size": "100000", "builder_slug": "builder", "repo_status": "skip", "descriptions_count: 2, }
Example Bad Response
Error response 422:
{ "error_code": 3, "message": "Error text according the active language", }
Return Codes
- 200 (OK)
The resource wasn't found, and was created. Returned data responds to the current state of the resource.
- 422.3 (SSL is required)
SSL is required to access the Vridlo API.
- 422.5 (Invalid incoming data)
The incoming data is invalid. See details for help.
- 404 (Not Found)
The record with provided slug is not found.
- 500 (Internal Server Error)
The Internal Server Error has occurred.
GET:/v1/rpms/<slug>.json
Gets properties of the rpm specified by <slug> URI-parameter, and returns then as JSON. Do not poll this method more than once an hour.
Authentication
This method requires NO authentication.
Inline Arguments
- slug is string optional
Unique slug of the RPM.
Arguments
This method requires NO arguments.
Examples
Example Request Url
GET:/v1/rpms/ruby-1:2.5.5-alt1-1286691010.json
Example Good Response
Good response with created record:
{ "slug": "ruby-1:2.5.5-alt1-1286691010", "name": "ruby", "epoch": "1", "version": "2.5.5", "release": "alt1", "arch": "src", "built_at": "10.10.2010 10:10:10", "group_id": 100, "md5": "236abd7880b4577f2b9470c09fee79d6", "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", "size": "100000", "builder_id": 1000, "repo_status": "skip", "descriptions_count: 2, }
Example Bad Response
Error response 422:
{ "error_code": 3, "message": "Error text according the active language", }
Return Codes
- 200 (OK)
The resource was found and is accessible. Returned data responds to the current state of the resource.
- 422.3 (SSL is required)
SSL is required to access the Vridlo API.
- 404 (Not Found)
The record with provided slug is not found.
- 500 (Internal Server Error)
The Internal Server Error has occurred.
DELETE:/v1/rpms/<slug>.json
Destroys the rpm specified by <slug> URI-parameter, and returns state of the destroyed record as JSON.
Authentication
This method requires write authentication with write permission to rpm model.
Inline Arguments
- slug is string optional
Unique slug of the RPM.
Arguments
This method requires NO arguments.
Examples
Example Request Url
DELETE:/v1/rpms/ruby-1:2.5.5-alt1-1286691010.json
Example Good Response
Good response with created record:
{ "slug": "ruby-1:2.5.5-alt1-1286691010", "name": "ruby", "epoch": "1", "version": "2.5.5", "release": "alt1", "arch": "src", "built_at": "10.10.2010 10:10:10", "group_id": 100, "md5": "236abd7880b4577f2b9470c09fee79d6", "sha": "4a01982354f6d7cab8d9275e43dc0e4329b1d307", "size": "100000", "builder_id": 1000, "repo_status": "skip", "descriptions_count: 2, }
Example Bad Response
Error response 422:
{ "error_code": 3, "message": "Error text according the active language", }
Return Codes
- 200 (OK)
The resource was found and is accessible, and successfully destroyed. Returned data responds to the state of the destroyed resource.
- 422.3 (SSL is required)
SSL is required to access the Vridlo API.
- 404 (Not Found)
The record with provided slug is not found.
- 500 (Internal Server Error)
The Internal Server Error has occurred.