9146 lines
377 KiB
Go
9146 lines
377 KiB
Go
/*
|
||
API Яндекс Маркета для продавцов
|
||
|
||
API Яндекс Маркета помогает продавцам автоматизировать и упростить работу с маркетплейсом. В числе возможностей интеграции: * управление каталогом товаров и витриной, * обработка заказов, * изменение настроек магазина, * получение отчетов.
|
||
|
||
API version: LATEST
|
||
*/
|
||
|
||
// Code generated by OpenAPI Generator (https://openapi-generator.tech); DO NOT EDIT.
|
||
|
||
package ymclient
|
||
|
||
import (
|
||
"bytes"
|
||
"context"
|
||
"io"
|
||
"net/http"
|
||
"net/url"
|
||
"strings"
|
||
"time"
|
||
)
|
||
|
||
// LaasAPIService LaasAPI service
|
||
type LaasAPIService service
|
||
|
||
type LaasAPIDeleteCampaignOffersRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
deleteCampaignOffersRequest *DeleteCampaignOffersRequest
|
||
}
|
||
|
||
func (r LaasAPIDeleteCampaignOffersRequest) DeleteCampaignOffersRequest(deleteCampaignOffersRequest DeleteCampaignOffersRequest) LaasAPIDeleteCampaignOffersRequest {
|
||
r.deleteCampaignOffersRequest = &deleteCampaignOffersRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIDeleteCampaignOffersRequest) Execute() (*DeleteCampaignOffersResponse, *http.Response, error) {
|
||
return r.ApiService.DeleteCampaignOffersExecute(r)
|
||
}
|
||
|
||
/*
|
||
DeleteCampaignOffers Удаление товаров из ассортимента магазина
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/deleteCampaignOffers.md) %}
|
||
|
||
Удаляет заданные товары из заданного магазина.
|
||
|
||
{% note warning "Запрос удаляет товары из конкретного магазина" %}
|
||
|
||
На продажи в других магазинах и на наличие товара в общем каталоге он не влияет.
|
||
|
||
{% endnote %}
|
||
|
||
Товар не получится удалить, если он хранится на складах Маркета.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIDeleteCampaignOffersRequest
|
||
*/
|
||
func (a *LaasAPIService) DeleteCampaignOffers(ctx context.Context, campaignId int64) LaasAPIDeleteCampaignOffersRequest {
|
||
return LaasAPIDeleteCampaignOffersRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return DeleteCampaignOffersResponse
|
||
func (a *LaasAPIService) DeleteCampaignOffersExecute(r LaasAPIDeleteCampaignOffersRequest) (*DeleteCampaignOffersResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *DeleteCampaignOffersResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.DeleteCampaignOffers")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/offers/delete"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.deleteCampaignOffersRequest == nil {
|
||
return localVarReturnValue, nil, reportError("deleteCampaignOffersRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.deleteCampaignOffersRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 423 {
|
||
var v ApiLockedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIDeleteOffersRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
deleteOffersRequest *DeleteOffersRequest
|
||
}
|
||
|
||
func (r LaasAPIDeleteOffersRequest) DeleteOffersRequest(deleteOffersRequest DeleteOffersRequest) LaasAPIDeleteOffersRequest {
|
||
r.deleteOffersRequest = &deleteOffersRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIDeleteOffersRequest) Execute() (*DeleteOffersResponse, *http.Response, error) {
|
||
return r.ApiService.DeleteOffersExecute(r)
|
||
}
|
||
|
||
/*
|
||
DeleteOffers Удаление товаров из каталога
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/deleteOffers.md) %}
|
||
|
||
Удаляет товары из каталога.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту, не более 200 товаров в одном запросе|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIDeleteOffersRequest
|
||
*/
|
||
func (a *LaasAPIService) DeleteOffers(ctx context.Context, businessId int64) LaasAPIDeleteOffersRequest {
|
||
return LaasAPIDeleteOffersRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return DeleteOffersResponse
|
||
func (a *LaasAPIService) DeleteOffersExecute(r LaasAPIDeleteOffersRequest) (*DeleteOffersResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *DeleteOffersResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.DeleteOffers")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/offer-mappings/delete"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
if r.deleteOffersRequest == nil {
|
||
return localVarReturnValue, nil, reportError("deleteOffersRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.deleteOffersRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 423 {
|
||
var v ApiLockedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGenerateClosureDocumentsDetalizationReportRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
generateClosureDocumentsDetalizationRequest *GenerateClosureDocumentsDetalizationRequest
|
||
format *ReportFormatType
|
||
}
|
||
|
||
func (r LaasAPIGenerateClosureDocumentsDetalizationReportRequest) GenerateClosureDocumentsDetalizationRequest(generateClosureDocumentsDetalizationRequest GenerateClosureDocumentsDetalizationRequest) LaasAPIGenerateClosureDocumentsDetalizationReportRequest {
|
||
r.generateClosureDocumentsDetalizationRequest = &generateClosureDocumentsDetalizationRequest
|
||
return r
|
||
}
|
||
|
||
// Формат отчета или документа.
|
||
func (r LaasAPIGenerateClosureDocumentsDetalizationReportRequest) Format(format ReportFormatType) LaasAPIGenerateClosureDocumentsDetalizationReportRequest {
|
||
r.format = &format
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGenerateClosureDocumentsDetalizationReportRequest) Execute() (*GenerateReportResponse, *http.Response, error) {
|
||
return r.ApiService.GenerateClosureDocumentsDetalizationReportExecute(r)
|
||
}
|
||
|
||
/*
|
||
GenerateClosureDocumentsDetalizationReport Отчет по схождению с закрывающими документами
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/generateClosureDocumentsDetalizationReport.md) %}
|
||
|
||
Запускает генерацию отчета по схождению с закрывающими документами в зависимости от типа договора.
|
||
|
||
Узнать статус генерации и получить ссылку на готовый отчет можно с помощью запроса [GET reports/info/{reportId}](../../reference/reports/getReportInfo.md).
|
||
|
||
{% list tabs %}
|
||
|
||
- Договор на размещение
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/period_closure/period_closure_income.md) %}
|
||
|
||
- Договор на продвижение
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/period_closure/period_closure_outcome.md) %}
|
||
|
||
- Договор на маркетинг
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/advertiser_billing_operations/advertiser_billing_operations.md) %}
|
||
|
||
{% endlist %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGenerateClosureDocumentsDetalizationReportRequest
|
||
*/
|
||
func (a *LaasAPIService) GenerateClosureDocumentsDetalizationReport(ctx context.Context) LaasAPIGenerateClosureDocumentsDetalizationReportRequest {
|
||
return LaasAPIGenerateClosureDocumentsDetalizationReportRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GenerateReportResponse
|
||
func (a *LaasAPIService) GenerateClosureDocumentsDetalizationReportExecute(r LaasAPIGenerateClosureDocumentsDetalizationReportRequest) (*GenerateReportResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GenerateReportResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GenerateClosureDocumentsDetalizationReport")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/reports/closure-documents/detalization/generate"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.generateClosureDocumentsDetalizationRequest == nil {
|
||
return localVarReturnValue, nil, reportError("generateClosureDocumentsDetalizationRequest is required and must be specified")
|
||
}
|
||
|
||
if r.format != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "format", r.format, "", "")
|
||
} else {
|
||
var defaultValue ReportFormatType = "FILE"
|
||
r.format = &defaultValue
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.generateClosureDocumentsDetalizationRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGenerateClosureDocumentsReportRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
generateClosureDocumentsRequest *GenerateClosureDocumentsRequest
|
||
}
|
||
|
||
func (r LaasAPIGenerateClosureDocumentsReportRequest) GenerateClosureDocumentsRequest(generateClosureDocumentsRequest GenerateClosureDocumentsRequest) LaasAPIGenerateClosureDocumentsReportRequest {
|
||
r.generateClosureDocumentsRequest = &generateClosureDocumentsRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGenerateClosureDocumentsReportRequest) Execute() (*GenerateReportResponse, *http.Response, error) {
|
||
return r.ApiService.GenerateClosureDocumentsReportExecute(r)
|
||
}
|
||
|
||
/*
|
||
GenerateClosureDocumentsReport Закрывающие документы
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/generateClosureDocumentsReport.md) %}
|
||
|
||
Возвращает ZIP-архив с закрывающими документами в формате PDF за указанный месяц.
|
||
|
||
{% cut "Состав документов в зависимости от типа договора" %}
|
||
|
||
* **Договор на размещение**
|
||
|
||
- [акт об оказанных услугах](:no-translate[*acts-main-act])
|
||
- [счет-фактура](:no-translate[*acts-main-invoice])
|
||
- [сводный отчет по данным статистики](:no-translate[*acts-main-report])
|
||
- [отчет об исполнении поручения и о зачете взаимных требований](:no-translate[*acts-main-agent]) (отчет агента)
|
||
|
||
* **Договор на продвижение** (в России не заключается после 30 сентября 2024 года)
|
||
|
||
- [акт об оказании услуг](:no-translate[*acts-discounts-act])
|
||
- [счет-фактура](:no-translate[*acts-discounts-invoice]), если этого требует схема налогообложения
|
||
|
||
* **Договор на маркетинг**
|
||
|
||
- [акт об оказанных услугах](:no-translate[*acts-marketing-act])
|
||
- [счет-фактура](:no-translate[*acts-main-invoice])
|
||
- [счет-фактура на аванс](:no-translate[*acts-marketing-invoice])
|
||
- [выписка по лицевому счету](:no-translate[*acts-marketing-account])
|
||
- [детализация к акту](:no-translate[*acts-marketing-details])
|
||
|
||
{% endcut %}
|
||
|
||
Узнать статус генерации и получить ссылку на архив можно с помощью запроса [GET reports/info/{reportId}](../../reference/reports/getReportInfo.md).
|
||
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGenerateClosureDocumentsReportRequest
|
||
*/
|
||
func (a *LaasAPIService) GenerateClosureDocumentsReport(ctx context.Context) LaasAPIGenerateClosureDocumentsReportRequest {
|
||
return LaasAPIGenerateClosureDocumentsReportRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GenerateReportResponse
|
||
func (a *LaasAPIService) GenerateClosureDocumentsReportExecute(r LaasAPIGenerateClosureDocumentsReportRequest) (*GenerateReportResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GenerateReportResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GenerateClosureDocumentsReport")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/reports/closure-documents/generate"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.generateClosureDocumentsRequest == nil {
|
||
return localVarReturnValue, nil, reportError("generateClosureDocumentsRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.generateClosureDocumentsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGenerateGoodsMovementReportRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
generateGoodsMovementReportRequest *GenerateGoodsMovementReportRequest
|
||
format *ReportFormatType
|
||
}
|
||
|
||
func (r LaasAPIGenerateGoodsMovementReportRequest) GenerateGoodsMovementReportRequest(generateGoodsMovementReportRequest GenerateGoodsMovementReportRequest) LaasAPIGenerateGoodsMovementReportRequest {
|
||
r.generateGoodsMovementReportRequest = &generateGoodsMovementReportRequest
|
||
return r
|
||
}
|
||
|
||
// Формат отчета или документа.
|
||
func (r LaasAPIGenerateGoodsMovementReportRequest) Format(format ReportFormatType) LaasAPIGenerateGoodsMovementReportRequest {
|
||
r.format = &format
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGenerateGoodsMovementReportRequest) Execute() (*GenerateReportResponse, *http.Response, error) {
|
||
return r.ApiService.GenerateGoodsMovementReportExecute(r)
|
||
}
|
||
|
||
/*
|
||
GenerateGoodsMovementReport Отчет по движению товаров
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/generateGoodsMovementReport.md) %}
|
||
|
||
Запускает генерацию отчета по движению товаров. [Что это за отчет](https://yandex.ru/support/marketplace/analytics/reports-fby-fbs.html#flow)
|
||
|
||
Узнать статус генерации и получить ссылку на готовый отчет можно с помощью запроса [GET reports/info/{reportId}](../../reference/reports/getReportInfo.md).
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/sku/movement/movement_config.md) %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGenerateGoodsMovementReportRequest
|
||
*/
|
||
func (a *LaasAPIService) GenerateGoodsMovementReport(ctx context.Context) LaasAPIGenerateGoodsMovementReportRequest {
|
||
return LaasAPIGenerateGoodsMovementReportRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GenerateReportResponse
|
||
func (a *LaasAPIService) GenerateGoodsMovementReportExecute(r LaasAPIGenerateGoodsMovementReportRequest) (*GenerateReportResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GenerateReportResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GenerateGoodsMovementReport")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/reports/goods-movement/generate"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.generateGoodsMovementReportRequest == nil {
|
||
return localVarReturnValue, nil, reportError("generateGoodsMovementReportRequest is required and must be specified")
|
||
}
|
||
|
||
if r.format != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "format", r.format, "", "")
|
||
} else {
|
||
var defaultValue ReportFormatType = "FILE"
|
||
r.format = &defaultValue
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.generateGoodsMovementReportRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGenerateStocksOnWarehousesReportRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
generateStocksOnWarehousesReportRequest *GenerateStocksOnWarehousesReportRequest
|
||
format *ReportFormatType
|
||
}
|
||
|
||
func (r LaasAPIGenerateStocksOnWarehousesReportRequest) GenerateStocksOnWarehousesReportRequest(generateStocksOnWarehousesReportRequest GenerateStocksOnWarehousesReportRequest) LaasAPIGenerateStocksOnWarehousesReportRequest {
|
||
r.generateStocksOnWarehousesReportRequest = &generateStocksOnWarehousesReportRequest
|
||
return r
|
||
}
|
||
|
||
// Формат отчета или документа.
|
||
func (r LaasAPIGenerateStocksOnWarehousesReportRequest) Format(format ReportFormatType) LaasAPIGenerateStocksOnWarehousesReportRequest {
|
||
r.format = &format
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGenerateStocksOnWarehousesReportRequest) Execute() (*GenerateReportResponse, *http.Response, error) {
|
||
return r.ApiService.GenerateStocksOnWarehousesReportExecute(r)
|
||
}
|
||
|
||
/*
|
||
GenerateStocksOnWarehousesReport Отчет по остаткам на складах
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/generateStocksOnWarehousesReport.md) %}
|
||
|
||
Запускает генерацию отчета по остаткам на складах. [Что это за отчет](https://yandex.ru/support/marketplace/ru/storage/logistics#remains-history)
|
||
|
||
**Какая информация вернется:**
|
||
|
||
* Для модели :no-translate[FBY] — об остатках на складах Маркета.
|
||
* Для остальных моделей, если указать `businessId`, — об остатках на всех складах магазинов в кабинете, кроме :no-translate[FBY]. Используйте фильтр `campaignIds`, чтобы указать определенные магазины.
|
||
* Для остальных моделей, если указать `campaignId`, — об остатках на соответствующем складе магазина. Этот тип отчета скоро станет недоступен.
|
||
|
||
⚠️ Не передавайте одновременно `campaignId` и `businessId`.
|
||
|
||
Узнать статус генерации и получить ссылку на готовый отчет можно с помощью запроса [GET reports/info/{reportId}](../../reference/reports/getReportInfo.md).
|
||
|
||
{% list tabs %}
|
||
|
||
- Склад Маркета
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/stocks/stocks_on_warehouses.md) %}
|
||
|
||
- Склад магазина
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/offers/mass/mass_shared_stocks_business_csv_config.md) %}
|
||
|
||
- Все склады магазинов в кабинете, кроме :no-translate[FBY]
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/offers/stocks_business_config.md) %}
|
||
|
||
{% endlist %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGenerateStocksOnWarehousesReportRequest
|
||
*/
|
||
func (a *LaasAPIService) GenerateStocksOnWarehousesReport(ctx context.Context) LaasAPIGenerateStocksOnWarehousesReportRequest {
|
||
return LaasAPIGenerateStocksOnWarehousesReportRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GenerateReportResponse
|
||
func (a *LaasAPIService) GenerateStocksOnWarehousesReportExecute(r LaasAPIGenerateStocksOnWarehousesReportRequest) (*GenerateReportResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GenerateReportResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GenerateStocksOnWarehousesReport")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/reports/stocks-on-warehouses/generate"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.generateStocksOnWarehousesReportRequest == nil {
|
||
return localVarReturnValue, nil, reportError("generateStocksOnWarehousesReportRequest is required and must be specified")
|
||
}
|
||
|
||
if r.format != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "format", r.format, "", "")
|
||
} else {
|
||
var defaultValue ReportFormatType = "FILE"
|
||
r.format = &defaultValue
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.generateStocksOnWarehousesReportRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGenerateUnitedMarketplaceServicesReportRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
generateUnitedMarketplaceServicesReportRequest *GenerateUnitedMarketplaceServicesReportRequest
|
||
format *ReportFormatType
|
||
language *ReportLanguageType
|
||
}
|
||
|
||
func (r LaasAPIGenerateUnitedMarketplaceServicesReportRequest) GenerateUnitedMarketplaceServicesReportRequest(generateUnitedMarketplaceServicesReportRequest GenerateUnitedMarketplaceServicesReportRequest) LaasAPIGenerateUnitedMarketplaceServicesReportRequest {
|
||
r.generateUnitedMarketplaceServicesReportRequest = &generateUnitedMarketplaceServicesReportRequest
|
||
return r
|
||
}
|
||
|
||
// Формат отчета или документа.
|
||
func (r LaasAPIGenerateUnitedMarketplaceServicesReportRequest) Format(format ReportFormatType) LaasAPIGenerateUnitedMarketplaceServicesReportRequest {
|
||
r.format = &format
|
||
return r
|
||
}
|
||
|
||
// Язык отчета или документа.
|
||
func (r LaasAPIGenerateUnitedMarketplaceServicesReportRequest) Language(language ReportLanguageType) LaasAPIGenerateUnitedMarketplaceServicesReportRequest {
|
||
r.language = &language
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGenerateUnitedMarketplaceServicesReportRequest) Execute() (*GenerateReportResponse, *http.Response, error) {
|
||
return r.ApiService.GenerateUnitedMarketplaceServicesReportExecute(r)
|
||
}
|
||
|
||
/*
|
||
GenerateUnitedMarketplaceServicesReport Отчет по стоимости услуг
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/generateUnitedMarketplaceServicesReport.md) %}
|
||
|
||
Запускает генерацию отчета по стоимости услуг за заданный период. [Что это за отчет](https://yandex.ru/support/marketplace/ru/accounting/transactions#reports)
|
||
|
||
Тип отчета зависит от того, какие поля заполнены в запросе:
|
||
|
||
|**Тип отчета** |**Какие поля нужны** |
|
||
|-----------------------------|---------------------------------|
|
||
|По дате начисления услуги |`dateFrom` и `dateTo` |
|
||
|По дате формирования акта |`year` и `month` |
|
||
|
||
Заказать отчеты обоих типов одним запросом нельзя.
|
||
|
||
Узнать статус генерации и получить ссылку на готовый отчет можно с помощью запроса [GET reports/info/{reportId}](../../reference/reports/getReportInfo.md).
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/united/services/generator/united_marketplace_services.md) %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGenerateUnitedMarketplaceServicesReportRequest
|
||
*/
|
||
func (a *LaasAPIService) GenerateUnitedMarketplaceServicesReport(ctx context.Context) LaasAPIGenerateUnitedMarketplaceServicesReportRequest {
|
||
return LaasAPIGenerateUnitedMarketplaceServicesReportRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GenerateReportResponse
|
||
func (a *LaasAPIService) GenerateUnitedMarketplaceServicesReportExecute(r LaasAPIGenerateUnitedMarketplaceServicesReportRequest) (*GenerateReportResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GenerateReportResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GenerateUnitedMarketplaceServicesReport")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/reports/united-marketplace-services/generate"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.generateUnitedMarketplaceServicesReportRequest == nil {
|
||
return localVarReturnValue, nil, reportError("generateUnitedMarketplaceServicesReportRequest is required and must be specified")
|
||
}
|
||
|
||
if r.format != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "format", r.format, "", "")
|
||
} else {
|
||
var defaultValue ReportFormatType = "FILE"
|
||
r.format = &defaultValue
|
||
}
|
||
if r.language != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "language", r.language, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.generateUnitedMarketplaceServicesReportRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGenerateUnitedReturnsReportRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
generateUnitedReturnsRequest *GenerateUnitedReturnsRequest
|
||
format *ReportFormatType
|
||
}
|
||
|
||
func (r LaasAPIGenerateUnitedReturnsReportRequest) GenerateUnitedReturnsRequest(generateUnitedReturnsRequest GenerateUnitedReturnsRequest) LaasAPIGenerateUnitedReturnsReportRequest {
|
||
r.generateUnitedReturnsRequest = &generateUnitedReturnsRequest
|
||
return r
|
||
}
|
||
|
||
// Формат отчета или документа.
|
||
func (r LaasAPIGenerateUnitedReturnsReportRequest) Format(format ReportFormatType) LaasAPIGenerateUnitedReturnsReportRequest {
|
||
r.format = &format
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGenerateUnitedReturnsReportRequest) Execute() (*GenerateReportResponse, *http.Response, error) {
|
||
return r.ApiService.GenerateUnitedReturnsReportExecute(r)
|
||
}
|
||
|
||
/*
|
||
GenerateUnitedReturnsReport Отчет по невыкупам и возвратам
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/generateUnitedReturnsReport.md) %}
|
||
|
||
Запускает генерацию сводного отчета по невыкупам и возвратам за заданный период. [Что это за отчет](https://yandex.ru/support/marketplace/ru/orders/returns/logistic#rejected-orders)
|
||
|
||
Отчет содержит информацию о невыкупах и возвратах за указанный период, а также о тех, которые готовы к выдаче.
|
||
|
||
Узнать статус генерации и получить ссылку на готовый отчет можно с помощью запроса [GET reports/info/{reportId}](../../reference/reports/getReportInfo.md).
|
||
|
||
{% include notitle [:no-translate[reports]](../../_auto/reports/united/returns/generator/united_returns.md) %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGenerateUnitedReturnsReportRequest
|
||
*/
|
||
func (a *LaasAPIService) GenerateUnitedReturnsReport(ctx context.Context) LaasAPIGenerateUnitedReturnsReportRequest {
|
||
return LaasAPIGenerateUnitedReturnsReportRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GenerateReportResponse
|
||
func (a *LaasAPIService) GenerateUnitedReturnsReportExecute(r LaasAPIGenerateUnitedReturnsReportRequest) (*GenerateReportResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GenerateReportResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GenerateUnitedReturnsReport")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/reports/united-returns/generate"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.generateUnitedReturnsRequest == nil {
|
||
return localVarReturnValue, nil, reportError("generateUnitedReturnsRequest is required and must be specified")
|
||
}
|
||
|
||
if r.format != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "format", r.format, "", "")
|
||
} else {
|
||
var defaultValue ReportFormatType = "FILE"
|
||
r.format = &defaultValue
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.generateUnitedReturnsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetAuthTokenInfoRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
}
|
||
|
||
func (r LaasAPIGetAuthTokenInfoRequest) Execute() (*GetTokenInfoResponse, *http.Response, error) {
|
||
return r.ApiService.GetAuthTokenInfoExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetAuthTokenInfo Получение информации об авторизационном токене
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getAuthTokenInfo.md) %}
|
||
|
||
{% note info "Метод доступен только для Api-Key-токена." %}
|
||
|
||
{% endnote %}
|
||
|
||
Возвращает информацию о переданном авторизационном токене.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGetAuthTokenInfoRequest
|
||
*/
|
||
func (a *LaasAPIService) GetAuthTokenInfo(ctx context.Context) LaasAPIGetAuthTokenInfoRequest {
|
||
return LaasAPIGetAuthTokenInfoRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetTokenInfoResponse
|
||
func (a *LaasAPIService) GetAuthTokenInfoExecute(r LaasAPIGetAuthTokenInfoRequest) (*GetTokenInfoResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetTokenInfoResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetAuthTokenInfo")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/auth/token"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetBusinessSettingsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
}
|
||
|
||
func (r LaasAPIGetBusinessSettingsRequest) Execute() (*GetBusinessSettingsResponse, *http.Response, error) {
|
||
return r.ApiService.GetBusinessSettingsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetBusinessSettings Настройки кабинета
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getBusinessSettings.md) %}
|
||
|
||
Возвращает информацию о настройках кабинета, идентификатор которого указан в запросе.
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIGetBusinessSettingsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetBusinessSettings(ctx context.Context, businessId int64) LaasAPIGetBusinessSettingsRequest {
|
||
return LaasAPIGetBusinessSettingsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetBusinessSettingsResponse
|
||
func (a *LaasAPIService) GetBusinessSettingsExecute(r LaasAPIGetBusinessSettingsRequest) (*GetBusinessSettingsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetBusinessSettingsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetBusinessSettings")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/settings"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetCampaignRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
}
|
||
|
||
func (r LaasAPIGetCampaignRequest) Execute() (*GetCampaignResponse, *http.Response, error) {
|
||
return r.ApiService.GetCampaignExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetCampaign Информация о магазине
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getCampaign.md) %}
|
||
|
||
Возвращает информацию о магазине.
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetCampaignRequest
|
||
*/
|
||
func (a *LaasAPIService) GetCampaign(ctx context.Context, campaignId int64) LaasAPIGetCampaignRequest {
|
||
return LaasAPIGetCampaignRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetCampaignResponse
|
||
func (a *LaasAPIService) GetCampaignExecute(r LaasAPIGetCampaignRequest) (*GetCampaignResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetCampaignResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetCampaign")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetCampaignOffersRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
getCampaignOffersRequest *GetCampaignOffersRequest
|
||
pageToken *string
|
||
limit *int32
|
||
}
|
||
|
||
func (r LaasAPIGetCampaignOffersRequest) GetCampaignOffersRequest(getCampaignOffersRequest GetCampaignOffersRequest) LaasAPIGetCampaignOffersRequest {
|
||
r.getCampaignOffersRequest = &getCampaignOffersRequest
|
||
return r
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetCampaignOffersRequest) PageToken(pageToken string) LaasAPIGetCampaignOffersRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetCampaignOffersRequest) Limit(limit int32) LaasAPIGetCampaignOffersRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetCampaignOffersRequest) Execute() (*GetCampaignOffersResponse, *http.Response, error) {
|
||
return r.ApiService.GetCampaignOffersExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetCampaignOffers Информация о товарах, которые размещены в заданном магазине
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getCampaignOffers.md) %}
|
||
|
||
Возвращает список товаров, которые размещены в заданном магазине. Для каждого товара указываются параметры размещения.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetCampaignOffersRequest
|
||
*/
|
||
func (a *LaasAPIService) GetCampaignOffers(ctx context.Context, campaignId int64) LaasAPIGetCampaignOffersRequest {
|
||
return LaasAPIGetCampaignOffersRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetCampaignOffersResponse
|
||
func (a *LaasAPIService) GetCampaignOffersExecute(r LaasAPIGetCampaignOffersRequest) (*GetCampaignOffersResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetCampaignOffersResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetCampaignOffers")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/offers"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.getCampaignOffersRequest == nil {
|
||
return localVarReturnValue, nil, reportError("getCampaignOffersRequest is required and must be specified")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getCampaignOffersRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetCampaignSettingsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
}
|
||
|
||
func (r LaasAPIGetCampaignSettingsRequest) Execute() (*GetCampaignSettingsResponse, *http.Response, error) {
|
||
return r.ApiService.GetCampaignSettingsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetCampaignSettings Настройки магазина
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getCampaignSettings.md) %}
|
||
|
||
Возвращает информацию о настройках магазина, идентификатор которого указан в запросе.
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetCampaignSettingsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetCampaignSettings(ctx context.Context, campaignId int64) LaasAPIGetCampaignSettingsRequest {
|
||
return LaasAPIGetCampaignSettingsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetCampaignSettingsResponse
|
||
func (a *LaasAPIService) GetCampaignSettingsExecute(r LaasAPIGetCampaignSettingsRequest) (*GetCampaignSettingsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetCampaignSettingsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetCampaignSettings")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/settings"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetCampaignsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
page *int32
|
||
pageSize *int32
|
||
}
|
||
|
||
// {% note warning \"Если в методе есть :no-translate[`page_token`]\" %} Используйте его вместо параметра :no-translate[`page`]. [Подробнее о типах пагинации и их использовании](:no-translate[../../concepts/pagination.md]) {% endnote %} Номер страницы результатов. Используется вместе с параметром :no-translate[`pageSize`]. :no-translate[`page`] игнорируется, если задан :no-translate[`page_token`] или :no-translate[`limit`].
|
||
func (r LaasAPIGetCampaignsRequest) Page(page int32) LaasAPIGetCampaignsRequest {
|
||
r.page = &page
|
||
return r
|
||
}
|
||
|
||
// Размер страницы. Используется вместе с параметром :no-translate[`page`]. :no-translate[`pageSize`] игнорируется, если задан :no-translate[`page_token`] или :no-translate[`limit`].
|
||
func (r LaasAPIGetCampaignsRequest) PageSize(pageSize int32) LaasAPIGetCampaignsRequest {
|
||
r.pageSize = &pageSize
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetCampaignsRequest) Execute() (*GetCampaignsResponse, *http.Response, error) {
|
||
return r.ApiService.GetCampaignsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetCampaigns Список магазинов пользователя
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getCampaigns.md) %}
|
||
|
||
**Для Api-Key-токена:** возвращает список магазинов в кабинете, для которого выдан токен. Нельзя получить список только подагентских магазинов.
|
||
|
||
**Для OAuth-токена:** возвращает список магазинов, к которым имеет доступ пользователь — владелец авторизационного токена, использованного в запросе. Для агентских пользователей список состоит из подагентских магазинов.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGetCampaignsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetCampaigns(ctx context.Context) LaasAPIGetCampaignsRequest {
|
||
return LaasAPIGetCampaignsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetCampaignsResponse
|
||
func (a *LaasAPIService) GetCampaignsExecute(r LaasAPIGetCampaignsRequest) (*GetCampaignsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetCampaignsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetCampaigns")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
|
||
if r.page != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page", r.page, "", "")
|
||
} else {
|
||
var defaultValue int32 = 1
|
||
r.page = &defaultValue
|
||
}
|
||
if r.pageSize != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "pageSize", r.pageSize, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetCategoriesMaxSaleQuantumRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
getCategoriesMaxSaleQuantumRequest *GetCategoriesMaxSaleQuantumRequest
|
||
}
|
||
|
||
func (r LaasAPIGetCategoriesMaxSaleQuantumRequest) GetCategoriesMaxSaleQuantumRequest(getCategoriesMaxSaleQuantumRequest GetCategoriesMaxSaleQuantumRequest) LaasAPIGetCategoriesMaxSaleQuantumRequest {
|
||
r.getCategoriesMaxSaleQuantumRequest = &getCategoriesMaxSaleQuantumRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetCategoriesMaxSaleQuantumRequest) Execute() (*GetCategoriesMaxSaleQuantumResponse, *http.Response, error) {
|
||
return r.ApiService.GetCategoriesMaxSaleQuantumExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetCategoriesMaxSaleQuantum Лимит на установку кванта продажи и минимального количества товаров в заказе
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getCategoriesMaxSaleQuantum.md) %}
|
||
|
||
Возвращает лимит на установку [кванта](:no-translate[*quantum]) и минимального количества товаров в заказе, которые вы можете задать для товаров указанных категорий.
|
||
|
||
Если вы передадите значение кванта или минимального количества товаров выше установленного Маркетом ограничения, товар будет скрыт с витрины.
|
||
|
||
Подробнее о том, как продавать товары по несколько штук, читайте [в Справке Маркета для продавцов](https://yandex.ru/support2/marketplace/ru/assortment/fields/quantum).
|
||
|
||
|**:no-translate[⚙️] Лимит:** 5 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGetCategoriesMaxSaleQuantumRequest
|
||
|
||
Deprecated
|
||
*/
|
||
func (a *LaasAPIService) GetCategoriesMaxSaleQuantum(ctx context.Context) LaasAPIGetCategoriesMaxSaleQuantumRequest {
|
||
return LaasAPIGetCategoriesMaxSaleQuantumRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetCategoriesMaxSaleQuantumResponse
|
||
//
|
||
// Deprecated
|
||
func (a *LaasAPIService) GetCategoriesMaxSaleQuantumExecute(r LaasAPIGetCategoriesMaxSaleQuantumRequest) (*GetCategoriesMaxSaleQuantumResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetCategoriesMaxSaleQuantumResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetCategoriesMaxSaleQuantum")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/categories/max-sale-quantum"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.getCategoriesMaxSaleQuantumRequest == nil {
|
||
return localVarReturnValue, nil, reportError("getCategoriesMaxSaleQuantumRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getCategoriesMaxSaleQuantumRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetCategoriesTreeRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
getCategoriesRequest *GetCategoriesRequest
|
||
}
|
||
|
||
func (r LaasAPIGetCategoriesTreeRequest) GetCategoriesRequest(getCategoriesRequest GetCategoriesRequest) LaasAPIGetCategoriesTreeRequest {
|
||
r.getCategoriesRequest = &getCategoriesRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetCategoriesTreeRequest) Execute() (*GetCategoriesResponse, *http.Response, error) {
|
||
return r.ApiService.GetCategoriesTreeExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetCategoriesTree Дерево категорий
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getCategoriesTree.md) %}
|
||
|
||
Возвращает дерево категорий Маркета.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGetCategoriesTreeRequest
|
||
*/
|
||
func (a *LaasAPIService) GetCategoriesTree(ctx context.Context) LaasAPIGetCategoriesTreeRequest {
|
||
return LaasAPIGetCategoriesTreeRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetCategoriesResponse
|
||
func (a *LaasAPIService) GetCategoriesTreeExecute(r LaasAPIGetCategoriesTreeRequest) (*GetCategoriesResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetCategoriesResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetCategoriesTree")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/categories/tree"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getCategoriesRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetCategoryContentParametersRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
categoryId int64
|
||
businessId *int64
|
||
}
|
||
|
||
// Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). Передайте параметр, чтобы получить характеристики, которые являются особенностями варианта товара в данном кабинете.
|
||
func (r LaasAPIGetCategoryContentParametersRequest) BusinessId(businessId int64) LaasAPIGetCategoryContentParametersRequest {
|
||
r.businessId = &businessId
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetCategoryContentParametersRequest) Execute() (*GetCategoryContentParametersResponse, *http.Response, error) {
|
||
return r.ApiService.GetCategoryContentParametersExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetCategoryContentParameters Списки характеристик товаров по категориям
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getCategoryContentParameters.md) %}
|
||
|
||
Возвращает список характеристик с допустимыми значениями для заданной листовой категории — той, у которой нет дочерних категорий.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 категорий в минуту |
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param categoryId Идентификатор категории на Маркете. Чтобы узнать идентификатор категории, к которой относится интересующий вас товар, воспользуйтесь запросом [:no-translate[POST categories/tree]](:no-translate[../../reference/categories/getCategoriesTree.md]).
|
||
@return LaasAPIGetCategoryContentParametersRequest
|
||
*/
|
||
func (a *LaasAPIService) GetCategoryContentParameters(ctx context.Context, categoryId int64) LaasAPIGetCategoryContentParametersRequest {
|
||
return LaasAPIGetCategoryContentParametersRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
categoryId: categoryId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetCategoryContentParametersResponse
|
||
func (a *LaasAPIService) GetCategoryContentParametersExecute(r LaasAPIGetCategoryContentParametersRequest) (*GetCategoryContentParametersResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetCategoryContentParametersResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetCategoryContentParameters")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/category/{categoryId}/parameters"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"categoryId"+"}", url.PathEscape(parameterValueToString(r.categoryId, "categoryId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.categoryId < 1 {
|
||
return localVarReturnValue, nil, reportError("categoryId must be greater than 1")
|
||
}
|
||
|
||
if r.businessId != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "businessId", r.businessId, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetDefaultPricesRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
pageToken *string
|
||
limit *int32
|
||
getDefaultPricesRequest *GetDefaultPricesRequest
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetDefaultPricesRequest) PageToken(pageToken string) LaasAPIGetDefaultPricesRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetDefaultPricesRequest) Limit(limit int32) LaasAPIGetDefaultPricesRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetDefaultPricesRequest) GetDefaultPricesRequest(getDefaultPricesRequest GetDefaultPricesRequest) LaasAPIGetDefaultPricesRequest {
|
||
r.getDefaultPricesRequest = &getDefaultPricesRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetDefaultPricesRequest) Execute() (*GetDefaultPricesResponse, *http.Response, error) {
|
||
return r.ApiService.GetDefaultPricesExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetDefaultPrices Просмотр цен на указанные товары во всех магазинах
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getDefaultPrices.md) %}
|
||
|
||
Возвращает список цен, которые вы установили для всех магазинов любым способом. Например, через API или с помощью Excel-шаблона.
|
||
|
||
О способах установки цен читайте [в Справке Маркета для продавцов](https://yandex.ru/support/marketplace/assortment/operations/prices.html).
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIGetDefaultPricesRequest
|
||
*/
|
||
func (a *LaasAPIService) GetDefaultPrices(ctx context.Context, businessId int64) LaasAPIGetDefaultPricesRequest {
|
||
return LaasAPIGetDefaultPricesRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetDefaultPricesResponse
|
||
func (a *LaasAPIService) GetDefaultPricesExecute(r LaasAPIGetDefaultPricesRequest) (*GetDefaultPricesResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetDefaultPricesResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetDefaultPrices")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/offer-prices"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getDefaultPricesRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetFulfillmentWarehousesRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
}
|
||
|
||
func (r LaasAPIGetFulfillmentWarehousesRequest) Execute() (*GetFulfillmentWarehousesResponse, *http.Response, error) {
|
||
return r.ApiService.GetFulfillmentWarehousesExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetFulfillmentWarehouses Идентификаторы складов Маркета
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getFulfillmentWarehouses.md) %}
|
||
|
||
Возвращает список складов Маркета с их идентификаторами.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGetFulfillmentWarehousesRequest
|
||
*/
|
||
func (a *LaasAPIService) GetFulfillmentWarehouses(ctx context.Context) LaasAPIGetFulfillmentWarehousesRequest {
|
||
return LaasAPIGetFulfillmentWarehousesRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetFulfillmentWarehousesResponse
|
||
func (a *LaasAPIService) GetFulfillmentWarehousesExecute(r LaasAPIGetFulfillmentWarehousesRequest) (*GetFulfillmentWarehousesResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetFulfillmentWarehousesResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetFulfillmentWarehouses")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/warehouses"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetOfferCardsContentStatusRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
pageToken *string
|
||
limit *int32
|
||
getOfferCardsContentStatusRequest *GetOfferCardsContentStatusRequest
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetOfferCardsContentStatusRequest) PageToken(pageToken string) LaasAPIGetOfferCardsContentStatusRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetOfferCardsContentStatusRequest) Limit(limit int32) LaasAPIGetOfferCardsContentStatusRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetOfferCardsContentStatusRequest) GetOfferCardsContentStatusRequest(getOfferCardsContentStatusRequest GetOfferCardsContentStatusRequest) LaasAPIGetOfferCardsContentStatusRequest {
|
||
r.getOfferCardsContentStatusRequest = &getOfferCardsContentStatusRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetOfferCardsContentStatusRequest) Execute() (*GetOfferCardsContentStatusResponse, *http.Response, error) {
|
||
return r.ApiService.GetOfferCardsContentStatusExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetOfferCardsContentStatus Получение информации о заполненности карточек магазина
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getOfferCardsContentStatus.md) %}
|
||
|
||
Возвращает сведения о состоянии контента для заданных товаров:
|
||
|
||
* создана ли карточка товара и в каком она статусе;
|
||
* рейтинг карточки — на сколько процентов она заполнена;
|
||
* переданные характеристики товаров;
|
||
* есть ли ошибки или предупреждения, связанные с контентом;
|
||
* рекомендации по заполнению карточки.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 600 запросов в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIGetOfferCardsContentStatusRequest
|
||
*/
|
||
func (a *LaasAPIService) GetOfferCardsContentStatus(ctx context.Context, businessId int64) LaasAPIGetOfferCardsContentStatusRequest {
|
||
return LaasAPIGetOfferCardsContentStatusRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetOfferCardsContentStatusResponse
|
||
func (a *LaasAPIService) GetOfferCardsContentStatusExecute(r LaasAPIGetOfferCardsContentStatusRequest) (*GetOfferCardsContentStatusResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetOfferCardsContentStatusResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetOfferCardsContentStatus")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/offer-cards"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getOfferCardsContentStatusRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetOfferMappingsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
pageToken *string
|
||
limit *int32
|
||
language *CatalogLanguageType
|
||
getOfferMappingsRequest *GetOfferMappingsRequest
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetOfferMappingsRequest) PageToken(pageToken string) LaasAPIGetOfferMappingsRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetOfferMappingsRequest) Limit(limit int32) LaasAPIGetOfferMappingsRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
// Язык, на котором принимаются и возвращаются значения в параметрах :no-translate[`name`] и :no-translate[`description`]. Значение по умолчанию: :no-translate[`RU`].
|
||
func (r LaasAPIGetOfferMappingsRequest) Language(language CatalogLanguageType) LaasAPIGetOfferMappingsRequest {
|
||
r.language = &language
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetOfferMappingsRequest) GetOfferMappingsRequest(getOfferMappingsRequest GetOfferMappingsRequest) LaasAPIGetOfferMappingsRequest {
|
||
r.getOfferMappingsRequest = &getOfferMappingsRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetOfferMappingsRequest) Execute() (*GetOfferMappingsResponse, *http.Response, error) {
|
||
return r.ApiService.GetOfferMappingsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetOfferMappings Информация о товарах в каталоге
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getOfferMappings.md) %}
|
||
|
||
Возвращает список товаров в каталоге, их категории на Маркете и характеристики каждого товара.
|
||
|
||
Можно использовать тремя способами:
|
||
* задать список интересующих :no-translate[SKU];
|
||
* задать фильтр — в этом случае результаты возвращаются постранично;
|
||
* не передавать тело запроса, чтобы получить список всех товаров в каталоге.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 600 запросов в минуту, не более 200 товаров в одном запросе|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIGetOfferMappingsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetOfferMappings(ctx context.Context, businessId int64) LaasAPIGetOfferMappingsRequest {
|
||
return LaasAPIGetOfferMappingsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetOfferMappingsResponse
|
||
func (a *LaasAPIService) GetOfferMappingsExecute(r LaasAPIGetOfferMappingsRequest) (*GetOfferMappingsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetOfferMappingsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetOfferMappings")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/offer-mappings"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
if r.language != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "language", r.language, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getOfferMappingsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetOrderRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
orderId int64
|
||
}
|
||
|
||
func (r LaasAPIGetOrderRequest) Execute() (*GetOrderResponse, *http.Response, error) {
|
||
return r.ApiService.GetOrderExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetOrder Информация об одном заказе
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getOrder.md) %}
|
||
|
||
Возвращает информацию о заказе.
|
||
|
||
{% note tip "Вы также можете настроить API-уведомления" %}
|
||
|
||
Маркет отправит вам [запрос](../../push-notifications/reference/sendNotification.md), когда появится новый заказ или изменится его статус. А полную информацию можно получить с помощью этого метода или [GET campaigns/{campaignId}/orders](../../reference/orders/getOrders.md).
|
||
|
||
[{#T}](../../push-notifications/index.md)
|
||
|
||
{% endnote %}
|
||
|
||
Получить более подробную информацию о покупателе и его номере телефона можно с помощью запроса [GET campaigns/{campaignId}/orders/{orderId}/buyer](../../reference/orders/getOrderBuyerInfo.md).
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@param orderId Идентификатор заказа.
|
||
@return LaasAPIGetOrderRequest
|
||
*/
|
||
func (a *LaasAPIService) GetOrder(ctx context.Context, campaignId int64, orderId int64) LaasAPIGetOrderRequest {
|
||
return LaasAPIGetOrderRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
orderId: orderId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetOrderResponse
|
||
func (a *LaasAPIService) GetOrderExecute(r LaasAPIGetOrderRequest) (*GetOrderResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetOrderResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetOrder")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/orders/{orderId}"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
localVarPath = strings.Replace(localVarPath, "{"+"orderId"+"}", url.PathEscape(parameterValueToString(r.orderId, "orderId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetOrdersRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
orderIds *[]int64
|
||
status *[]OrderStatusType
|
||
substatus *[]OrderSubstatusType
|
||
fromDate *string
|
||
toDate *string
|
||
supplierShipmentDateFrom *string
|
||
supplierShipmentDateTo *string
|
||
updatedAtFrom *time.Time
|
||
updatedAtTo *time.Time
|
||
dispatchType *OrderDeliveryDispatchType
|
||
fake *bool
|
||
hasCis *bool
|
||
onlyWaitingForCancellationApprove *bool
|
||
onlyEstimatedDelivery *bool
|
||
buyerType *OrderBuyerType
|
||
page *int32
|
||
pageSize *int32
|
||
pageToken *string
|
||
limit *int32
|
||
}
|
||
|
||
// Фильтрация заказов по идентификаторам. <br><br> ⚠️ Не используйте это поле одновременно с другими фильтрами. Если вы хотите воспользоваться ими, оставьте поле пустым.
|
||
func (r LaasAPIGetOrdersRequest) OrderIds(orderIds []int64) LaasAPIGetOrdersRequest {
|
||
r.orderIds = &orderIds
|
||
return r
|
||
}
|
||
|
||
// Статус заказа: * `CANCELLED` — заказ отменен. * `DELIVERED` — заказ получен покупателем. * `DELIVERY` — заказ передан в службу доставки. * `PICKUP` — заказ доставлен в пункт самовывоза. * `PROCESSING` — заказ находится в обработке. * `UNPAID` — заказ оформлен, но еще не оплачен (если выбрана оплата при оформлении).
|
||
func (r LaasAPIGetOrdersRequest) Status(status []OrderStatusType) LaasAPIGetOrdersRequest {
|
||
r.status = &status
|
||
return r
|
||
}
|
||
|
||
// Этап обработки заказа (если он имеет статус `PROCESSING`) или причина отмены заказа (если он имеет статус `CANCELLED`). Возможные значения для заказа в статусе `PROCESSING`: * `STARTED` — заказ подтвержден, его можно начать обрабатывать. * `READY_TO_SHIP` — заказ собран и готов к отправке. * `SHIPPED` — заказ передан службе доставки. Возможные значения для заказа в статусе `CANCELLED`: * `RESERVATION_EXPIRED` — покупатель не завершил оформление зарезервированного заказа в течение 10 минут. * `USER_NOT_PAID` — покупатель не оплатил заказ (для типа оплаты `PREPAID`) в течение 30 минут. * `USER_UNREACHABLE` — не удалось связаться с покупателем. Для отмены с этой причиной необходимо выполнить условия: * не менее 3 звонков с 8 до 21 в часовом поясе покупателя; * перерыв между первым и третьим звонком не менее 90 минут; * соединение не короче 5 секунд. Если хотя бы одно из этих условий не выполнено (кроме случая, когда номер недоступен), отменить заказ не получится. Вернется ответ с кодом ошибки 400 * `USER_CHANGED_MIND` — покупатель отменил заказ по личным причинам. * `USER_REFUSED_DELIVERY` — покупателя не устроили условия доставки. * `USER_REFUSED_PRODUCT` — покупателю не подошел товар. * `SHOP_FAILED` — магазин не может выполнить заказ. * `USER_REFUSED_QUALITY` — покупателя не устроило качество товара. * `REPLACING_ORDER` — покупатель решил заменить товар другим по собственной инициативе. * `PROCESSING_EXPIRED` — значение более не используется. * `PICKUP_EXPIRED` — закончился срок хранения заказа в ПВЗ. * `DELIVERY_SERVICE_UNDELIVERED` — служба доставки не смогла доставить заказ. * `CANCELLED_COURIER_NOT_FOUND` — не удалось найти курьера. * `USER_WANTS_TO_CHANGE_DELIVERY_DATE` — покупатель хочет получить заказ в другой день. * `RESERVATION_FAILED` — Маркет не может продолжить дальнейшую обработку заказа.
|
||
func (r LaasAPIGetOrdersRequest) Substatus(substatus []OrderSubstatusType) LaasAPIGetOrdersRequest {
|
||
r.substatus = &substatus
|
||
return r
|
||
}
|
||
|
||
// Начальная дата для фильтрации заказов по дате оформления. Формат даты: `ДД-ММ-ГГГГ`. Между начальной и конечной датой (параметр `toDate`) должно быть не больше 30 дней. Значение по умолчанию: 30 дней назад от текущей даты.
|
||
func (r LaasAPIGetOrdersRequest) FromDate(fromDate string) LaasAPIGetOrdersRequest {
|
||
r.fromDate = &fromDate
|
||
return r
|
||
}
|
||
|
||
// Конечная дата для фильтрации заказов по дате оформления. Показываются заказы, созданные до 00:00 указанного дня. Формат даты: `ДД-ММ-ГГГГ`. Между начальной (параметр `fromDate`) и конечной датой должно быть не больше 30 дней. Значение по умолчанию: текущая дата. Если промежуток времени между `toDate` и `fromDate` меньше суток, то `toDate` равен `fromDate` + сутки.
|
||
func (r LaasAPIGetOrdersRequest) ToDate(toDate string) LaasAPIGetOrdersRequest {
|
||
r.toDate = &toDate
|
||
return r
|
||
}
|
||
|
||
// Начальная дата для фильтрации заказов по дате отгрузки в службу доставки (параметр `shipmentDate`). Формат даты: `ДД-ММ-ГГГГ`. Между начальной и конечной датой (параметр `supplierShipmentDateTo`) должно быть не больше 30 дней. Начальная дата включается в интервал для фильтрации.
|
||
func (r LaasAPIGetOrdersRequest) SupplierShipmentDateFrom(supplierShipmentDateFrom string) LaasAPIGetOrdersRequest {
|
||
r.supplierShipmentDateFrom = &supplierShipmentDateFrom
|
||
return r
|
||
}
|
||
|
||
// Конечная дата для фильтрации заказов по дате отгрузки в службу доставки (параметр `shipmentDate`). Формат даты: `ДД-ММ-ГГГГ`. Между начальной (параметр `supplierShipmentDateFrom`) и конечной датой должно быть не больше 30 дней. Конечная дата не включается в интервал для фильтрации. Если промежуток времени между `supplierShipmentDateTo` и `supplierShipmentDateFrom` меньше суток, то `supplierShipmentDateTo` равен `supplierShipmentDateFrom` + сутки.
|
||
func (r LaasAPIGetOrdersRequest) SupplierShipmentDateTo(supplierShipmentDateTo string) LaasAPIGetOrdersRequest {
|
||
r.supplierShipmentDateTo = &supplierShipmentDateTo
|
||
return r
|
||
}
|
||
|
||
// Начальная дата для фильтрации заказов по дате и времени обновления (параметр `updatedAt`). Формат даты: :no-translate[ISO 8601] со смещением относительно :no-translate[UTC]. Например, `2017-11-21T00:42:42+03:00`. Между начальной и конечной датой (параметр `updatedAtTo`) должно быть не больше 30 дней. Начальная дата включается в интервал для фильтрации.
|
||
func (r LaasAPIGetOrdersRequest) UpdatedAtFrom(updatedAtFrom time.Time) LaasAPIGetOrdersRequest {
|
||
r.updatedAtFrom = &updatedAtFrom
|
||
return r
|
||
}
|
||
|
||
// Конечная дата для фильтрации заказов по дате и времени обновления (параметр `updatedAt`). Формат даты: :no-translate[ISO 8601] со смещением относительно :no-translate[UTC]. Например, `2017-11-21T00:42:42+03:00`. Между начальной (параметр `updatedAtFrom`) и конечной датой должно быть не больше 30 дней. Конечная дата не включается в интервал для фильтрации.
|
||
func (r LaasAPIGetOrdersRequest) UpdatedAtTo(updatedAtTo time.Time) LaasAPIGetOrdersRequest {
|
||
r.updatedAtTo = &updatedAtTo
|
||
return r
|
||
}
|
||
|
||
// Способ отгрузки
|
||
func (r LaasAPIGetOrdersRequest) DispatchType(dispatchType OrderDeliveryDispatchType) LaasAPIGetOrdersRequest {
|
||
r.dispatchType = &dispatchType
|
||
return r
|
||
}
|
||
|
||
// Фильтрация заказов по типам: * `false` — настоящий заказ покупателя. * `true` — [тестовый](../../concepts/sandbox.md) заказ Маркета.
|
||
func (r LaasAPIGetOrdersRequest) Fake(fake bool) LaasAPIGetOrdersRequest {
|
||
r.fake = &fake
|
||
return r
|
||
}
|
||
|
||
// Нужно ли вернуть только те заказы, в составе которых есть хотя бы один товар с кодом идентификации в системе [:no-translate[«Честный ЗНАК»]](https://честныйзнак.рф/) или [:no-translate[«ASL BELGISI»]](https://aslbelgisi.uz) (для продавцов :no-translate[Market Yandex Go]): * `true` — да. * `false` — нет. Такие коды присваиваются товарам, которые подлежат маркировке и относятся к определенным категориям.
|
||
func (r LaasAPIGetOrdersRequest) HasCis(hasCis bool) LaasAPIGetOrdersRequest {
|
||
r.hasCis = &hasCis
|
||
return r
|
||
}
|
||
|
||
// **Только для модели DBS** Фильтрация заказов по наличию запросов покупателей на отмену. При значении `true` возвращаются только заказы, которые находятся в статусе `DELIVERY` или `PICKUP` и которые пользователи решили отменить. Чтобы подтвердить или отклонить отмену, отправьте запрос [PUT campaigns/{campaignId}/orders/{orderId}/cancellation/accept](../../reference/orders/acceptOrderCancellation).
|
||
func (r LaasAPIGetOrdersRequest) OnlyWaitingForCancellationApprove(onlyWaitingForCancellationApprove bool) LaasAPIGetOrdersRequest {
|
||
r.onlyWaitingForCancellationApprove = &onlyWaitingForCancellationApprove
|
||
return r
|
||
}
|
||
|
||
// Фильтрация заказов с долгой доставкой (31-60 дней) по подтвержденной дате доставки: * `true` — возвращаются только заказы с неподтвержденной датой доставки. * `false` — фильтрация не применяется.
|
||
func (r LaasAPIGetOrdersRequest) OnlyEstimatedDelivery(onlyEstimatedDelivery bool) LaasAPIGetOrdersRequest {
|
||
r.onlyEstimatedDelivery = &onlyEstimatedDelivery
|
||
return r
|
||
}
|
||
|
||
// Фильтрация заказов по типу покупателя.
|
||
func (r LaasAPIGetOrdersRequest) BuyerType(buyerType OrderBuyerType) LaasAPIGetOrdersRequest {
|
||
r.buyerType = &buyerType
|
||
return r
|
||
}
|
||
|
||
// {% note warning \"Если в методе есть :no-translate[`page_token`]\" %} Используйте его вместо параметра :no-translate[`page`]. [Подробнее о типах пагинации и их использовании](:no-translate[../../concepts/pagination.md]) {% endnote %} Номер страницы результатов. Используется вместе с параметром :no-translate[`pageSize`]. :no-translate[`page`] игнорируется, если задан :no-translate[`page_token`] или :no-translate[`limit`].
|
||
func (r LaasAPIGetOrdersRequest) Page(page int32) LaasAPIGetOrdersRequest {
|
||
r.page = &page
|
||
return r
|
||
}
|
||
|
||
// Размер страницы. Используется вместе с параметром :no-translate[`page`]. :no-translate[`pageSize`] игнорируется, если задан :no-translate[`page_token`] или :no-translate[`limit`].
|
||
func (r LaasAPIGetOrdersRequest) PageSize(pageSize int32) LaasAPIGetOrdersRequest {
|
||
r.pageSize = &pageSize
|
||
return r
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetOrdersRequest) PageToken(pageToken string) LaasAPIGetOrdersRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetOrdersRequest) Limit(limit int32) LaasAPIGetOrdersRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetOrdersRequest) Execute() (*GetOrdersResponse, *http.Response, error) {
|
||
return r.ApiService.GetOrdersExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetOrders Информация о нескольких заказах
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getOrders.md) %}
|
||
|
||
Возвращает информацию о заказах. Запрос можно использовать, чтобы узнать, нет ли новых заказов.
|
||
|
||
По умолчанию данные о тестовых заказах не приходят. Чтобы их получить, передайте значение `true` в параметре `fake`.
|
||
|
||
{% note tip "Вы также можете настроить API-уведомления" %}
|
||
|
||
Маркет отправит вам [запрос](../../push-notifications/reference/sendNotification.md), когда появится новый заказ или изменится его статус. А полную информацию можно получить с помощью этого метода или [GET campaigns/{campaignId}/orders/{orderId}](../../reference/orders/getOrder.md).
|
||
|
||
[{#T}](../../push-notifications/index.md)
|
||
|
||
{% endnote %}
|
||
|
||
Доступна фильтрация по нескольким характеристикам заказов:
|
||
|
||
* дате оформления;
|
||
|
||
* статусу;
|
||
|
||
* идентификаторам заказов;
|
||
|
||
* этапу обработки или причине отмены;
|
||
|
||
* типу (настоящий или тестовый);
|
||
|
||
* дате отгрузки в службу доставки;
|
||
|
||
* дате и времени обновления заказа.
|
||
|
||
Информация о заказах, доставленных или отмененных больше 30 дней назад, не возвращается. Ее можно получить с помощью запроса информации об отдельном заказе [GET campaigns/{campaignId}/orders/{orderId}](../../reference/orders/getOrder.md) (если у вас есть идентификатор заказа) или запроса отчета по заказам [POST campaigns/{campaignId}/stats/orders](../../reference/stats/getOrdersStats.md).
|
||
|
||
Максимальный диапазон дат за один запрос к ресурсу — 30 дней.
|
||
|
||
Результаты возвращаются постранично. Для навигации по страницам используйте параметры `page_token` и `limit`.
|
||
|
||
Получить более подробную информацию о покупателе и его номере телефона можно с помощью запроса [GET campaigns/{campaignId}/orders/{orderId}/buyer](../../reference/orders/getOrderBuyerInfo.md).
|
||
|
||
{% note warning "Ограничение для параметра `limit`" %}
|
||
|
||
Не передавайте значение больше 50.
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetOrdersRequest
|
||
*/
|
||
func (a *LaasAPIService) GetOrders(ctx context.Context, campaignId int64) LaasAPIGetOrdersRequest {
|
||
return LaasAPIGetOrdersRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetOrdersResponse
|
||
func (a *LaasAPIService) GetOrdersExecute(r LaasAPIGetOrdersRequest) (*GetOrdersResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetOrdersResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetOrders")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/orders"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
if r.orderIds != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "orderIds", r.orderIds, "", "csv")
|
||
}
|
||
if r.status != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "status", r.status, "", "csv")
|
||
}
|
||
if r.substatus != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "substatus", r.substatus, "", "csv")
|
||
}
|
||
if r.fromDate != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "fromDate", r.fromDate, "", "")
|
||
}
|
||
if r.toDate != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "toDate", r.toDate, "", "")
|
||
}
|
||
if r.supplierShipmentDateFrom != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "supplierShipmentDateFrom", r.supplierShipmentDateFrom, "", "")
|
||
}
|
||
if r.supplierShipmentDateTo != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "supplierShipmentDateTo", r.supplierShipmentDateTo, "", "")
|
||
}
|
||
if r.updatedAtFrom != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "updatedAtFrom", r.updatedAtFrom, "", "")
|
||
}
|
||
if r.updatedAtTo != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "updatedAtTo", r.updatedAtTo, "", "")
|
||
}
|
||
if r.dispatchType != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "dispatchType", r.dispatchType, "", "")
|
||
}
|
||
if r.fake != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "fake", r.fake, "", "")
|
||
} else {
|
||
var defaultValue bool = false
|
||
r.fake = &defaultValue
|
||
}
|
||
if r.hasCis != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "hasCis", r.hasCis, "", "")
|
||
} else {
|
||
var defaultValue bool = false
|
||
r.hasCis = &defaultValue
|
||
}
|
||
if r.onlyWaitingForCancellationApprove != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "onlyWaitingForCancellationApprove", r.onlyWaitingForCancellationApprove, "", "")
|
||
} else {
|
||
var defaultValue bool = false
|
||
r.onlyWaitingForCancellationApprove = &defaultValue
|
||
}
|
||
if r.onlyEstimatedDelivery != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "onlyEstimatedDelivery", r.onlyEstimatedDelivery, "", "")
|
||
} else {
|
||
var defaultValue bool = false
|
||
r.onlyEstimatedDelivery = &defaultValue
|
||
}
|
||
if r.buyerType != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "buyerType", r.buyerType, "", "")
|
||
}
|
||
if r.page != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page", r.page, "", "")
|
||
} else {
|
||
var defaultValue int32 = 1
|
||
r.page = &defaultValue
|
||
}
|
||
if r.pageSize != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "pageSize", r.pageSize, "", "")
|
||
}
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetPricesByOfferIdsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
pageToken *string
|
||
limit *int32
|
||
getPricesByOfferIdsRequest *GetPricesByOfferIdsRequest
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetPricesByOfferIdsRequest) PageToken(pageToken string) LaasAPIGetPricesByOfferIdsRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetPricesByOfferIdsRequest) Limit(limit int32) LaasAPIGetPricesByOfferIdsRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetPricesByOfferIdsRequest) GetPricesByOfferIdsRequest(getPricesByOfferIdsRequest GetPricesByOfferIdsRequest) LaasAPIGetPricesByOfferIdsRequest {
|
||
r.getPricesByOfferIdsRequest = &getPricesByOfferIdsRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetPricesByOfferIdsRequest) Execute() (*GetPricesByOfferIdsResponse, *http.Response, error) {
|
||
return r.ApiService.GetPricesByOfferIdsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetPricesByOfferIds Просмотр цен на указанные товары в конкретном магазине
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getPricesByOfferIds.md) %}
|
||
|
||
Возвращает список цен на указанные товары в магазине.
|
||
|
||
{% note warning "Метод только для отдельных магазинов" %}
|
||
|
||
Используйте этот метод, только если в кабинете установлены уникальные цены в отдельных магазинах.
|
||
|
||
Для просмотра цен, которые действуют во всех магазинах, используйте [POST businesses/{businessId}/offer-mappings](../../reference/business-assortment/getOfferMappings.md).
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 150 000 товаров в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetPricesByOfferIdsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetPricesByOfferIds(ctx context.Context, campaignId int64) LaasAPIGetPricesByOfferIdsRequest {
|
||
return LaasAPIGetPricesByOfferIdsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetPricesByOfferIdsResponse
|
||
func (a *LaasAPIService) GetPricesByOfferIdsExecute(r LaasAPIGetPricesByOfferIdsRequest) (*GetPricesByOfferIdsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetPricesByOfferIdsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetPricesByOfferIds")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/offer-prices"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getPricesByOfferIdsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetRegionsCodesRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
}
|
||
|
||
func (r LaasAPIGetRegionsCodesRequest) Execute() (*GetRegionsCodesResponse, *http.Response, error) {
|
||
return r.ApiService.GetRegionsCodesExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetRegionsCodes Список допустимых кодов стран
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getRegionsCodes.md) %}
|
||
|
||
Возвращает список стран с их кодами в формате :no-translate[ISO 3166-1 alpha-2].
|
||
|
||
Страна производства `countryCode` понадобится при продаже товаров из-за рубежа для бизнеса. [Инструкция](../../step-by-step/business-info.md)
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPIGetRegionsCodesRequest
|
||
*/
|
||
func (a *LaasAPIService) GetRegionsCodes(ctx context.Context) LaasAPIGetRegionsCodesRequest {
|
||
return LaasAPIGetRegionsCodesRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetRegionsCodesResponse
|
||
func (a *LaasAPIService) GetRegionsCodesExecute(r LaasAPIGetRegionsCodesRequest) (*GetRegionsCodesResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetRegionsCodesResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetRegionsCodes")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/regions/countries"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetReportInfoRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
reportId string
|
||
}
|
||
|
||
func (r LaasAPIGetReportInfoRequest) Execute() (*GetReportInfoResponse, *http.Response, error) {
|
||
return r.ApiService.GetReportInfoExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetReportInfo Получение заданного отчета или документа
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getReportInfo.md) %}
|
||
|
||
Возвращает статус генерации заданного отчета или документа и, если он готов, ссылку для скачивания.
|
||
|
||
Чтобы воспользоваться этим запросом, вначале нужно запустить генерацию отчета или документа. [Инструкция](../../step-by-step/reports.md)
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 запросов в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param reportId Идентификатор отчета или документа, который вы получили после запуска генерации.
|
||
@return LaasAPIGetReportInfoRequest
|
||
*/
|
||
func (a *LaasAPIService) GetReportInfo(ctx context.Context, reportId string) LaasAPIGetReportInfoRequest {
|
||
return LaasAPIGetReportInfoRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
reportId: reportId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetReportInfoResponse
|
||
func (a *LaasAPIService) GetReportInfoExecute(r LaasAPIGetReportInfoRequest) (*GetReportInfoResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetReportInfoResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetReportInfo")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/reports/info/{reportId}"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"reportId"+"}", url.PathEscape(parameterValueToString(r.reportId, "reportId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if strlen(r.reportId) < 1 {
|
||
return localVarReturnValue, nil, reportError("reportId must have at least 1 elements")
|
||
}
|
||
if strlen(r.reportId) > 255 {
|
||
return localVarReturnValue, nil, reportError("reportId must have less than 255 elements")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetReturnRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
orderId int64
|
||
returnId int64
|
||
}
|
||
|
||
func (r LaasAPIGetReturnRequest) Execute() (*GetReturnResponse, *http.Response, error) {
|
||
return r.ApiService.GetReturnExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetReturn Информация о невыкупе или возврате
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getReturn.md) %}
|
||
|
||
Получает информацию по одному невыкупу или возврату.
|
||
|
||
{% note tip "Подключите API-уведомления" %}
|
||
|
||
Маркет отправит вам запрос [POST notification](../../push-notifications/reference/sendNotification.md), когда появится новый невыкуп или возврат.
|
||
|
||
[{#T}](../../push-notifications/index.md)
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@param orderId Идентификатор заказа.
|
||
@param returnId Идентификатор невыкупа или возврата.
|
||
@return LaasAPIGetReturnRequest
|
||
*/
|
||
func (a *LaasAPIService) GetReturn(ctx context.Context, campaignId int64, orderId int64, returnId int64) LaasAPIGetReturnRequest {
|
||
return LaasAPIGetReturnRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
orderId: orderId,
|
||
returnId: returnId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetReturnResponse
|
||
func (a *LaasAPIService) GetReturnExecute(r LaasAPIGetReturnRequest) (*GetReturnResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetReturnResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetReturn")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/orders/{orderId}/returns/{returnId}"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
localVarPath = strings.Replace(localVarPath, "{"+"orderId"+"}", url.PathEscape(parameterValueToString(r.orderId, "orderId")), -1)
|
||
localVarPath = strings.Replace(localVarPath, "{"+"returnId"+"}", url.PathEscape(parameterValueToString(r.returnId, "returnId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetReturnsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
pageToken *string
|
||
limit *int32
|
||
orderIds *[]int64
|
||
statuses *[]RefundStatusType
|
||
type_ *ReturnType
|
||
fromDate *string
|
||
toDate *string
|
||
fromDate2 *string
|
||
toDate2 *string
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetReturnsRequest) PageToken(pageToken string) LaasAPIGetReturnsRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetReturnsRequest) Limit(limit int32) LaasAPIGetReturnsRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
// Идентификаторы заказов — для фильтрации результатов. Несколько идентификаторов перечисляются через запятую без пробела.
|
||
func (r LaasAPIGetReturnsRequest) OrderIds(orderIds []int64) LaasAPIGetReturnsRequest {
|
||
r.orderIds = &orderIds
|
||
return r
|
||
}
|
||
|
||
// Статусы невыкупов или возвратов — для фильтрации результатов. Несколько статусов перечисляются через запятую.
|
||
func (r LaasAPIGetReturnsRequest) Statuses(statuses []RefundStatusType) LaasAPIGetReturnsRequest {
|
||
r.statuses = &statuses
|
||
return r
|
||
}
|
||
|
||
// Тип заказа для фильтрации: * `UNREDEEMED` — невыкуп. * `RETURN` — возврат. Если не указать, в ответе будут и невыкупы, и возвраты.
|
||
func (r LaasAPIGetReturnsRequest) Type_(type_ ReturnType) LaasAPIGetReturnsRequest {
|
||
r.type_ = &type_
|
||
return r
|
||
}
|
||
|
||
// Начальная дата для фильтрации невыкупов или возвратов по дате обновления. Формат: `ГГГГ-ММ-ДД`.
|
||
func (r LaasAPIGetReturnsRequest) FromDate(fromDate string) LaasAPIGetReturnsRequest {
|
||
r.fromDate = &fromDate
|
||
return r
|
||
}
|
||
|
||
// Конечная дата для фильтрации невыкупов или возвратов по дате обновления. Формат: `ГГГГ-ММ-ДД`.
|
||
func (r LaasAPIGetReturnsRequest) ToDate(toDate string) LaasAPIGetReturnsRequest {
|
||
r.toDate = &toDate
|
||
return r
|
||
}
|
||
|
||
// {% note warning \"Вместо него используйте `fromDate`.\" %} {% endnote %} Начальная дата для фильтрации невыкупов или возвратов по дате обновления.
|
||
// Deprecated
|
||
func (r LaasAPIGetReturnsRequest) FromDate2(fromDate2 string) LaasAPIGetReturnsRequest {
|
||
r.fromDate2 = &fromDate2
|
||
return r
|
||
}
|
||
|
||
// {% note warning \"Вместо него используйте `toDate`.\" %} {% endnote %} Конечная дата для фильтрации невыкупов или возвратов по дате обновления.
|
||
// Deprecated
|
||
func (r LaasAPIGetReturnsRequest) ToDate2(toDate2 string) LaasAPIGetReturnsRequest {
|
||
r.toDate2 = &toDate2
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetReturnsRequest) Execute() (*GetReturnsResponse, *http.Response, error) {
|
||
return r.ApiService.GetReturnsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetReturns Список невыкупов и возвратов
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getReturns.md) %}
|
||
|
||
Получает список невыкупов и возвратов.
|
||
|
||
Чтобы получить информацию по одному невыкупу или возврату, выполните запрос [GET campaigns/{campaignId}/orders/{orderId}/returns/{returnId}](../../reference/orders/getReturn.md).
|
||
|
||
{% note tip "Подключите API-уведомления" %}
|
||
|
||
Маркет отправит вам запрос [POST notification](../../push-notifications/reference/sendNotification.md), когда появится новый невыкуп или возврат.
|
||
|
||
[{#T}](../../push-notifications/index.md)
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetReturnsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetReturns(ctx context.Context, campaignId int64) LaasAPIGetReturnsRequest {
|
||
return LaasAPIGetReturnsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetReturnsResponse
|
||
func (a *LaasAPIService) GetReturnsExecute(r LaasAPIGetReturnsRequest) (*GetReturnsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetReturnsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetReturns")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/returns"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
if r.orderIds != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "orderIds", r.orderIds, "", "csv")
|
||
}
|
||
if r.statuses != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "statuses", r.statuses, "", "csv")
|
||
}
|
||
if r.type_ != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "type", r.type_, "", "")
|
||
}
|
||
if r.fromDate != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "fromDate", r.fromDate, "", "")
|
||
}
|
||
if r.toDate != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "toDate", r.toDate, "", "")
|
||
}
|
||
if r.fromDate2 != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "from_date", r.fromDate2, "", "")
|
||
}
|
||
if r.toDate2 != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "to_date", r.toDate2, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetStocksRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
pageToken *string
|
||
limit *int32
|
||
getWarehouseStocksRequest *GetWarehouseStocksRequest
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetStocksRequest) PageToken(pageToken string) LaasAPIGetStocksRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetStocksRequest) Limit(limit int32) LaasAPIGetStocksRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetStocksRequest) GetWarehouseStocksRequest(getWarehouseStocksRequest GetWarehouseStocksRequest) LaasAPIGetStocksRequest {
|
||
r.getWarehouseStocksRequest = &getWarehouseStocksRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetStocksRequest) Execute() (*GetWarehouseStocksResponse, *http.Response, error) {
|
||
return r.ApiService.GetStocksExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetStocks Информация об остатках и оборачиваемости
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getStocks.md) %}
|
||
|
||
Возвращает данные об остатках товаров (для всех моделей) и об [оборачиваемости](:no-translate[*turnover]) товаров (для модели :no-translate[FBY]).
|
||
|
||
**Для модели :no-translate[FBY]:** информация об остатках может возвращаться с нескольких складов Маркета, у которых будут разные `warehouseId`. Получить список складов Маркета можно с помощью метода [GET warehouses](../../reference/warehouses/getFulfillmentWarehouses.md).
|
||
|
||
{% note info "По умолчанию данные по оборачивамости не возращаются" %}
|
||
|
||
Чтобы они были в ответе, передавайте `true` в поле `withTurnover`.
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 000 товаров в минуту|
|
||
|-|
|
||
|
||
[//]: <> (turnover: Среднее количество дней, за которое товар продается. Подробно об оборачиваемости рассказано в Справке Маркета для продавцов https://yandex.ru/support/marketplace/analytics/turnover.html.)
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetStocksRequest
|
||
*/
|
||
func (a *LaasAPIService) GetStocks(ctx context.Context, campaignId int64) LaasAPIGetStocksRequest {
|
||
return LaasAPIGetStocksRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetWarehouseStocksResponse
|
||
func (a *LaasAPIService) GetStocksExecute(r LaasAPIGetStocksRequest) (*GetWarehouseStocksResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetWarehouseStocksResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetStocks")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/offers/stocks"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getWarehouseStocksRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetSupplyRequestDocumentsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
getSupplyRequestDocumentsRequest *GetSupplyRequestDocumentsRequest
|
||
}
|
||
|
||
func (r LaasAPIGetSupplyRequestDocumentsRequest) GetSupplyRequestDocumentsRequest(getSupplyRequestDocumentsRequest GetSupplyRequestDocumentsRequest) LaasAPIGetSupplyRequestDocumentsRequest {
|
||
r.getSupplyRequestDocumentsRequest = &getSupplyRequestDocumentsRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetSupplyRequestDocumentsRequest) Execute() (*GetSupplyRequestDocumentsResponse, *http.Response, error) {
|
||
return r.ApiService.GetSupplyRequestDocumentsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetSupplyRequestDocuments Получение документов по заявке на поставку, вывоз или утилизацию
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getSupplyRequestDocuments.md) %}
|
||
|
||
Возвращает документы по заявке.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetSupplyRequestDocumentsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetSupplyRequestDocuments(ctx context.Context, campaignId int64) LaasAPIGetSupplyRequestDocumentsRequest {
|
||
return LaasAPIGetSupplyRequestDocumentsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetSupplyRequestDocumentsResponse
|
||
func (a *LaasAPIService) GetSupplyRequestDocumentsExecute(r LaasAPIGetSupplyRequestDocumentsRequest) (*GetSupplyRequestDocumentsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetSupplyRequestDocumentsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetSupplyRequestDocuments")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/supply-requests/documents"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.getSupplyRequestDocumentsRequest == nil {
|
||
return localVarReturnValue, nil, reportError("getSupplyRequestDocumentsRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getSupplyRequestDocumentsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetSupplyRequestItemsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
getSupplyRequestItemsRequest *GetSupplyRequestItemsRequest
|
||
pageToken *string
|
||
limit *int32
|
||
}
|
||
|
||
func (r LaasAPIGetSupplyRequestItemsRequest) GetSupplyRequestItemsRequest(getSupplyRequestItemsRequest GetSupplyRequestItemsRequest) LaasAPIGetSupplyRequestItemsRequest {
|
||
r.getSupplyRequestItemsRequest = &getSupplyRequestItemsRequest
|
||
return r
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetSupplyRequestItemsRequest) PageToken(pageToken string) LaasAPIGetSupplyRequestItemsRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetSupplyRequestItemsRequest) Limit(limit int32) LaasAPIGetSupplyRequestItemsRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetSupplyRequestItemsRequest) Execute() (*GetSupplyRequestItemsResponse, *http.Response, error) {
|
||
return r.ApiService.GetSupplyRequestItemsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetSupplyRequestItems Получение товаров в заявке на поставку, вывоз или утилизацию
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getSupplyRequestItems.md) %}
|
||
|
||
Возвращает список товаров в заявке и информацию по ним.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetSupplyRequestItemsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetSupplyRequestItems(ctx context.Context, campaignId int64) LaasAPIGetSupplyRequestItemsRequest {
|
||
return LaasAPIGetSupplyRequestItemsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetSupplyRequestItemsResponse
|
||
func (a *LaasAPIService) GetSupplyRequestItemsExecute(r LaasAPIGetSupplyRequestItemsRequest) (*GetSupplyRequestItemsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetSupplyRequestItemsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetSupplyRequestItems")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/supply-requests/items"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.getSupplyRequestItemsRequest == nil {
|
||
return localVarReturnValue, nil, reportError("getSupplyRequestItemsRequest is required and must be specified")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getSupplyRequestItemsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIGetSupplyRequestsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
pageToken *string
|
||
limit *int32
|
||
getSupplyRequestsRequest *GetSupplyRequestsRequest
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPIGetSupplyRequestsRequest) PageToken(pageToken string) LaasAPIGetSupplyRequestsRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPIGetSupplyRequestsRequest) Limit(limit int32) LaasAPIGetSupplyRequestsRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetSupplyRequestsRequest) GetSupplyRequestsRequest(getSupplyRequestsRequest GetSupplyRequestsRequest) LaasAPIGetSupplyRequestsRequest {
|
||
r.getSupplyRequestsRequest = &getSupplyRequestsRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIGetSupplyRequestsRequest) Execute() (*GetSupplyRequestsResponse, *http.Response, error) {
|
||
return r.ApiService.GetSupplyRequestsExecute(r)
|
||
}
|
||
|
||
/*
|
||
GetSupplyRequests Получение информации о заявках на поставку, вывоз и утилизацию
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/getSupplyRequests.md) %}
|
||
|
||
По указанным фильтрам возвращает заявки на поставку, вывоз и утилизацию, а также информацию по ним.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 1 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIGetSupplyRequestsRequest
|
||
*/
|
||
func (a *LaasAPIService) GetSupplyRequests(ctx context.Context, campaignId int64) LaasAPIGetSupplyRequestsRequest {
|
||
return LaasAPIGetSupplyRequestsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetSupplyRequestsResponse
|
||
func (a *LaasAPIService) GetSupplyRequestsExecute(r LaasAPIGetSupplyRequestsRequest) (*GetSupplyRequestsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetSupplyRequestsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.GetSupplyRequests")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/supply-requests"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.getSupplyRequestsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPISearchRegionChildrenRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
regionId int64
|
||
page *int32
|
||
pageSize *int32
|
||
}
|
||
|
||
// {% note warning \"Если в методе есть :no-translate[`page_token`]\" %} Используйте его вместо параметра :no-translate[`page`]. [Подробнее о типах пагинации и их использовании](:no-translate[../../concepts/pagination.md]) {% endnote %} Номер страницы результатов. Используется вместе с параметром :no-translate[`pageSize`]. :no-translate[`page`] игнорируется, если задан :no-translate[`page_token`] или :no-translate[`limit`].
|
||
func (r LaasAPISearchRegionChildrenRequest) Page(page int32) LaasAPISearchRegionChildrenRequest {
|
||
r.page = &page
|
||
return r
|
||
}
|
||
|
||
// Размер страницы. Используется вместе с параметром :no-translate[`page`]. :no-translate[`pageSize`] игнорируется, если задан :no-translate[`page_token`] или :no-translate[`limit`].
|
||
func (r LaasAPISearchRegionChildrenRequest) PageSize(pageSize int32) LaasAPISearchRegionChildrenRequest {
|
||
r.pageSize = &pageSize
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPISearchRegionChildrenRequest) Execute() (*GetRegionWithChildrenResponse, *http.Response, error) {
|
||
return r.ApiService.SearchRegionChildrenExecute(r)
|
||
}
|
||
|
||
/*
|
||
SearchRegionChildren Информация о дочерних регионах
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/searchRegionChildren.md) %}
|
||
|
||
Возвращает информацию о регионах, являющихся дочерними по отношению к региону, идентификатор которого указан в запросе.
|
||
|
||
Для методов `GET regions`, `GET regions/{regionId}` и `GET regions/{regionId}/children` действует групповое ресурсное ограничение. Ограничение вводится на суммарное количество регионов, информация о которых запрошена при помощи этих методов (не более 100 000 регионов).
|
||
|
||
Объем запросов к ресурсу, который возможно выполнить в течение суток, зависит от суммарного количества регионов.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 50 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param regionId Идентификатор региона. Идентификатор региона можно получить c помощью запроса [:no-translate[GET regions]](:no-translate[../../reference/regions/searchRegionsByName.md]).
|
||
@return LaasAPISearchRegionChildrenRequest
|
||
*/
|
||
func (a *LaasAPIService) SearchRegionChildren(ctx context.Context, regionId int64) LaasAPISearchRegionChildrenRequest {
|
||
return LaasAPISearchRegionChildrenRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
regionId: regionId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetRegionWithChildrenResponse
|
||
func (a *LaasAPIService) SearchRegionChildrenExecute(r LaasAPISearchRegionChildrenRequest) (*GetRegionWithChildrenResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetRegionWithChildrenResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.SearchRegionChildren")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/regions/{regionId}/children"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"regionId"+"}", url.PathEscape(parameterValueToString(r.regionId, "regionId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
|
||
if r.page != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page", r.page, "", "")
|
||
} else {
|
||
var defaultValue int32 = 1
|
||
r.page = &defaultValue
|
||
}
|
||
if r.pageSize != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "pageSize", r.pageSize, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPISearchRegionsByIdRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
regionId int64
|
||
}
|
||
|
||
func (r LaasAPISearchRegionsByIdRequest) Execute() (*GetRegionsResponse, *http.Response, error) {
|
||
return r.ApiService.SearchRegionsByIdExecute(r)
|
||
}
|
||
|
||
/*
|
||
SearchRegionsById Информация о регионе
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/searchRegionsById.md) %}
|
||
|
||
Возвращает информацию о регионе.
|
||
|
||
Для методов `GET regions`, `GET regions/{regionId}` и `GET regions/{regionId}/children` действует групповое ресурсное ограничение. Ограничение вводится на суммарное количество регионов, информация о которых запрошена при помощи этих методов (не более 100 000 регионов).
|
||
|
||
Объем запросов к ресурсу, который возможно выполнить в течение суток, зависит от суммарного количества регионов.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 50 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param regionId Идентификатор региона. Идентификатор региона можно получить c помощью запроса [:no-translate[GET regions]](:no-translate[../../reference/regions/searchRegionsByName.md]).
|
||
@return LaasAPISearchRegionsByIdRequest
|
||
*/
|
||
func (a *LaasAPIService) SearchRegionsById(ctx context.Context, regionId int64) LaasAPISearchRegionsByIdRequest {
|
||
return LaasAPISearchRegionsByIdRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
regionId: regionId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetRegionsResponse
|
||
func (a *LaasAPIService) SearchRegionsByIdExecute(r LaasAPISearchRegionsByIdRequest) (*GetRegionsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetRegionsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.SearchRegionsById")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/regions/{regionId}"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"regionId"+"}", url.PathEscape(parameterValueToString(r.regionId, "regionId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPISearchRegionsByNameRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
name *string
|
||
pageToken *string
|
||
limit *int32
|
||
}
|
||
|
||
// Название региона. Важно учитывать регистр: первая буква должна быть заглавной, остальные — строчными. Например, :no-translate[`Москва`].
|
||
func (r LaasAPISearchRegionsByNameRequest) Name(name string) LaasAPISearchRegionsByNameRequest {
|
||
r.name = &name
|
||
return r
|
||
}
|
||
|
||
// Идентификатор страницы c результатами. Если параметр не указан, возвращается первая страница. Рекомендуем передавать значение выходного параметра :no-translate[`nextPageToken`], полученное при последнем запросе. Если задан :no-translate[`page_token`] и в запросе есть параметры :no-translate[`page`] и :no-translate[`pageSize`], они игнорируются.
|
||
func (r LaasAPISearchRegionsByNameRequest) PageToken(pageToken string) LaasAPISearchRegionsByNameRequest {
|
||
r.pageToken = &pageToken
|
||
return r
|
||
}
|
||
|
||
// Количество значений на одной странице.
|
||
func (r LaasAPISearchRegionsByNameRequest) Limit(limit int32) LaasAPISearchRegionsByNameRequest {
|
||
r.limit = &limit
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPISearchRegionsByNameRequest) Execute() (*GetRegionsResponse, *http.Response, error) {
|
||
return r.ApiService.SearchRegionsByNameExecute(r)
|
||
}
|
||
|
||
/*
|
||
SearchRegionsByName Поиск регионов по их имени
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/searchRegionsByName.md) %}
|
||
|
||
Возвращает информацию о регионе, удовлетворяющем заданным в запросе условиям поиска.
|
||
|
||
Если найдено несколько регионов, удовлетворяющих условиям поиска, возвращается информация по каждому найденному региону (но не более десяти регионов) для возможности определения нужного региона по родительским регионам.
|
||
|
||
Для методов `GET regions`, `GET regions/{regionId}` и `GET regions/{regionId}/children` действует групповое ресурсное ограничение. Ограничение вводится на суммарное количество регионов, информация о которых запрошена при помощи этих методов (не более 100 000 регионов).
|
||
|
||
Объем запросов к ресурсу, который возможно выполнить в течение суток, зависит от суммарного количества регионов.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 50 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@return LaasAPISearchRegionsByNameRequest
|
||
*/
|
||
func (a *LaasAPIService) SearchRegionsByName(ctx context.Context) LaasAPISearchRegionsByNameRequest {
|
||
return LaasAPISearchRegionsByNameRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return GetRegionsResponse
|
||
func (a *LaasAPIService) SearchRegionsByNameExecute(r LaasAPISearchRegionsByNameRequest) (*GetRegionsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodGet
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *GetRegionsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.SearchRegionsByName")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/regions"
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.name == nil {
|
||
return localVarReturnValue, nil, reportError("name is required and must be specified")
|
||
}
|
||
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "name", r.name, "", "")
|
||
if r.pageToken != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "page_token", r.pageToken, "", "")
|
||
}
|
||
if r.limit != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "limit", r.limit, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIUpdateBusinessPricesRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
updateBusinessPricesRequest *UpdateBusinessPricesRequest
|
||
}
|
||
|
||
func (r LaasAPIUpdateBusinessPricesRequest) UpdateBusinessPricesRequest(updateBusinessPricesRequest UpdateBusinessPricesRequest) LaasAPIUpdateBusinessPricesRequest {
|
||
r.updateBusinessPricesRequest = &updateBusinessPricesRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIUpdateBusinessPricesRequest) Execute() (*EmptyApiResponse, *http.Response, error) {
|
||
return r.ApiService.UpdateBusinessPricesExecute(r)
|
||
}
|
||
|
||
/*
|
||
UpdateBusinessPrices Установка цен на товары для всех магазинов
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/updateBusinessPrices.md) %}
|
||
|
||
Устанавливает цены, которые действуют во всех магазинах. Чтобы получить рекомендации Маркета, касающиеся цен, выполните запрос [POST businesses/{businessId}/offers/recommendations](../../reference/business-assortment/getOfferRecommendations.md).
|
||
|
||
При необходимости передавайте НДС с помощью параметра `vat` в запросе [POST campaigns/{campaignId}/offers/update](../../reference/assortment/updateCampaignOffers.md).
|
||
|
||
{% note info "Данные в каталоге обновляются не мгновенно" %}
|
||
|
||
Это занимает до нескольких минут.
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту, не более 500 товаров в одном запросе|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIUpdateBusinessPricesRequest
|
||
*/
|
||
func (a *LaasAPIService) UpdateBusinessPrices(ctx context.Context, businessId int64) LaasAPIUpdateBusinessPricesRequest {
|
||
return LaasAPIUpdateBusinessPricesRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return EmptyApiResponse
|
||
func (a *LaasAPIService) UpdateBusinessPricesExecute(r LaasAPIUpdateBusinessPricesRequest) (*EmptyApiResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *EmptyApiResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.UpdateBusinessPrices")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/offer-prices/updates"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
if r.updateBusinessPricesRequest == nil {
|
||
return localVarReturnValue, nil, reportError("updateBusinessPricesRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.updateBusinessPricesRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 423 {
|
||
var v ApiLockedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIUpdateCampaignOffersRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
updateCampaignOffersRequest *UpdateCampaignOffersRequest
|
||
}
|
||
|
||
func (r LaasAPIUpdateCampaignOffersRequest) UpdateCampaignOffersRequest(updateCampaignOffersRequest UpdateCampaignOffersRequest) LaasAPIUpdateCampaignOffersRequest {
|
||
r.updateCampaignOffersRequest = &updateCampaignOffersRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIUpdateCampaignOffersRequest) Execute() (*EmptyApiResponse, *http.Response, error) {
|
||
return r.ApiService.UpdateCampaignOffersExecute(r)
|
||
}
|
||
|
||
/*
|
||
UpdateCampaignOffers Изменение условий продажи товаров в магазине
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/updateCampaignOffers.md) %}
|
||
|
||
Изменяет параметры размещения товаров в конкретном магазине: доступность товара, продажа квантами и применяемый НДС.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIUpdateCampaignOffersRequest
|
||
*/
|
||
func (a *LaasAPIService) UpdateCampaignOffers(ctx context.Context, campaignId int64) LaasAPIUpdateCampaignOffersRequest {
|
||
return LaasAPIUpdateCampaignOffersRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return EmptyApiResponse
|
||
func (a *LaasAPIService) UpdateCampaignOffersExecute(r LaasAPIUpdateCampaignOffersRequest) (*EmptyApiResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *EmptyApiResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.UpdateCampaignOffers")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/offers/update"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.updateCampaignOffersRequest == nil {
|
||
return localVarReturnValue, nil, reportError("updateCampaignOffersRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.updateCampaignOffersRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 423 {
|
||
var v ApiLockedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIUpdateOfferContentRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
updateOfferContentRequest *UpdateOfferContentRequest
|
||
}
|
||
|
||
func (r LaasAPIUpdateOfferContentRequest) UpdateOfferContentRequest(updateOfferContentRequest UpdateOfferContentRequest) LaasAPIUpdateOfferContentRequest {
|
||
r.updateOfferContentRequest = &updateOfferContentRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIUpdateOfferContentRequest) Execute() (*UpdateOfferContentResponse, *http.Response, error) {
|
||
return r.ApiService.UpdateOfferContentExecute(r)
|
||
}
|
||
|
||
/*
|
||
UpdateOfferContent Редактирование категорийных характеристик товара
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/updateOfferContent.md) %}
|
||
|
||
Редактирует характеристики товара, которые специфичны для категории, к которой он относится.
|
||
|
||
{% note warning "Здесь только то, что относится к конкретной категории" %}
|
||
|
||
Если вам нужно изменить основные параметры товара (название, описание, изображения, видео, производитель, штрихкод), воспользуйтесь запросом [POST businesses/{businessId}/offer-mappings/update](../../reference/business-assortment/updateOfferMappings.md).
|
||
|
||
{% endnote %}
|
||
|
||
Чтобы удалить характеристики, которые заданы в параметрах с типом `string`, передайте пустое значение.
|
||
|
||
{% note info "Данные в каталоге обновляются не мгновенно" %}
|
||
|
||
Это занимает до нескольких минут.
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIUpdateOfferContentRequest
|
||
*/
|
||
func (a *LaasAPIService) UpdateOfferContent(ctx context.Context, businessId int64) LaasAPIUpdateOfferContentRequest {
|
||
return LaasAPIUpdateOfferContentRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return UpdateOfferContentResponse
|
||
func (a *LaasAPIService) UpdateOfferContentExecute(r LaasAPIUpdateOfferContentRequest) (*UpdateOfferContentResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *UpdateOfferContentResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.UpdateOfferContent")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/offer-cards/update"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
if r.updateOfferContentRequest == nil {
|
||
return localVarReturnValue, nil, reportError("updateOfferContentRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.updateOfferContentRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 423 {
|
||
var v ApiLockedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIUpdateOfferMappingsRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
businessId int64
|
||
updateOfferMappingsRequest *UpdateOfferMappingsRequest
|
||
language *CatalogLanguageType
|
||
}
|
||
|
||
func (r LaasAPIUpdateOfferMappingsRequest) UpdateOfferMappingsRequest(updateOfferMappingsRequest UpdateOfferMappingsRequest) LaasAPIUpdateOfferMappingsRequest {
|
||
r.updateOfferMappingsRequest = &updateOfferMappingsRequest
|
||
return r
|
||
}
|
||
|
||
// Язык, на котором принимаются и возвращаются значения в параметрах :no-translate[`name`] и :no-translate[`description`]. Значение по умолчанию: :no-translate[`RU`].
|
||
func (r LaasAPIUpdateOfferMappingsRequest) Language(language CatalogLanguageType) LaasAPIUpdateOfferMappingsRequest {
|
||
r.language = &language
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIUpdateOfferMappingsRequest) Execute() (*UpdateOfferMappingsResponse, *http.Response, error) {
|
||
return r.ApiService.UpdateOfferMappingsExecute(r)
|
||
}
|
||
|
||
/*
|
||
UpdateOfferMappings Добавление товаров в каталог и изменение информации о них
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/updateOfferMappings.md) %}
|
||
|
||
Добавляет товары в каталог и передает:
|
||
|
||
* их категории на Маркете и категорийные характеристики;
|
||
* основные характеристики;
|
||
* цены на товары в кабинете.
|
||
|
||
Также объединяет товары на карточке, редактирует и удаляет информацию об уже добавленных товарах, в том числе цены в кабинете и категории товаров.
|
||
|
||
Список категорий Маркета можно получить с помощью запроса [POST categories/tree](../../reference/categories/getCategoriesTree.md), а характеристики товаров по категориям с помощью [POST category/{categoryId}/parameters](../../reference/content/getCategoryContentParameters.md).
|
||
|
||
{% cut "Добавить новый товар" %}
|
||
|
||
Передайте его с новым идентификатором, который раньше никогда не использовался в каталоге.
|
||
|
||
Обязательно укажите параметры: `offerId`, `name`, `marketCategoryId`, `pictures`, `vendor`, `description`.
|
||
|
||
Старайтесь сразу передать как можно больше информации — она потребуется Маркету для подбора подходящей карточки или создания новой.
|
||
|
||
Если известно, какой карточке на Маркете соответствует товар, можно сразу указать идентификатор этой карточки (**:no-translate[SKU] на Маркете**) в поле `marketSKU`.
|
||
|
||
**Для продавцов Market Yandex Go:**
|
||
|
||
Когда вы добавляете товары в каталог, указывайте значения параметров `name` и `description` на русском языке. Чтобы на витрине они отображались и на другом языке, еще раз выполните запрос `POST businesses/{businessId}/offer-mappings/update`, где укажите:
|
||
|
||
- язык в параметре `language`;
|
||
|
||
- значения параметров `name` и `description` на указанном языке.
|
||
|
||
Повторно передавать остальные характеристики товара не нужно.
|
||
|
||
{% endcut %}
|
||
|
||
{% cut "Изменить информацию о товаре" %}
|
||
|
||
Передайте новые данные, указав в `offerId` соответствующий **ваш :no-translate[SKU]**.
|
||
|
||
Поля, в которых ничего не меняется, можно не передавать.
|
||
|
||
{% endcut %}
|
||
|
||
{% cut "Удалить переданные ранее параметры товара" %}
|
||
|
||
В `deleteParameters` укажите значения параметров, которые хотите удалить. Можно передать сразу несколько значений.
|
||
|
||
Для параметров с типом `string` также можно передать пустое значение.
|
||
|
||
{% endcut %}
|
||
|
||
Параметр `offerId` должен быть **уникальным** для всех товаров, которые вы передаете.
|
||
|
||
{% note warning "Правила использования :no-translate[SKU]" %}
|
||
|
||
* У каждого товара :no-translate[SKU] должен быть свой.
|
||
|
||
* Уже заданный :no-translate[SKU] нельзя освободить и использовать заново для другого товара. Каждый товар должен получать новый идентификатор, до того никогда не использовавшийся в вашем каталоге.
|
||
|
||
:no-translate[SKU] товара можно изменить в кабинете продавца на Маркете. О том, как это сделать, читайте [в Справке Маркета для продавцов](https://yandex.ru/support2/marketplace/ru/assortment/operations/edit-sku).
|
||
|
||
{% endnote %}
|
||
|
||
{% note info "Данные в каталоге обновляются не мгновенно" %}
|
||
|
||
Это занимает до нескольких минут.
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту, не более 100 товаров в одном запросе|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param businessId Идентификатор кабинета. Чтобы его узнать, воспользуйтесь запросом [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]). ℹ️ [Что такое кабинет и магазин на Маркете](:no-translate[https://yandex.ru/support/marketplace/account/introduction.html])
|
||
@return LaasAPIUpdateOfferMappingsRequest
|
||
*/
|
||
func (a *LaasAPIService) UpdateOfferMappings(ctx context.Context, businessId int64) LaasAPIUpdateOfferMappingsRequest {
|
||
return LaasAPIUpdateOfferMappingsRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
businessId: businessId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return UpdateOfferMappingsResponse
|
||
func (a *LaasAPIService) UpdateOfferMappingsExecute(r LaasAPIUpdateOfferMappingsRequest) (*UpdateOfferMappingsResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *UpdateOfferMappingsResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.UpdateOfferMappings")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/businesses/{businessId}/offer-mappings/update"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"businessId"+"}", url.PathEscape(parameterValueToString(r.businessId, "businessId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.businessId < 1 {
|
||
return localVarReturnValue, nil, reportError("businessId must be greater than 1")
|
||
}
|
||
if r.updateOfferMappingsRequest == nil {
|
||
return localVarReturnValue, nil, reportError("updateOfferMappingsRequest is required and must be specified")
|
||
}
|
||
|
||
if r.language != nil {
|
||
parameterAddToHeaderOrQuery(localVarQueryParams, "language", r.language, "", "")
|
||
}
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.updateOfferMappingsRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 423 {
|
||
var v ApiLockedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIUpdateOrderStatusRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
orderId int64
|
||
updateOrderStatusRequest *UpdateOrderStatusRequest
|
||
}
|
||
|
||
func (r LaasAPIUpdateOrderStatusRequest) UpdateOrderStatusRequest(updateOrderStatusRequest UpdateOrderStatusRequest) LaasAPIUpdateOrderStatusRequest {
|
||
r.updateOrderStatusRequest = &updateOrderStatusRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIUpdateOrderStatusRequest) Execute() (*UpdateOrderStatusResponse, *http.Response, error) {
|
||
return r.ApiService.UpdateOrderStatusExecute(r)
|
||
}
|
||
|
||
/*
|
||
UpdateOrderStatus Изменение статуса одного заказа
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/updateOrderStatus.md) %}
|
||
|
||
Изменяет статус заказа. Возможные изменения статусов:
|
||
|
||
* Если магазин подтвердил и подготовил заказ к отправке, то заказ из статуса `"status": "PROCESSING"` и этапа обработки `"substatus": "STARTED"` нужно перевести в статус `"status": "PROCESSING"` и этап обработки `"substatus": "READY_TO_SHIP"`.
|
||
* Если магазин подтвердил заказ, но не может его выполнить (например, товар числится в базе, но отсутствует на складе или нет нужного цвета), то заказ из статуса `"status": "PROCESSING"` и этапа обработки `"substatus": "STARTED"` нужно перевести в статус `"status": "CANCELLED"` с причиной отмены заказа `"substatus": "SHOP_FAILED"`.
|
||
* Если магазин подготовил заказ к отгрузке, но не может его выполнить (например, последний товар был поврежден или оказался с браком), то заказ из статуса `"status": "PROCESSING"` и этапа обработки `"substatus": "READY_TO_SHIP"` нужно перевести в статус `"status": "CANCELLED"` с причиной отмены заказа `"substatus": "SHOP_FAILED"`.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 000 запросов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@param orderId Идентификатор заказа.
|
||
@return LaasAPIUpdateOrderStatusRequest
|
||
*/
|
||
func (a *LaasAPIService) UpdateOrderStatus(ctx context.Context, campaignId int64, orderId int64) LaasAPIUpdateOrderStatusRequest {
|
||
return LaasAPIUpdateOrderStatusRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
orderId: orderId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return UpdateOrderStatusResponse
|
||
func (a *LaasAPIService) UpdateOrderStatusExecute(r LaasAPIUpdateOrderStatusRequest) (*UpdateOrderStatusResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPut
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *UpdateOrderStatusResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.UpdateOrderStatus")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/orders/{orderId}/status"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
localVarPath = strings.Replace(localVarPath, "{"+"orderId"+"}", url.PathEscape(parameterValueToString(r.orderId, "orderId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.updateOrderStatusRequest == nil {
|
||
return localVarReturnValue, nil, reportError("updateOrderStatusRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.updateOrderStatusRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIUpdateOrderStatusesRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
updateOrderStatusesRequest *UpdateOrderStatusesRequest
|
||
}
|
||
|
||
func (r LaasAPIUpdateOrderStatusesRequest) UpdateOrderStatusesRequest(updateOrderStatusesRequest UpdateOrderStatusesRequest) LaasAPIUpdateOrderStatusesRequest {
|
||
r.updateOrderStatusesRequest = &updateOrderStatusesRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIUpdateOrderStatusesRequest) Execute() (*UpdateOrderStatusesResponse, *http.Response, error) {
|
||
return r.ApiService.UpdateOrderStatusesExecute(r)
|
||
}
|
||
|
||
/*
|
||
UpdateOrderStatuses Изменение статусов нескольких заказов
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/updateOrderStatuses.md) %}
|
||
|
||
Изменяет статусы нескольких заказов.
|
||
|
||
Возможные изменения статусов:
|
||
|
||
* Если магазин подтвердил и подготовил заказ к отправке, то заказ из статуса `"status": "PROCESSING"`и этапа обработки `"substatus": "STARTED"` нужно перевести в статус `"status": "PROCESSING"` и этап обработки `"substatus": "READY_TO_SHIP"`.
|
||
* Если магазин подтвердил заказ, но не может его выполнить (например, товар числится в базе, но отсутствует на складе или нет нужного цвета), то заказ из статуса `"status": "PROCESSING"` и этапа обработки `"substatus": "STARTED"` нужно перевести в статус `"status": "CANCELLED"` с причиной отмены заказа `"substatus": "SHOP_FAILED"`.
|
||
* Если магазин подготовил заказ к отгрузке, но не может его выполнить (например, последний товар был поврежден или оказался с браком), то заказ из статуса `"status": "PROCESSING"` и этапа обработки `"substatus": "READY_TO_SHIP"` нужно перевести в статус `"status": "CANCELLED"` с причиной отмены заказа `"substatus": "SHOP_FAILED"`.
|
||
|
||
|**:no-translate[⚙️] Лимит:** 100 000 заказов в час|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIUpdateOrderStatusesRequest
|
||
*/
|
||
func (a *LaasAPIService) UpdateOrderStatuses(ctx context.Context, campaignId int64) LaasAPIUpdateOrderStatusesRequest {
|
||
return LaasAPIUpdateOrderStatusesRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return UpdateOrderStatusesResponse
|
||
func (a *LaasAPIService) UpdateOrderStatusesExecute(r LaasAPIUpdateOrderStatusesRequest) (*UpdateOrderStatusesResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *UpdateOrderStatusesResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.UpdateOrderStatuses")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/orders/status-update"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.updateOrderStatusesRequest == nil {
|
||
return localVarReturnValue, nil, reportError("updateOrderStatusesRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.updateOrderStatusesRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|
||
|
||
type LaasAPIUpdatePricesRequest struct {
|
||
ctx context.Context
|
||
ApiService *LaasAPIService
|
||
campaignId int64
|
||
updatePricesRequest *UpdatePricesRequest
|
||
}
|
||
|
||
func (r LaasAPIUpdatePricesRequest) UpdatePricesRequest(updatePricesRequest UpdatePricesRequest) LaasAPIUpdatePricesRequest {
|
||
r.updatePricesRequest = &updatePricesRequest
|
||
return r
|
||
}
|
||
|
||
func (r LaasAPIUpdatePricesRequest) Execute() (*EmptyApiResponse, *http.Response, error) {
|
||
return r.ApiService.UpdatePricesExecute(r)
|
||
}
|
||
|
||
/*
|
||
UpdatePrices Установка цен на товары в конкретном магазине
|
||
|
||
{% include notitle [:no-translate[access]](../../_auto/method_scopes/updatePrices.md) %}
|
||
|
||
Устанавливает цены на товары в магазине. Чтобы получить рекомендации Маркета, касающиеся цен, выполните запрос [POST businesses/{businessId}/offers/recommendations](../../reference/business-assortment/getOfferRecommendations.md).
|
||
|
||
{% note warning "Метод только для отдельных магазинов" %}
|
||
|
||
Вам доступен этот метод, если в кабинете продавца на Маркете есть возможность установить уникальные цены в отдельных магазинах. Как это проверить — в методе [POST businesses/{businessId}/settings](../../reference/businesses/getBusinessSettings.md) в параметре `onlyDefaultPrice` возвращается значение `false`.
|
||
|
||
В ином случае используйте метод управления ценами, которые действуют во всех магазинах, — [POST businesses/{businessId}/offer-prices/updates](../../reference/business-assortment/updateBusinessPrices.md).
|
||
|
||
{% endnote %}
|
||
|
||
{% note info "Данные в каталоге обновляются не мгновенно" %}
|
||
|
||
Это занимает до нескольких минут.
|
||
|
||
{% endnote %}
|
||
|
||
|**:no-translate[⚙️] Лимит:** 10 000 товаров в минуту|
|
||
|-|
|
||
|
||
@param ctx context.Context - for authentication, logging, cancellation, deadlines, tracing, etc. Passed from http.Request or context.Background().
|
||
@param campaignId Идентификатор кампании. Его можно узнать с помощью запроса [:no-translate[GET campaigns]](:no-translate[../../reference/campaigns/getCampaigns.md]) или найти в кабинете продавца на Маркете — нажмите на название своего бизнеса и перейдите на страницу: * **Модули и :no-translate[API]** → блок **Передача данных Маркету**. * **Лог запросов** → выпадающий список в блоке **Показывать логи**. ⚠️ Не передавайте вместо него идентификатор магазина, который указан в кабинете продавца на Маркете рядом с названием магазина и в некоторых отчетах.
|
||
@return LaasAPIUpdatePricesRequest
|
||
*/
|
||
func (a *LaasAPIService) UpdatePrices(ctx context.Context, campaignId int64) LaasAPIUpdatePricesRequest {
|
||
return LaasAPIUpdatePricesRequest{
|
||
ApiService: a,
|
||
ctx: ctx,
|
||
campaignId: campaignId,
|
||
}
|
||
}
|
||
|
||
// Execute executes the request
|
||
//
|
||
// @return EmptyApiResponse
|
||
func (a *LaasAPIService) UpdatePricesExecute(r LaasAPIUpdatePricesRequest) (*EmptyApiResponse, *http.Response, error) {
|
||
var (
|
||
localVarHTTPMethod = http.MethodPost
|
||
localVarPostBody interface{}
|
||
formFiles []formFile
|
||
localVarReturnValue *EmptyApiResponse
|
||
)
|
||
|
||
localBasePath, err := a.client.cfg.ServerURLWithContext(r.ctx, "LaasAPIService.UpdatePrices")
|
||
if err != nil {
|
||
return localVarReturnValue, nil, &GenericOpenAPIError{error: err.Error()}
|
||
}
|
||
|
||
localVarPath := localBasePath + "/campaigns/{campaignId}/offer-prices/updates"
|
||
localVarPath = strings.Replace(localVarPath, "{"+"campaignId"+"}", url.PathEscape(parameterValueToString(r.campaignId, "campaignId")), -1)
|
||
|
||
localVarHeaderParams := make(map[string]string)
|
||
localVarQueryParams := url.Values{}
|
||
localVarFormParams := url.Values{}
|
||
if r.campaignId < 1 {
|
||
return localVarReturnValue, nil, reportError("campaignId must be greater than 1")
|
||
}
|
||
if r.updatePricesRequest == nil {
|
||
return localVarReturnValue, nil, reportError("updatePricesRequest is required and must be specified")
|
||
}
|
||
|
||
// to determine the Content-Type header
|
||
localVarHTTPContentTypes := []string{"application/json"}
|
||
|
||
// set Content-Type header
|
||
localVarHTTPContentType := selectHeaderContentType(localVarHTTPContentTypes)
|
||
if localVarHTTPContentType != "" {
|
||
localVarHeaderParams["Content-Type"] = localVarHTTPContentType
|
||
}
|
||
|
||
// to determine the Accept header
|
||
localVarHTTPHeaderAccepts := []string{"application/json"}
|
||
|
||
// set Accept header
|
||
localVarHTTPHeaderAccept := selectHeaderAccept(localVarHTTPHeaderAccepts)
|
||
if localVarHTTPHeaderAccept != "" {
|
||
localVarHeaderParams["Accept"] = localVarHTTPHeaderAccept
|
||
}
|
||
// body params
|
||
localVarPostBody = r.updatePricesRequest
|
||
if r.ctx != nil {
|
||
// API Key Authentication
|
||
if auth, ok := r.ctx.Value(ContextAPIKeys).(map[string]APIKey); ok {
|
||
if apiKey, ok := auth["ApiKey"]; ok {
|
||
var key string
|
||
if apiKey.Prefix != "" {
|
||
key = apiKey.Prefix + " " + apiKey.Key
|
||
} else {
|
||
key = apiKey.Key
|
||
}
|
||
localVarHeaderParams["Api-Key"] = key
|
||
}
|
||
}
|
||
}
|
||
req, err := a.client.prepareRequest(r.ctx, localVarPath, localVarHTTPMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, formFiles)
|
||
if err != nil {
|
||
return localVarReturnValue, nil, err
|
||
}
|
||
|
||
localVarHTTPResponse, err := a.client.callAPI(req)
|
||
if err != nil || localVarHTTPResponse == nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
localVarBody, err := io.ReadAll(localVarHTTPResponse.Body)
|
||
localVarHTTPResponse.Body.Close()
|
||
localVarHTTPResponse.Body = io.NopCloser(bytes.NewBuffer(localVarBody))
|
||
if err != nil {
|
||
return localVarReturnValue, localVarHTTPResponse, err
|
||
}
|
||
|
||
if localVarHTTPResponse.StatusCode >= 300 {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: localVarHTTPResponse.Status,
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 400 {
|
||
var v ApiClientDataErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 401 {
|
||
var v ApiUnauthorizedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 403 {
|
||
var v ApiForbiddenErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 404 {
|
||
var v ApiNotFoundErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 420 {
|
||
var v ApiLimitErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 423 {
|
||
var v ApiLockedErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
if localVarHTTPResponse.StatusCode == 500 {
|
||
var v ApiServerErrorResponse
|
||
err = a.client.decode(&v, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr.error = err.Error()
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
newErr.error = formatErrorMessage(localVarHTTPResponse.Status, &v)
|
||
newErr.model = v
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
err = a.client.decode(&localVarReturnValue, localVarBody, localVarHTTPResponse.Header.Get("Content-Type"))
|
||
if err != nil {
|
||
newErr := &GenericOpenAPIError{
|
||
body: localVarBody,
|
||
error: err.Error(),
|
||
}
|
||
return localVarReturnValue, localVarHTTPResponse, newErr
|
||
}
|
||
|
||
return localVarReturnValue, localVarHTTPResponse, nil
|
||
}
|