Top-up of the Campaign Budget
http
POST /adv/v1/budget/depositBase URL: https://advert-api.wildberries.ru · Module: promotion · Section: Finances · Specification doc ↗
The method tops up the campaign budget. To launch the campaign after topping up the budget, use the Launch campaign method.
Request limit per one seller account:
| Type | Period | Limit | Interval | Burst |
|---|---|---|---|---|
| Personal | 1 s | 1 request | 1 s | 5 requests |
| Service | 1 s | 1 request | 1 s | 5 requests |
| Base with secret | 1 s | 1 request | 1 s | 5 requests |
| Base | 1 h | 5 requests | 12 min | 1 request |
Parameters
| Name | In | Type | Req. | Description |
|---|---|---|---|---|
id | query | integer<int64> | yes | Campaign ID |
Request body
application/json — schema object, required
suminteger<int64>— Budget top-up amount in the base units of the seller account currencycashback_suminteger<int64>— Top-up budget sum paid with promo bonuses. You can top up only a certain percentage of the amount, indicated in thepercentfield of the response from the method for getting balance. Promo bonuses are only applicable to these top-up sources: -0— account -1— balance sheetcashback_percentinteger<int64>— The percentage of the top-up amount that can be paid with promo bonuses. You need to specify the value of thepercentfield from the response for the method for getting [balance] If you specifiedcashback\_sum, thecashback\_percentparameter becomes requiredtypeinteger<int64>— Type of top-up source: -0— Account -1— Balance -3— Bonusesreturnboolean— Response return flag (truemeans updated campaign budget size will be returned in the response,falseor empty means nothing will be returned).
Responses
| Code | Description | Schema |
|---|---|---|
200 | Success | ResponseWithReturn |
400 | Bad request | PostV1BudgetDepositResponse400 |
401 | Unauthorized | object |
403 | Access denied | object |
429 | Too many requests | object |
Structure 200:
totalinteger<int64>— Amount of the updated budgetcurrencystring<ISO 4217>— Currency of the seller account currency
Structure 400:
errorstring
Structure 401:
titlestring— Error titledetailstring— Error detailscodestring— Internal error coderequestIdstring— Unique request IDoriginstring— WB internal service IDstatusnumber— HTTP status codestatusTextstring— Text of the HTTP status codetimestampstring— Request date and time
Structure 403:
titlestring— Error titledetailstring— Error detailscodestring— Internal error coderequestIdstring— Request IDoriginstring— WB internal service IDstatusnumber— HTTP status codestatusTextstring— Text of the HTTP status codetimestampstring— Request date and time
Structure 429:
titlestring— Error titledetailstring— Error detailscodestring— Internal error coderequestIdstring— Unique request IDoriginstring— WB internal service IDstatusnumber— HTTP status codestatusTextstring— Text of the HTTP status codetimestampstring— Request date and time
Call examples
Arguments are shown as parameter names — substitute your own values. Languages whose client does not expose this operation are omitted.
python
from wb_api_client.promotion import Configuration, ApiClient
from wb_api_client.promotion.api import PromotionApi
cfg = Configuration(access_token="<your WB JWT>")
api = PromotionApi(ApiClient(cfg))
result = api.post_v1_budget_deposit(id=..., post_v1_budget_deposit_request=...)
print(result)ts
import {
Configuration,
PromotionApi,
} from "@valeryverkhoturov/wb-api-client/promotion";
const cfg = new Configuration({});
cfg.setAccessToken("<your WB JWT>");
const api = new PromotionApi(cfg);
const { data } = await api.postV1BudgetDeposit(id, postV1BudgetDepositRequest);
console.log(data);go
import (
"context"
"fmt"
wbpromotion "github.com/ValeryVerkhoturov/wb-api-client-go/promotion"
)
cfg := wbpromotion.NewConfiguration()
cfg.SetAccessToken("<your WB JWT>")
client := wbpromotion.NewAPIClient(cfg)
result, _, err := client.PromotionAPI.PostV1BudgetDeposit(context.Background()).Id(id).PostV1BudgetDepositRequest(postV1BudgetDepositRequest).Execute()
if err != nil {
panic(err)
}
fmt.Printf("%+v\n", result)java
import io.github.valeryverkhoturov.wbapi.promotion.ApiClient;
import io.github.valeryverkhoturov.wbapi.promotion.SecretString;
import io.github.valeryverkhoturov.wbapi.promotion.api.PromotionApi;
ApiClient client = new ApiClient();
client.setAccessToken(new SecretString("<your WB JWT>"));
PromotionApi api = new PromotionApi(client);
System.out.println(api.postV1BudgetDeposit(id, postV1BudgetDepositRequest));php
use ValeryVerkhoturov\WbApiClient\Promotion\Configuration;
use ValeryVerkhoturov\WbApiClient\Promotion\SecretString;
use ValeryVerkhoturov\WbApiClient\Promotion\Api\PromotionApi;
use GuzzleHttp\Client;
$config = (new Configuration())
->setAccessTokenSecret(new SecretString('<your WB JWT>'));
$api = new PromotionApi(new Client(), $config);
print_r($api->postV1BudgetDeposit($id, $post_v1_budget_deposit_request));bsl
#Использовать "wb-api-client"
Настройки = Новый Конфигурация();
Настройки.УстановитьТокен("<your WB JWT>");
Клиент = Новый PromotionApi(Настройки);
Сообщить(Клиент.PostV1BudgetDeposit(id, Тело).Тело);csharp
using ValeryVerkhoturov.WbApiClient.Promotion.Api;
using ValeryVerkhoturov.WbApiClient.Promotion.Client;
var config = new Configuration();
config.AccessTokenSecret = new SecretString("<your WB JWT>");
var api = new PromotionApi(config);
Console.WriteLine(api.PostV1BudgetDeposit(id, postV1BudgetDepositRequest));rust
use wb_api_client::promotion::apis::{configuration::Configuration, promotion_api};
#[tokio::main]
async fn main() {
let mut cfg = Configuration::new();
cfg.set_access_token("<your WB JWT>");
let result = promotion_api::post_v1_budget_deposit(&cfg, id, post_v1_budget_deposit_request).await;
println!("{:#?}", result);
}