Skip to main content

Creating a draft release

This method allows creating a draft app version with basic information.

Key Points to Note:

  • You can only create one draft per app. Attempting to create multiple drafts will result in an error;

  • drafts submitted via the API are not displayed in the web version of the RuStore Console. They will become available after the APK is submitted for review and when the release status changes;

  • creation of a draft version is only possible when there is an active app version available.

  • if any of the draft fields are left incomplete or contain missing data, the system will retrieve the corresponding information from the active app version to fill in the gaps;

  • draft must align with the app type, whether it is free or paid. In the event that you submit a paid version as a draft for a free app, the system will consider the draft as free, adhering to the app type specified.

  • for each app version type (appType) there are corresponding version categories. Attempting to download the application will result in an error if the category does not matchю

  • partial app publication is possible only with automatic (INSTANTLY) or manual (MANUAL) publication type (parameter - publishType).

Interaction parameters

POST

https://public-api.rustore.ru/public/v1/application/{packageName}/version

AttributeTypeRequiredLocationDescriptionExample
Public-TokenstringYesheaderAccess token to Public API Rustore.N/A
packageNamestringYespathApp package namecom.myapp.example
appNamestringNobodyRelease version
Maximum length: 5 characters
My app
appTypestringNobodyApp release types

Possible limitations:
GAMES — for games;
MAIN — for non-gaming apps.
Passed categories must be unique within a single request.
GAMES
categoriesstringNobodyVersion categories
Maximum number is 2 categories.
"health", "news"
ageLegalstringNobodyAge ratings
Possible options:
18+;
16+;
12+;
7+;
3+.
7+
shortDescriptionstringNobodyBrief app release description
Maximum length: 80 characters
N/A
fullDescriptionstringNobodyFull description
Maximum length: 4000 characters
N/A
whatsNewstringNobodyWhat's New

Maximum length: 500 characters
N/A
moderInfostringNobodyDeveloper comment for moderator
Maximum length: 180 characters
N/A
priceValuestringNobodyApp price in minimum currency units (in kopecks), for example, "87.99 rubles." = 8799
Value should be >0
8799
publishType
(new)
stringNobodyPublication type

Publication type:
• MANUAL — manual publication;
INSTANTLY — automatic publication immediately after review;
DELAYED — delayed publication.
Note: if this parameter is not specified, then it is taken asINSTANTLY by default.
MANUAL
publishDateTime
(new)
timestamptz• No
• Yes, if publishType = DELAYED
bodyDate and time for delayed publication:
format: yyyy-MM-dd'T'HH:mm:ssXXX.
The specified date must be no earlier than 24 hours and no later than 60 days from the planned submission date. The delayed publication date can be changed.
Note: if publishType is MANUAL или INSTANTLY, this parameter can be anything and will not be taken into account.
2022-07-08T13:24:41.8328711+03:00
partialValue
(new)
numberNobodyPercentage for partial publication
Possible values:
5%;
10%;
25%;
50%;
75%
100%.
5

Response example

AttributeTypeRequiredDescriptionExample
codestringYesResponse codeerror/OK
messagestringNoDecoded response codeN/A
timestamptimestamptzYesResponse time2022-07-08T13:24:41.8328711+03:00
content{}objectYesN/AN/A

content

AttributeTypeRequiredDescriptionExample
versionIdnumberYes
App version

| 243242 |

Request example

curl --location --request POST 'https://public-api.rustore.ru/public/v1/application/com.package.com/version' \
--header 'Content-Type: application/json' \
--header 'Public-Token: {YOURtoken}' \
--data-raw '{
"appName": "App for RuStore",
"appType": "MAIN",
"categories":
[
"news",
"education"
],
"ageLegal": "7+",
"shortDescription": "App for RuStore",
"fullDescription": "fullDescription - App for RuStore",
"whatsNew": "whatsNew - App for RuStore",
"moderInfo": "moderInfo - App for RuStore",
"priceValue": 1100
}'

Response example

{
"code": "OK",
"message": null,
"body": 243242,
"timestamp": "2023-07-27T10:28:59.039649+03:00"
}