MENU navbar-image

Introduction

This documentation aims to provide all the information you need to work with our API.

Authenticating requests

To authenticate requests, include an Authorization header with the value "Bearer {YOUR_AUTH_KEY}".

All authenticated endpoints are marked with a requires authentication badge in the documentation below.

You can retrieve your token by visiting your dashboard and clicking Generate API token.

Данные

Статусы заказа

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/data/shop/order/statuses" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/data/shop/order/statuses"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/data/shop/order/statuses';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/data/shop/order/statuses'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "success": true,
    "data": [
        {
            "1": "Новый",
            "2": "Оплачено"
        }
    ],
    "message": null
}
 

Request      

GET api/v1/data/shop/order/statuses

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Список иконок товара.

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/data/goods/icons" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/data/goods/icons"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/data/goods/icons';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/data/goods/icons'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "success": true,
    "data": [
        [
            "email_icon",
            "facebook_logo_icon",
            "facebooklogosocials",
            "instagram_icon_r",
            "instagram_icon",
            "oklassnikisocials",
            "rosoftsocialsocia",
            "sale_icon_r",
            "sale_icon",
            "free_vpn_icon",
            "gamepad_icon",
            "google_icon",
            "icon_sale_s",
            "iconfinder_icon_r",
            "installation_application",
            "telegram_icon_r",
            "telegram_icon",
            "tik_tok_icon_s",
            "tik_tok_icon",
            "twitter_icon",
            "vk_icon_s",
            "vpn3",
            "discord_icon",
            "chatgpt_icon",
            "simcard",
            "vk",
            "odnoklassniki",
            "fb",
            "twitter",
            "livejournal",
            "instagram",
            "youtube",
            "skype",
            "icq",
            "likest",
            "likest2",
            "olike",
            "turboliker",
            "heart",
            "vtope",
            "email",
            "mailru",
            "gmail",
            "hotmail",
            "yandex",
            "vine",
            "blogger",
            "google",
            "google_plus",
            "google_talk",
            "myspace",
            "linkedin",
            "foursquare",
            "pinterest",
            "appstore",
            "deviantart",
            "dribble",
            "dropbox",
            "ebay",
            "itunes",
            "lastfm",
            "opera",
            "origin",
            "psn",
            "steam",
            "4game",
            "gta5",
            "wot",
            "skydrive",
            "soundcloud",
            "spotifiy",
            "fotostrana",
            "loveplanet",
            "mamba",
            "nasimke"
        ]
    ],
    "message": null
}
 

Request      

GET api/v1/data/goods/icons

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Список категорий площадки

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/data/general/categories" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/data/general/categories"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/data/general/categories';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/data/general/categories'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "success": true,
    "data": [
        [
            {
                "id": 3,
                "icon": "fa-brands fa-vk",
                "slug": "vkontakte",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Вконтакте",
                        "description": "Купить аккаунты ВК",
                        "text": "<div><div><b><span style=\"font-size:14.0pt;line-height:\n107%\"></span></b></div><span style=\"font-size:16px;\"><b>Какие преимущества несёт с собой приобретение аккаунтов Вконтакте?</b><br>\n&nbsp;<br>\nВконтакте остаётся и является одной из самых популярных и востребованных социальных платформ в СНГ.<br>\nМиллионы пользователей пользуются ней для общения, получения информации, игр и развлечений.<br>\nЗдесь можно найти множественные предложения по продаже страниц Вконтакте, которые предоставляют вам множество преимуществ и улучшить пользовательский опыт и не тратить своё время на продвижение профиля.<br>\n<br><b>\nПочему стоит задуматься о покупке профиля Вконтакте и как это может пригодиться вам.</b><br>\n&nbsp;<br>\nГлавное преимущество приобретения готовых профилей в Вконтакте с друзьями и управлением группами — это возможность привлечь большую аудиторию.<br>\nЕсли у вас имеется бизнес или вы стремитесь пропиарить и продвинуть свой профиль, то иметь большое количество живых подписчиков может ощутимо увеличить вашу популярность и сделать аккаунт более привлекательным.<br>\nПокупка страницы Вконтакте с подписчиками и друзьями позволит вашим публикациям быть более заметными и весомыми в глазах людей и приносить больше взаимодействия с контентом, что, в свою очередь, повышает вашу видимость среди других и привлечёт больше клиентов для ваших товаров или подписчиков.<br>\n&nbsp;<br>\nКроме того, приобретение страниц Вконтакте существенно позволяет экономить личное время и затраты на продвижение.<br>\nЧасто для достижения большой аудитории и продвижения своего профиля нужно очень много времени, а приобретение аккаунта с уже готовой аудиторией позволяет без усилий начать привлекать целевую аудиторию для ваших нужд. Экономия времени позволяет сосредоточиться на развитии бизнеса или творчестве и размещении контента.<br>\n&nbsp;<br><b>\nПокупка аккаунтов с помощью нашего каталога</b> — это<u> лучшее решение</u> тем, кто хочет значительно улучшить свою популярность, экономить своё время и избежать сложностей и проблем во время использования страниц.<br>\nВажно оценить свои потребности и цели, а также рассмотреть все плюсы, которые приносит приобретение готовых аккаунтов с фотографией. &nbsp;<br>\n<br>\nУ нас собраны лучшие предложения для вас, вы можете сделать выбор среди множества магазинов именно то, что подходит именно вам по лучшей цене на рынке!<br>\n<br><b>\nКак пользоваться купленными страницами Вконтакте?</b><br>\nПродаваемые аккаунты бывают в разных выдачи, например в формате - логин:пароль:токен данные для входа разделены двоеточием.<br>\nЗдесь всё предельно понятно, вы можете войти в профиль по привычному логину и паролю, но стоит учесть, что при работе данным способом аккаунты живут меньше.<br>\nТак же прилагается токен для опытных пользователей, о нём поговорим ниже.<br>\n<br><b>\nКак войти в профиль с помощью access token?</b><br>\nСуществует ряд приватных программ для работы по токену VK, вы без проблем можете найти их на просторах интернета. Среди них могут попадаться бесплатные и по подписке.<br>\nТокен нужен для аутентификации API запросов к VK. Он свидетельствует, что запрос, который отправлен от токена, имеет полные права на доступ к данным профиля.<br>\nВам не нужно проходить авторизацию по логину:паролю - у вас уже полный доступ к аккаунту.<br>\nПри использовании данного способа авторизации и работы с аккаунтом риск блокировок уменьшается. Вручную входить по токену можно с помощью сервиса - ApiDog</span><div><span style=\"font-size:14.0pt;line-height:107%\"><o:p></o:p></span></div></div>"
                    },
                    {
                        "lang": "en",
                        "title": "VKontakte",
                        "description": "Buy accounts",
                        "text": "<div>What are the benefits of purchasing VKontakte accounts?</div><div>&nbsp;</div><div>VKontakte remains and is one of the most popular and sought-after social platforms in the CIS.</div><div>Millions of users use it for communication, information, games and entertainment.</div><div>Here you can find multiple offers for selling VKontakte pages, which provide you with many advantages and improve the user experience without wasting your time on profile promotion.</div><div><br></div><div>Why you should think about buying a VKontakte profile and how it can be useful to you.</div><div>&nbsp;</div><div>The main advantage of purchasing ready-made VKontakte profiles with friends and managing groups is the opportunity to attract a large audience.</div><div>If you have a business or are trying to promote and promote your profile, then having a large number of live subscribers can significantly increase your popularity and make your account more attractive.</div><div>Buying a VKontakte page with subscribers and friends will allow your publications to be more visible and significant in the eyes of people and bring more interaction with the content, which in turn increases your visibility among others and will attract more customers for your products or subscribers.</div><div>&nbsp;</div><div>In addition, purchasing VKontakte pages significantly saves personal time and promotion costs.</div><div>It often takes a lot of time to reach a large audience and promote your profile, but purchasing an account with a ready-made audience allows you to effortlessly start attracting a target audience for your needs. Saving time allows you to focus on business development or creativity and content placement.</div><div>&nbsp;</div><div>Purchasing accounts using our catalog is the best solution for those who want to significantly improve their popularity, save their time and avoid difficulties and problems when using pages.</div><div>It is important to evaluate your needs and goals, and also consider all the advantages that purchasing ready-made accounts with a photo brings.</div><div><br></div><div>We have collected the best offers for you, you can choose from a variety of stores exactly what suits you at the best price on the market!</div><div><br></div><div>How to use purchased VKontakte pages?</div><div>Accounts for sale come in different outputs, for example in the format - login:password:token login information is separated by a colon.</div><div>Everything here is very clear, you can log into your profile using your usual login and password, but it’s worth considering that when working this way, accounts last less.</div><div>A token for experienced users is also included, we’ll talk about it below.</div><div><br></div><div>How to log into your profile using an access token?</div><div>There are a number of private programs for working with the VK token; you can easily find them on the Internet. Among them there may be free and subscription ones.</div><div>The token is needed to authenticate API requests to VK. It indicates that the request that is sent from the token has full rights to access the profile data.</div><div>You do not need to log in using your login:password - you already have full access to your account.</div><div>When using this method of authorization and working with your account, the risk of blocking is reduced. You can manually log in using a token using the service - ApiDog</div>"
                    }
                ]
            },
            {
                "id": 4,
                "icon": "fab fa-facebook",
                "slug": "facebook",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Facebook",
                        "description": "Купить аккаунты",
                        "text": "<div><strong>Покупка профилей в Facebook: зачем это нужно и как это работает?<br></strong><br></div><div><strong>В мире арбитража трафика одним из ключевых инструментов становится социальная сеть Facebook, и это неудивительно. С более чем 2 миллиардами активных пользователей, эта платформа является золотой жилой для привлечения целевой аудитории путем обхода блокировок.<br></strong><br></div><div><strong>Но для чего, собственно, покупают профили в Facebook?&nbsp;<br></strong><br></div><div><strong>Множество маркетологов и арбитражников приобретают страницы для размещения рекламы. По своей сути, большинство трафика сконцентрировано в определенных сферах, и использование одного профиля становится непрактичным из-за постоянных блокировок.<br></strong><br></div><div><strong>За небольшую сумму можно приобрести готовый аккаунт, который, хоть и может быть заблокирован в будущем, обычно дает достаточно времени для привлечения нужной аудитории.<br></strong><br></div><div><strong>На какие ниши ориентирована покупка аккаунтов Facebook?&nbsp;<br></strong><br></div><div><strong>Это обычно связано с такими секторами как нутра (товары для здоровья и красоты), адалт (контент для взрослых), дейтинг (сайты знакомств), гемблинг (игры азартных игроков) и беттинг (ставки на спорт).<br></strong><br></div><div><strong>Использование рекламных профилей на Facebook предназначено для привлечения целевой аудитории и получения кликов.&nbsp;<br></strong><br></div><div><strong>Приобретение готового профиля имеет несколько преимуществ: нет необходимости в больших затратах на продвижение нового аккаунта, а также есть возможность использовать эффективный бизнес-менеджмент.<br></strong><br></div><div><strong>При выборе профиля важно обратить внимание на страховой депозит магазина и дату его регистрации. На рынке представлено множество магазинов, где можно найти оптимальное предложение по доступной цене с гарантией качества.<br></strong><br></div><div><strong>Аккаунты с долгой историей регистрации считаются более надежными и обладают повышенными лимитами на активности в сети. Их давний статус уменьшает риск блокировок, так как они уже доказали свою жизнеспособность и имеют высокий уровень доверия.<br></strong><br></div><div><strong>Запуск рассылок с недавно созданных аккаунтов, наоборот, представляется сложным, так как даже с использованием различных методов имитации активности обычного пользователя соцсети это часто бывает невозможно.<br></strong><br></div><div><br></div>"
                    },
                    {
                        "lang": "en",
                        "title": "Facebook",
                        "description": "Buy Facebook",
                        "text": "<div><strong>Buying Facebook profiles: why is it needed and how does it work?<br></strong><br></div><div><strong>In the world of traffic arbitrage, the social network Facebook is becoming one of the key tools, and this is not surprising. With over 2 billion active users, this platform is a gold mine for reaching your target audience by bypassing blocks.<br></strong><br></div><div><strong>But why do people actually buy Facebook profiles?<br></strong><br></div><div><strong>Many marketers and affiliates purchase pages to advertise. By nature, most traffic is concentrated in certain areas, and using a single profile becomes impractical due to constant blocking.<br></strong><br></div><div><strong>For a small amount you can purchase a ready-made account, which, although it may be blocked in the future, usually gives enough time to attract the right audience.<br></strong><br></div><div><strong>What niches are the purchases of Facebook accounts aimed at?<br></strong><br></div><div><strong>This is usually associated with sectors such as nutra (health and beauty products), adult (adult content), dating (dating sites), gambling (games of gamblers) and betting (sports betting).<br></strong><br></div><div><strong>Using advertising profiles on Facebook is designed to attract your target audience and get clicks.<br></strong><br></div><div><strong>Purchasing a ready-made profile has several advantages: there is no need to spend a lot on promoting a new account, and you also have the opportunity to use effective business management.<br></strong><br></div><div><strong>When choosing a profile, it is important to pay attention to the store’s security deposit and the date of its registration. There are many stores on the market where you can find the best offer at an affordable price with a guarantee of quality.<br></strong><br></div><div><strong>Accounts with a long registration history are considered more reliable and have higher limits on online activity. Their long-standing status reduces the risk of blocking, as they have already proven their viability and have a high level of trust.<br></strong><br></div><div><strong>Launching newsletters from newly created accounts, on the contrary, seems difficult, since even with the use of various methods of simulating the activity of an ordinary social network user, this is often impossible.<br></strong><br></div>"
                    }
                ]
            },
            {
                "id": 5,
                "icon": "fa-brands fa-telegram",
                "slug": "telegram",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Telegram",
                        "description": "Купить аккаунты",
                        "text": "<div>Зачем нужны купленные аккаунты в Telegram?</div><div><br></div><div>Независимо от вашего статуса - владельца малого бизнеса или маркетингового специалиста, купленные аккаунты в Telegram могут оказаться важным инструментом для улучшения своей маркетинговой стратегии.</div><div><br></div><div>Польза от покупки аккаунтов Telegram</div><div>Если вы стремитесь расширить аудиторию для бизнеса в соц сетях, возможно, вам следует обратить внимание на покупку аккаунтов в Telegram.&nbsp;</div><div>Этот мессенджер является самым популярным и безопасным средством общения, и использование приобретенных аккаунтов поможет за короткие сроки ускорить охваты целевой аудитории.&nbsp;</div><div>С их помощью вы сможете установить контакт с клиентами, рекламировать свои товары и услуги, а также укрепить имидж вашего бренда. Кроме того, приобретение уже готовых аккаунтов позволит сэкономить ваше время и ресурсы, необходимые для создания и управления новыми аккаунтами с нуля.</div><div><br></div><div>Преимущества приобретения аккаунтов</div><div>Одним из ключевых преимуществ покупки аккаунтов является возможность приобретения их оптом, что позволит охватить более широкую аудиторию. Также приобретение групповых аккаунтов позволяет создавать множество кампаний, ориентированных на различные демографические группы, что повышает эффективность маркетинговых усилий. Кроме того, наличие нескольких аккаунтов упрощает обслуживание клиентов и мониторинг коммуникаций. Это также облегчает запуск целевых кампаний и отслеживание их результативности. Используя приобретенные аккаунты, вы можете активно отслеживать вовлеченность пользователей и реагировать на отзывы клиентов с максимальной эффективностью.</div><div><br>Благодаря нашему каталогу магазинов вы можете выбрать лучшие аккаунты Telegram с отлежкой и гарантией по доступной цене.&nbsp;<br><br></div><div>При покупке стоит обратить внимание на такие параметры:</div><div><br></div><div>Форматы продажи аккаунтов – выберите подходящий формат работы с аккаунтом, продавцы указывают его в названии товара.</div><div>Страна регистрации аккаунта – чтоб избежать перманентного блока при входе, входить в аккаунты нужно с IP той страны, которая указана в описании.</div><div>Тип создания аккаунта бывает разный и зависит от того, для каких целей вам нужен аккаунт, как правило автореги подходят для многих целей.</div><div>Отлежка после создания и прогрев аккаунта - важные параметры, отлежка аккаунта должна быть от 7-ми дней, а аккаунты с прогревом будут стоить дороже и более редкие.</div><div>Заполнение аккаунта - есть аватарка или нет, стоит ли 2fa, корректность имени и фамилии профиля.</div><div>Для рассылки, инвайтинга - эти обозначения в описании свидетельствуют о том, что на профиле при покупке не будет теневых баннов.&nbsp;</div><div><br></div>"
                    },
                    {
                        "lang": "en",
                        "title": "Telegram",
                        "description": "Buy Telegram",
                        "text": "<div><strong>Why are purchased accounts needed in Telegram?<br></strong><br></div><div><strong>Regardless of your status - whether you're a small business owner or a marketing specialist, purchased Telegram accounts can be an important tool for improving your marketing strategy.<br></strong><br></div><div><strong>Benefits of Purchasing Telegram Accounts<br></strong><br></div><div><strong>If you aim to expand your business audience on social media, you may want to consider purchasing Telegram accounts. This messenger is the most popular and secure means of communication, and using acquired accounts can help accelerate reaching your target audience in a short period. With them, you can connect with clients, advertise your products and services, and strengthen your brand image. Additionally, acquiring ready-made accounts will save your time and resources needed to create and manage new accounts from scratch.<br></strong><br></div><div><strong>Advantages of Acquiring Accounts<br></strong><br></div><div><strong>One of the key benefits of purchasing accounts is the ability to buy them in bulk, allowing you to reach a broader audience. Additionally, acquiring group accounts enables the creation of multiple campaigns targeting different demographic groups, thus enhancing the effectiveness of marketing efforts. Moreover, having multiple accounts simplifies customer service and communication monitoring. It also facilitates launching targeted campaigns and tracking their effectiveness. By using acquired accounts, you can actively monitor user engagement and respond to customer feedback with maximum efficiency.<br></strong><br></div><div><strong>Thanks to our store catalog, you can choose the best Telegram accounts with assurance and guarantees at an affordable price.<br></strong><br></div><div><strong>When purchasing, pay attention to such parameters:<br></strong><br></div><div><strong>Account sales formats - choose the appropriate format for working with the account; sellers specify it in the product title.<br></strong><br></div><div><strong>Country of account registration - to avoid permanent blocks upon login, log into accounts from the IP address of the country indicated in the description.<br></strong><br></div><div><strong>Type of account creation varies depending on the purposes for which you need the account; typically, autoregistration is suitable for many purposes.<br></strong><br></div><div><strong>Aging after creation and account warming - important parameters; account aging should be at least 7 days, and accounts with warming will be more expensive and rarer.<br></strong><br></div><div><strong>Account profile completeness - whether there is an avatar, whether 2FA is enabled, the correctness of the profile name and surname.<br></strong><br></div><div><strong>For mailing, inviting - these designations in the description indicate that there will be no shadow bans on the profile upon purchase.<br></strong><br></div>"
                    }
                ]
            },
            {
                "id": 6,
                "icon": "fa-brands fa-tiktok",
                "slug": "tiktok",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "TikTok",
                        "description": "Купить аккаунты",
                        "text": "<p><b>Где приобрести аккаунты в TikTok и зачем это нужно?</b></p><p>Приобретение аккаунтов в социальных сетях сегодня - процесс достаточно простой. Однако важнейшим моментом является правильный выбор магазина для покупки.&nbsp;</p><p>При выборе аккаунта важно обратиться к проверенным и надежным источникам, определив свои цели.</p><p>Многие люди приобретают аккаунты TikTok, потому что самостоятельное продвижение профиля до большого количества подписчиков требует огромного количества времени и усилий.&nbsp;</p><p>Кроме того, нет никакой гарантии успеха в этом процессе, который также требует значительных финансовых и временных вложений.</p><p><b>Цели покупки аккаунтов</b></p><p>TikTok позволяет пользователям не только просматривать короткие видео, но и создавать свои собственные.&nbsp;</p><p>Эта платформа пользуется большой популярностью среди блогеров и представляет собой уникальную среду для рекламы и продвижения бизнеса.&nbsp;</p><p>Это приводит к постоянному росту спроса на приобретение аккаунтов.</p><p>Кроме того, есть несколько других причин для покупки аккаунтов:</p><p>Возможность заработка через партнерские программы.</p><p>Увеличение трафика на основной профиль в других социальных сетях.</p><p>Возможность использовать несколько аккаунтов для продвижения и развития других профилей в TikTok.</p><p>Перепродажа продвинутых аккаунтов с большим количеством подписчиков.</p><p>Преимущества приобретенных аккаунтов</p><p>Популярный аккаунт в TikTok позволяет владельцу стать известным и увеличить доход за счет трафика на другие ресурсы или магазины. Кроме того, к преимуществам приобретенных аккаунтов можно отнести:</p><p>Быстрый приток пользователей.</p><p>Возможность добавления ссылок на другие социальные сети.</p><p>Автоматическое привлечение подписчиков благодаря уникальному алгоритму платформы.</p>"
                    },
                    {
                        "lang": "en",
                        "title": "TikTok",
                        "description": "Buy accounts",
                        "text": "<p>Where to buy TikTok accounts and why is it needed?</p><p>Acquiring accounts on social networks today is a fairly simple process. However, the most important point is the right choice of store for purchase.</p><p>When choosing an account, it is important to turn to trusted and reliable sources, defining your goals.</p><p>Many people purchase TikTok accounts because growing a profile to a large number of followers on their own requires a huge amount of time and effort.</p><p>Moreover, there is no guarantee of success in this process, which also requires significant financial and time investment.</p><p>Purposes of purchasing accounts</p><p>TikTok allows users not only to watch short videos, but also to create their own.</p><p>This platform is very popular among bloggers and provides a unique environment for advertising and business promotion.</p><p>This leads to a constant increase in demand for the acquisition of accounts.</p><p>Additionally, there are several other reasons to purchase accounts:</p><p>Opportunity to earn money through affiliate programs.</p><p>Increasing traffic to the main profile on other social networks.</p><p>The ability to use multiple accounts to promote and develop other profiles on TikTok.</p><p>Resale of advanced accounts with a large number of subscribers.</p><p>Benefits of purchased accounts</p><p>A popular TikTok account allows the owner to become famous and increase income through traffic to other resources or stores. In addition, the advantages of purchased accounts include:</p><p>Rapid influx of users.</p><p>Ability to add links to other social networks.</p><p>Automatically attract subscribers thanks to the platform’s unique algorithm.</p>"
                    }
                ]
            },
            {
                "id": 7,
                "icon": "fab fa-instagram",
                "slug": "instagram",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Instagram",
                        "description": "Купить аккаунты",
                        "text": "<div><strong>Почему компании всё чаще выбирают покупку готовых аккаунтов в Инстаграме для развития своего бизнеса?</strong><br><br></div><div>В современном мире социальные сети стали неотъемлемой частью маркетинговых стратегий и инструментом для продвижения брендов. Среди множества платформ Инстаграм выделяется своей популярностью и эффективностью, привлекая миллионы пользователей по всему миру. Эта сеть предоставляет бизнесу уникальные возможности для взаимодействия с аудиторией, демонстрации продукции и формирования имиджа компании благодаря визуальному контенту и широкому охвату.<br><br></div><div><strong>Создание нового аккаунта в Инстаграме с нуля</strong> — процесс, требующий значительных затрат времени, ресурсов и терпения. Необходимо разработать контент-план, привлечь подписчиков, выстроить доверие к бренду и наладить стабильную активность. Для многих предпринимателей и компаний, стремящихся к мгновенным результатам, такой подход может оказаться слишком долгим. Именно поэтому всё больше бизнесов обращают внимание на покупку уже готовых аккаунтов, которые можно найти в специализированных каталогах, таких как наш. Мы предлагаем доступ к разнообразным магазинам, где представлены аккаунты Инстаграма по разумным ценам, что делает этот вариант привлекательным для компаний любого масштаба.<br><br></div><div><strong>Приобретение готового аккаунта</strong> — это, по сути, покупка уже сформированного инструмента для бизнеса. Такие страницы имеют определённую аудиторию, историю публикаций и уровень вовлечённости, что позволяет начать взаимодействие с потенциальными клиентами буквально с первого дня. Это особенно актуально для тех, кто хочет быстро запустить рекламную кампанию, протестировать новую нишу или укрепить своё присутствие в сети без долгого ожидания органического роста.<br><br></div><div>На рынке доступны аккаунты из самых разных регионов и стран, что предоставляет бизнесу гибкость в выборе. Например, вы можете приобрести страницу, ориентированную на локальный рынок, или наоборот — международный аккаунт с широкой географией подписчиков. Однако при выборе стоит учитывать несколько ключевых аспектов. Один из них — тип аккаунта. Автореги (автоматически зарегистрированные профили) являются наиболее бюджетным вариантом. Они обычно пустые или минимально заполненные, с низкой активностью, что делает их подходящими для тех, кто готов самостоятельно развивать страницу с нуля. С другой стороны, раскрученные аккаунты с реальными подписчиками и высоким уровнем вовлечённости стоят дороже, но предлагают готовую активную аудиторию, что значительно ускоряет достижение бизнес-целей. Также существуют так называемые возрастные профили — аккаунты, созданные несколько лет назад. Они обладают повышенным доверием со стороны алгоритмов Инстаграма и пользователей, так как их история выглядит более естественной.<br><br></div><div>После покупки аккаунта важно грамотно подойти к его дальнейшему ведению. Сохранение стиля, тематики и tone of voice предыдущего владельца играет ключевую роль в удержании аудитории. Резкие изменения в контенте, такие как смена направления или визуальной концепции, могут вызвать недовольство подписчиков и привести к массовой отписке. Поэтому перед покупкой рекомендуется тщательно проанализировать, насколько аккаунт соответствует вашим бизнес-задачам, целевой аудитории и общей стратегии продвижения. Например, если вы занимаетесь продажей косметики, аккаунт с подписчиками, интересующимися автомобилями, вряд ли принесёт желаемый результат.<br><br></div><div><strong>Покупка готовых аккаунтов в Инстаграме</strong> — это не просто удобный способ сэкономить время, но и продуманный стратегический шаг. Он позволяет бизнесу быстрее выйти на рынок, протестировать новые идеи, увеличить продажи и укрепить своё присутствие в цифровом пространстве. Более того, такой подход даёт возможность обойти некоторые ограничения, связанные с алгоритмами платформы, которые часто усложняют продвижение новых профилей. В условиях высокой конкуренции в социальных сетях этот метод становится всё более востребованным среди предпринимателей, стремящихся к эффективности и оперативности в достижении своих целей.<br><br></div>"
                    },
                    {
                        "lang": "en",
                        "title": "Instagram",
                        "description": "Buy Instagram",
                        "text": "<div><strong>Why Are Companies Increasingly Choosing to Buy Instagram Accounts for Their Business?</strong><br><br></div><div>In today’s world, social media has become an integral part of marketing strategies and a powerful tool for brand promotion. Among the multitude of platforms, Instagram stands out due to its widespread popularity and effectiveness, attracting millions of users globally. This network offers businesses unique opportunities to engage with their audience, showcase products, and build a company’s image through compelling visual content and extensive reach.<br><br></div><div>Creating a new Instagram account from scratch is a process that demands significant time, resources, and patience. It involves developing a content plan, attracting followers, establishing brand trust, and maintaining consistent activity. For many entrepreneurs and companies aiming for immediate results, this approach can feel excessively slow. That’s why more and more businesses are turning to the option of purchasing pre-existing Instagram accounts, readily available through specialized catalogs like ours. We provide access to a variety of stores offering Instagram accounts at reasonable prices, making this solution appealing to companies of all sizes.<br><br></div><div>Acquiring a ready-made account essentially means purchasing a fully-formed business tool. These pages come with an established audience, a posting history, and a certain level of engagement, enabling you to start interacting with potential customers from day one. This is particularly valuable for those looking to quickly launch an advertising campaign, test a new niche, or strengthen their online presence without waiting for organic growth.<br><br></div><div>The market offers accounts from a wide range of regions and countries, providing businesses with flexibility in their choices. For instance, you can buy a page tailored to a local market or opt for an international account with a broader subscriber base. However, several key factors should be considered when making a selection. One of them is the type of account. Autoregs (automatically registered profiles) are the most budget-friendly option. They are typically empty or minimally filled, with low activity, making them suitable for those willing to develop the page from the ground up. On the other hand, promoted accounts with real followers and high engagement levels come at a higher cost but offer an active, ready-to-use audience, significantly speeding up the achievement of business goals. There are also so-called aged profiles—accounts created several years ago. These tend to enjoy heightened trust from both Instagram’s algorithms and users due to their more natural history.<br><br></div><div>After purchasing an account, it’s crucial to manage it thoughtfully. Maintaining the style, theme, and tone of voice of the previous owner plays a key role in retaining the audience. Abrupt changes in content, such as shifting the focus or visual concept, can lead to dissatisfaction among followers and trigger mass unfollows. Therefore, before making a purchase, it’s advisable to carefully assess whether the account aligns with your business objectives, target audience, and overall promotional strategy. For example, if you’re selling cosmetics, an account with followers interested in cars is unlikely to deliver the desired results.<br><br></div><div>Buying ready-made Instagram accounts is not just a convenient way to save time—it’s a strategic move. It allows businesses to enter the market more quickly, test new ideas, boost sales, and solidify their digital presence. Moreover, this approach can help bypass some of the limitations imposed by the platform’s algorithms, which often hinder the promotion of new profiles. In the highly competitive landscape of social media, this method is gaining popularity among entrepreneurs seeking efficiency and speed in achieving their goals.<br><br></div>"
                    }
                ]
            },
            {
                "id": 8,
                "icon": "fa-solid fa-envelope",
                "slug": "email",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Email",
                        "description": "Купить почты",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "Email",
                        "description": "Buy mail",
                        "text": ""
                    }
                ]
            },
            {
                "id": 9,
                "icon": "fa-brands fa-discord",
                "slug": "discord",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Discord",
                        "description": "Купить аккаунты",
                        "text": "<p>Discord - это не просто приложение для общения, которое позволяет пользователям отправлять сообщения или проводить голосовые звонки. Это также платформа, на которой существуют различные сообщества, каждое из которых представлено сервером с отдельными текстовыми и голосовыми каналами, доступ к которым можно получить, присоединившись к ним. Пользователи могут обмениваться текстовыми сообщениями, общаться в голосовых чатах, делиться видео, ссылками, изображениями, музыкой и многим другим.</p><p>Изначально Discord был создан в 2015 году с целью предоставить геймерам платформу для свободного общения и создания сообществ на основе их общих интересов. Однако со временем он стал популярным среди пользователей различных социальных групп и ниш. На Discord можно найти сообщества, объединяющие единомышленников по самым разным интересам.</p><p><b>Для кого нужны аккаунты Discord и где их можно приобрести?</b></p><p>Наш каталог магазинов предлагает широкий выбор аккаунтов Discord по доступным ценам для самых разных целей. Приобретая аккаунт Discord, вы получаете полный доступ к учётной записи для реализации своих задач.</p><p>Если вы стремитесь к раскрутке своего сообщества, популяризации вашей страницы или паблика, вам необходимы социальные показатели, такие как лайки, подписчики, посты, репосты и так далее. И именно для этого вам понадобятся аккаунты Discord.</p><p>Активность на странице в социальных сетях - лайки, комментарии, репосты - помогает улучшить ее репутацию в поисковых системах, увеличивая тем самым количество посещений и, следовательно, доход.</p><p>Однако в процессе социальной раскрутки могут встретиться различные трудности, идеальной универсальной формулы здесь не существует. Discord постоянно внедряет новые меры защиты, поэтому важно быть гибким и тестировать разные стратегии, чтобы достичь желаемых результатов.</p><p>Discord предлагает все необходимые функции для эффективного общения, включая голосовые и видеочаты, а также текстовые опции. Это особенно полезно для геймеров, которые могут использовать его для координации действий и общения во время игры.</p><p>Хотя Discord изначально был разработан как приложение для геймеров, его использование распространилось и на другие сферы. Многие люди находят его удобным инструментом для социальных и организационных целей.</p><p>Discord стал популярным местом для блогеров, которые стремятся создать сообщество вокруг своего контента и активно взаимодействовать с аудиторией.</p><div><br></div>"
                    },
                    {
                        "lang": "en",
                        "title": "Discord",
                        "description": "Buy accounts",
                        "text": "<p>Discord is not just a communication app that allows users to send messages or make voice calls. It is also a platform where various communities exist, each represented by a server with separate text and voice channels that can be accessed by joining them. Users can exchange text messages, voice chat, share videos, links, images, music and more.</p><p>Discord was originally created in 2015 with the goal of providing a platform for gamers to freely communicate and create communities based on their common interests. However, over time, it became popular among users of various social groups and niches. On Discord you can find communities that unite like-minded people with a wide variety of interests.</p><p>Who needs Discord accounts and where can I buy them?</p><p>Our store directory offers a wide selection of Discord accounts at affordable prices for a variety of purposes. By purchasing a Discord account, you get full access to the account to carry out your tasks.</p><p>If you strive to promote your community, popularize your page or public, you need social indicators such as likes, subscribers, posts, reposts, and so on. And that's what you'll need Discord accounts for.</p><p>Activity on a page on social networks - likes, comments, reposts - helps improve its reputation in search engines, thereby increasing the number of visits and, consequently, income.</p><p>However, in the process of social promotion, various difficulties may arise; there is no ideal universal formula here. Discord is constantly implementing new security measures, so it's important to be flexible and test different strategies to achieve the results you want.</p><p>Discord offers all the features you need for effective communication, including voice and video chats, as well as text options. This is especially useful for gamers, who can use it to coordinate and communicate while gaming.</p><p>Although Discord was originally designed as an app for gamers, its use has spread to other areas. Many people find it a useful tool for social and organizational purposes.</p><p>Discord has become a popular place for bloggers looking to build a community around their content and actively engage with their audience.</p>"
                    }
                ]
            },
            {
                "id": 10,
                "icon": "fa-solid fa-network-wired openai",
                "slug": "chatgpt",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Chat GPT",
                        "description": "Купить аккаунты",
                        "text": "<p style=\"text-align: center; \"><b><br>ChatGPT: Универсальный Инструмент для Различных Задач</b></p><p>ChatGPT – это инновационная технология, разработанная OpenAI, представляющая собой генеративную преобразовательную сеть (GPT), которая может генерировать человекоподобные тексты. Эта технология обеспечивает широкий спектр возможностей и используется в различных областях. Давайте рассмотрим, что умеет ChatGPT и для чего его используют.</p><p><b>1. Генерация Текста</b></p><p>ChatGPT способен составлять тексты и статьи на различные темы и в разных стилях написания. Он может создавать статьи, рецензии, истории, поэзию, а также ответы на вопросы на основе предоставленных данных.</p><p><b>2. (NLP) Машинное обучение</b></p><p>Эта функция обладает возможностью понимать и естественный язык, что позволяет использовать её для задач обработки текста.</p><p><b>3. Создание Диалоговых Систем</b></p><p>ChatGPT может использоваться для разработки диалоговых систем, чат-ботов и виртуальных помощников, способных вести натуральные и продуктивные беседы с пользователями.</p><p><b>4. Автоматизация Контента</b></p><p>Благодаря своей способности к генерации текста, ChatGPT применяется для автоматизации создания контента, такого как новостные статьи, составить описание продукта, тексты для маркетинга и т. д.</p><p><b>5. Обучение и Исследования</b></p><p>Исследователи и разработчики используют ChatGPT для изучения языка, понимания его особенностей и разработки новых методов обработки текста и машинного обучения.</p><p><b>6. Помощь в Образовании</b></p><p>В образовательных целях ChatGPT может использоваться для создания материалов для обучения, генерации заданий, автоматической проверки работ студентов и обучения языковому арту.</p><p><b>7. Помощник в Клинической Практике</b></p><p>В медицинской сфере ChatGPT может использоваться в качестве помощника для анализа медицинских данных, создания медицинских рекомендаций и даже для терапевтических целей.</p><p><b>8. Поддержка Клиентов и Обслуживание</b></p><p>Многие компании применяют ChatGPT для обработки запросов клиентов, предоставления поддержки в онлайн-чатах и автоматического ответа на повседневные вопросы.</p><p><b>9. Создание Контента для Игр и Развлечений</b></p><p>В игровой индустрии ChatGPT может использоваться для создания сюжетов, диалогов персонажей, описания игрового мира и другого контента.</p><p><b>10. Помощь в Креативном Процессе</b></p><p>Художники, писатели и музыканты могут использовать ChatGPT для получения вдохновения, создания идей и экспериментов с новыми концепциями.</p><p>В заключение, ChatGPT представляет собой отличный инструмент, обладающий огромным спектром возможностей и находит своё применение в различных сценариях.&nbsp;</p><p>Его возможность к генерации текстов и статей, пониманию и обработке естественного языка и информации делают его ценным активом для индустрии, образования, здравоохранения и многих других областей.</p>"
                    },
                    {
                        "lang": "en",
                        "title": "Chat GPT",
                        "description": "Buy accounts",
                        "text": "<p><br></p><p style=\"text-align: center; \"><b>ChatGPT: A Universal Tool for Various Tasks</b></p><p>ChatGPT is an innovative technology developed by OpenAI, representing a Generative Pre-trained Transformer (GPT) network capable of generating human-like texts. This technology provides a wide range of capabilities and is used in various fields. Let's explore what ChatGPT can do and what it is used for.</p><p><b>Text Generation</b></p><p>ChatGPT can compose texts and articles on various topics and in different writing styles. It can create articles, reviews, stories, poetry, as well as answers to questions based on provided data.</p><p><b>Natural Language Processing (NLP)</b></p><p>This feature has the ability to understand natural language, allowing its use for text processing tasks.</p><p><b>Dialogue System Development</b></p><p>ChatGPT can be used to develop dialogue systems, chatbots, and virtual assistants capable of engaging in natural and productive conversations with users.</p><p><b>Content Automation</b></p><p>Thanks to its text generation ability, ChatGPT is applied to automate content creation, such as news articles, product descriptions, marketing texts, etc.</p><p><b>Education and Research</b></p><p>Researchers and developers use ChatGPT to study language, understand its nuances, and develop new methods of text processing and machine learning.</p><p><b>Educational Assistance</b></p><p>For educational purposes, ChatGPT can be used to create teaching materials, generate assignments, automatically grade students' work, and teach language arts.</p><p><b>Clinical Practice Support</b></p><p>In the medical field, ChatGPT can be used as an assistant for analyzing medical data, creating medical recommendations, and even for therapeutic purposes.</p><p><b>Customer Support and Service</b></p><p>Many companies use ChatGPT to handle customer queries, provide support in online chats, and automatically respond to common questions.</p><p><b>Content Creation for Games and Entertainment</b></p><p>In the gaming industry, ChatGPT can be used to create plots, character dialogues, descriptions of game worlds, and other content.</p><p><b>Assistance in the Creative Process</b></p><p>Artists, writers, and musicians can use ChatGPT for inspiration, generating ideas, and experimenting with new concepts.</p><p>In conclusion, ChatGPT is an excellent tool with a vast range of capabilities and finds its application in various scenarios.</p><p>Its ability to generate texts and articles, understand and process natural language and information, make it a valuable asset for the industry, education, healthcare, and many other fields.</p>"
                    }
                ]
            },
            {
                "id": 11,
                "icon": "fa-brands fa-microsoft",
                "slug": "microsoft",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Microsoft",
                        "description": "Продукты Microsoft",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "Microsoft",
                        "description": "Microsoft products",
                        "text": ""
                    }
                ]
            },
            {
                "id": 12,
                "icon": "fab fa-whatsapp",
                "slug": "whatsapp",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "WhatsApp",
                        "description": "Услуги по WhatsApp",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "WhatsApp",
                        "description": "Services via WhatsApp",
                        "text": ""
                    }
                ]
            },
            {
                "id": 13,
                "icon": "fa-solid fa-server",
                "slug": "socks",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Proxy Socks, Http(s)",
                        "description": "Продажа Proxy",
                        "text": "<p><b>Прокси-сервера (прокси) являются промежуточным устройством, которое действует от имени других устройств и осуществляет передачу запросов от клиентов.</b></p><p>Его функция заключается в том, чтобы быть являться посредником между пользователем прокси и целевым сервером, сайтом или онлайн ресурсом, обеспечивая пересылку запросов и ответов между ними.</p><p><b>Прокси применяются по различным причинам:</b></p><p><b>Контроль доступа пользователей и обеспечение их анонимности и безопасности:</b> Они способны фильтровать и управлять доступом к определенным веб-сайтам или ресурсам, что позволяет организациям регулировать и управлять интернет-трафиком своих сотрудников. Кроме того, прокси-серверы способны блокировать вредоносные или нежелательные веб-сайты, повышая уровень безопасности.</p><p><b>Улучшение скорости работы: </b>Прокси осуществляют кэширование запросов и ответов, что снижает время загрузки страниц и повышает производительность сети путем уменьшения количества запросов к удаленному серверу.</p><p><b>Обеспечение анонимности пользователя:</b> Прокси могут использоваться для скрытия источника запроса, обеспечивая анонимный доступ в интернете.&nbsp;</p><p><b>Мониторинг трафика:</b> Они предоставляют возможность компаниям и администраторам следить и анализировать трафик пользователей, например в целях обеспечения безопасности и управления ресурсами.</p><p><b>Оптимизация сети:</b> Прокси-серверы применяются для распределения нагрузки и оптимизации интернет трафика, направляя запросы на наиболее подходящие серверы для обработки.</p><p>Прокси-сервера являются отличным инструментом для управления и контроля трафика, обеспечения анонимности и безопасности и повышения скорости и производительности сети. Их применение позволяет эффективно управлять потоком информации в сети, что особенно важно в условиях современного интернет-пространства.<br><br><br></p>"
                    },
                    {
                        "lang": "en",
                        "title": "Proxy Socks, Http(s)",
                        "description": "Selling Proxy",
                        "text": "<p>Proxy servers (proxies) are intermediary devices that act on behalf of other devices and facilitate the transmission of requests from clients.</p><p>Their function is to act as intermediaries between the proxy user and the target server, website, or online resource, facilitating the forwarding of requests and responses between them.</p><p>Proxies are used for various reasons:</p><p>Access control for users and ensuring their anonymity and security: They can filter and control access to specific websites or resources, allowing organizations to regulate and manage the internet traffic of their employees. Additionally, proxy servers are capable of blocking malicious or unwanted websites, increasing security levels.</p><p>Improving speed: Proxies cache requests and responses, reducing page load times and enhancing network performance by decreasing the number of requests to the remote server.</p><p>Ensuring user anonymity and bypassing restrictions: Proxies can be used to conceal the source of a request, providing anonymous internet access. This can be particularly useful for bypassing geographical content restrictions or censorship.</p><p>Traffic monitoring: They enable companies and administrators to monitor and analyze user traffic, such as for security purposes and resource management.</p><p>Network optimization: Proxy servers are used for load balancing and optimizing internet traffic by directing requests to the most appropriate servers for processing.</p><p>Proxy servers are excellent tools for traffic management and control, ensuring anonymity and security, and improving network speed and performance. Their use allows for efficient management of information flow in the network, which is particularly important in the modern internet landscape.</p>"
                    }
                ]
            },
            {
                "id": 14,
                "icon": "fa-solid fa-sim-card",
                "slug": "proxy",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "3g/4G Proxy ",
                        "description": "Мобильные прокси",
                        "text": "<p><b>3G / 4G прокси являются альтернативой обычным прокси, они работают на устройствах с мобильной связью и подключаются к интернету через сеть операторов связи (3G и 4G).</b></p><p>Это прокси, которые функционируют внутри девайсов пользователей, для доступа в сеть через операторов мобильной связи.&nbsp;</p><p>Мобильные прокси 3G / 4G, состоят из специальных модемов и обычных мобильных телефонов, а также определенным программным обеспечением, размещенным на серверах хозяина прокси-сети.&nbsp;</p><p>Специальный софт отвечает за распределение запросов внутри мобильной сети и обеспечивает безопасный доступ для пользователей.</p><p>В зависимости от количества юзеров, которые коннектятся к одной и той же точке доступа, прокси различаются на приватные и общие для использования несколькими людьми одновременно.&nbsp;</p><p>Приватные (частные) мобильные прокси используются только одним человеком, что в свою очередь означает, что весь проходящий через прокси трафик будет относиться только к одному пользователю.&nbsp;</p><p>Общие моб прокси могут быть в использовании сразу несколькими пользователями одновременно, что позволяет снизить стоимость аренды таких прокси, но влияет на скорость интернета через такой прокси и конфиденциальность.</p><p>Организация таких мобильных прокси-сетей обычно осуществляется провайдерами с использованием различных схем.</p><p><b>Преимущества использования мобильных прокси включают:</b></p><p>1. Низкий риск блокировок на сайтах и сервисах. Мобильные прокси сервера могут успешно использоваться под такие задачи как парсинг, создание мультиаккаунтов в соц сетях без риска быть заблокированным.</p><p>IP-адреса устройств динамические, поэтому риск блокировки таких адресов неэффективен, так как ип может принадлежать различным пользователям в разное время.</p><p>2. Быстрая смена IP адреса. Данные прокси могут осуществлять смену IP-адресов при необходимости.&nbsp;</p><p>За эту услугу обычно не нужно доплачивать, ведь вы арендуете только активные ип адреса.</p><p>3. Отправка параллельных запросов. Чем больше устройств пользователей в сети прокси сервера, тем больше одновременных запросов можно отправить.&nbsp;</p><p>Это ускоряет обработку сложных задач, например парсинг большого количества странниц.</p><p>4. Большой выбор локаций подключения. Серверные прокси обычно связаны с большими городами и дата-центрами, но мобильные 3G / 4G прокси дают возможность менять местоположение до населенных пунктов и операторов сотовой связи, что делает такие запросы неразличимыми от запросов обычных клиентов.</p><p>5. Совместимость с приватным софтом. Возможность использования мобильных прокси зависят от функционала программ и наличия в них модулей api интеграции.&nbsp;</p><p>Несмотря на преимущества, такие прокси имеют и определенные недостатки, например высокая стоимость мобильного трафика и возможную нестабильность подключения к сети.&nbsp;</p><p>Мобильные прокси используют для решения различных задач, например - арбитраж, маркетинг, продвижение профилей в социальных сетях или для авторегистрации аккаунтов (массовое создание профилей).</p>"
                    },
                    {
                        "lang": "en",
                        "title": "3g/4G Proxy ",
                        "description": "Stores with proxies",
                        "text": "<p>3G/4G proxies are an alternative to regular proxies, functioning on mobile devices and connecting to the internet through mobile network operators (3G and 4G).</p><p>These proxies operate within users' devices to access the network through mobile operators.</p><p>Mobile 3G/4G proxies consist of special modems and ordinary mobile phones, as well as specific software deployed on proxy network host servers.</p><p>Specialized software manages request distribution within the mobile network and ensures secure access for users.</p><p>Depending on the number of users connecting to the same access point, proxies are differentiated into private and shared for simultaneous use by multiple people.</p><p>Private mobile proxies are used by only one person, meaning all traffic passing through the proxy pertains to that single user.</p><p>Shared mobile proxies can be used by multiple users simultaneously, reducing the cost of renting such proxies but affecting internet speed and confidentiality.</p><p>The establishment of such mobile proxy networks is usually carried out by providers using various schemes.</p><p>The advantages of using mobile proxies include:</p><p>Low risk of blocks on websites and services. Mobile proxy servers can be successfully used for tasks such as web scraping, creating multiple accounts on social networks without the risk of being blocked.</p><p>Since device IP addresses are dynamic, the risk of blocking such addresses is ineffective, as IPs may belong to different users at different times.</p><p>Quick IP address change. These proxies can change IP addresses when necessary.</p><p>There is usually no additional charge for this service, as you only rent active IP addresses.</p><p>Sending parallel requests. The more user devices in the proxy server network, the more simultaneous requests can be sent.</p><p>This speeds up processing for complex tasks, such as parsing a large number of pages.</p><p>Wide range of connection locations. Server proxies are usually associated with major cities and data centers, but mobile 3G/4G proxies allow for location changes down to populated areas and mobile operators, making such requests indistinguishable from those of regular clients.</p><p>Compatibility with private software. The ability to use mobile proxies depends on the functionality of programs and the presence of integration API modules in them.</p><p>Despite the advantages, such proxies also have certain disadvantages, such as high mobile traffic costs and potential network connection instability.</p><p>Mobile proxies are used for various tasks, such as arbitrage, marketing, promoting profiles on social networks, or for auto-registration of accounts (mass profile creation).</p>"
                    }
                ]
            },
            {
                "id": 15,
                "icon": "fa-solid fa-globe",
                "slug": "vpn",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "VPN",
                        "description": "Магазины с VPN",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "VPN",
                        "description": "Stores with VPN",
                        "text": ""
                    }
                ]
            },
            {
                "id": 16,
                "icon": "fa-brands fa-google",
                "slug": "google",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Google",
                        "description": "Аккаунты и услуги",
                        "text": "<p style=\"text-align: center; \"><b><br>Зачем люди покупают аккаунты Gmail</b></p><p>Аккаунты электронной почты имеют огромное значение в современном мире коммуникаций и интернет-бизнеса. Среди множества почтовых сервисов, одним из самых популярных и широко используемых является Gmail, предоставляемый Google. Интересно, что на рынке существует спрос на готовые аккаунты Gmail. Рассмотрим, почему люди обращаются к данной практике и каковы причины такого явления.</p><p><b>Маркетинг и реклама</b></p><p>Одной из основных причин может быть использование электронной почты в маркетинговых целях. Некоторые компании покупают готовые аккаунты Gmail для массовой отправки рекламных рассылок или информационных бюллетеней. Это может быть связано с попыткой достичь широкой аудитории или избежать фильтрации спама, которая иногда применяется к новым или малоиспользуемым аккаунтам.</p><p><b>Обход ограничений</b></p><p>Некоторые онлайн-сервисы или платформы устанавливают ограничения на количество создаваемых аккаунтов с одного IP-адреса или телефонного номера. Покупка готовых аккаунтов Gmail может помочь обойти эти ограничения и продолжить использование сервисов без препятствий.</p><p><b>Анонимность</b></p><p>В интернете анонимность играет важную роль. Некоторые пользователи покупают готовые аккаунты Gmail для совершения действий, требующих анонимности, таких как регистрация на некоторых веб-сайтах или форумах, или даже для защиты личных данных.</p><p><b>Резервные копии</b></p><p>Для некоторых пользователей важно иметь резервные копии своих электронных адресов. Приобретение готового аккаунта Gmail может стать одним из способов создания такой резервной копии, особенно если на аккаунте хранится важная информация, контакты или корреспонденция.</p><p><b>Покупка и продажа</b></p><p>Не исключено, что некоторые люди могут приобретать готовые аккаунты Gmail с целью последующей перепродажи. Это может быть частью бизнес-модели, связанной с торговлей аккаунтами или предоставлением услуг по их реализации.<br><br><br></p>"
                    },
                    {
                        "lang": "en",
                        "title": "Google",
                        "description": "Accounts and services",
                        "text": "<p>Why Do People Buy Gmail Accounts?</p><p>Email accounts hold immense significance in today's world of communication and internet business. Among the plethora of email services, one of the most popular and widely used is Gmail, provided by Google. Interestingly, there is a demand in the market for ready-made Gmail accounts. Let's explore why people resort to this practice and what the reasons behind it are.</p><p>Marketing and Advertising</p><p>One of the main reasons could be the utilization of email for marketing purposes. Some companies purchase ready-made Gmail accounts for mass sending of promotional campaigns or newsletters. This could be associated with attempting to reach a broad audience or to evade spam filtering, which is sometimes applied to new or infrequently used accounts.</p><p>Circumventing Restrictions</p><p>Certain online services or platforms impose restrictions on the number of accounts created from a single IP address or phone number. Purchasing ready-made Gmail accounts can help bypass these restrictions and continue using the services unhindered.</p><p>Anonymity</p><p>Anonymity plays a significant role on the internet. Some users buy ready-made Gmail accounts to perform actions requiring anonymity, such as registering on certain websites or forums, or even for protecting personal data.</p><p>Backup</p><p>For some users, having backups of their email addresses is important. Acquiring a ready-made Gmail account can be one way of creating such a backup, especially if the account holds crucial information, contacts, or correspondence.</p><p>Buying and Selling</p><p>It's possible that some individuals acquire ready-made Gmail accounts with the intention of reselling them later. This could be part of a business model related to trading accounts or providing services for their sale.</p>"
                    }
                ]
            },
            {
                "id": 17,
                "icon": "fab fa-steam",
                "slug": "steam",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Steam",
                        "description": "Аккаунты и услуги",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "Steam",
                        "description": "Accounts and services",
                        "text": ""
                    }
                ]
            },
            {
                "id": 18,
                "icon": "fa-solid fa-key",
                "slug": "software",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Software",
                        "description": "Лицензионные ключи",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "Software",
                        "description": "License keys",
                        "text": ""
                    }
                ]
            },
            {
                "id": 19,
                "icon": "fab fa-odnoklassniki",
                "slug": "odnoklassniki",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Odnoklassniki",
                        "description": "Аккаунты Ok.ru",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "Odnoklassniki",
                        "description": "Ok.ru accounts",
                        "text": ""
                    }
                ]
            },
            {
                "id": 20,
                "icon": "fab fa-twitter",
                "slug": "twitter",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "X-Twitter",
                        "description": "Аккаунты X-Twitter",
                        "text": "<div><strong>В наши дни аккаунты в социальных сетях становятся объектом коммерческой деятельности, аналогично целым пабликам или каналам.&nbsp;<br>Возможно, вы уже видели объявления о продаже аккаунтов в X-Twitter.&nbsp;<br></strong><br></div><div><strong>Давайте рассмотрим, почему они продаются и кто их покупает. Некоторые пользователи даже обращаются к администрации, предлагая деньги за новых подписчиков.<br></strong><br></div><div><strong>Зачем продаются аккаунты? Есть несколько причин. Некоторые люди хотят избавиться от лишних страниц в социальных сетях, а другие не видят смысла в ведении блога и желают хотя бы что-то получить за свои усилия. Также существуют предприниматели, которые систематически регистрируют аккаунты, используя программы для скрытия или изменения IP-адресов, и потом продают их через соответствующие площадки. Это могут быть студенты, ищущие дополнительный заработок.<br></strong><br></div><div><strong>Для чего покупают аккаунты в X-Twitter?&nbsp;<br></strong><br></div><div><strong>Во-первых, для личного использования. Это удобно тем, кто не хочет начинать с нуля и тратить время и деньги на привлечение подписчиков.&nbsp;<br></strong><br></div><div><strong>Во-вторых, для SEO-продвижения. Предполагается, что уже существующие аккаунты легче поднять в рейтинге, чем создавать новые.&nbsp;<br></strong><br></div><div><strong>Также аккаунты могут быть приобретены с целью последующей перепродажи с прибылью. Например, купив недорогой аккаунт и развив его, можно продать его за гораздо большую сумму.&nbsp;<br></strong><br></div><div><strong>И, наконец, аккаунты могут быть использованы для продвижения собственного бизнеса или рекламы.<br></strong><br></div><div><strong>Также стоит отметить, что аккаунты можно не только покупать, но и арендовать. Многие предприниматели предпочитают арендовать аккаунты для продвижения своих товаров или услуг через аккаунты других пользователей. Чем активнее и качественнее аккаунт, тем выше его стоимость.<br></strong><br></div><div><strong>Стоимость аккаунта в X-Twitter зависит от различных факторов, таких как количество подписчиков и активность аккаунта. Чем больше подписчиков и активнее аккаунт, тем выше его стоимость.<br></strong><br></div><div><strong>В нашем каталоге товаров Вы можете найти лучшее предложение по дешёвой цене и с гарантией качества.&nbsp;<br></strong><br></div>"
                    },
                    {
                        "lang": "en",
                        "title": "X-Twitter",
                        "description": "X-Twitter accounts",
                        "text": "<div><strong>In today's world, social media accounts are becoming commodities, akin to entire public pages or channels. You might have already seen advertisements for the sale of accounts on X-Twitter.<br></strong><br></div><div><strong>Let's explore why they are sold and who buys them. Some users even reach out to administration, offering money for new followers.<br></strong><br></div><div><strong>Why are accounts sold? There are several reasons. Some individuals want to rid themselves of excess social media pages, while others see no point in maintaining a blog and wish to gain something for their efforts. Additionally, there are entrepreneurs who systematically register accounts using programs to hide or change IP addresses, and then sell them through relevant platforms. These might be students seeking extra income.<br></strong><br></div><div><strong>Why do people buy accounts on X-Twitter?<br></strong><br></div><div><strong>Firstly, for personal use. It's convenient for those who don't want to start from scratch and spend time and money attracting followers.<br></strong><br></div><div><strong>Secondly, for SEO promotion. It's assumed that existing accounts are easier to rank than creating new ones.<br></strong><br></div><div><strong>Accounts can also be purchased for subsequent resale at a profit. For example, by buying a cheap account and developing it, one can sell it for a much higher price.<br></strong><br></div><div><strong>Finally, accounts can be used for promoting one's own business or advertising.<br></strong><br></div><div><strong>It's also worth noting that accounts can be not only purchased but also rented. Many entrepreneurs prefer to rent accounts to promote their products or services through other users' accounts. The more active and high-quality the account, the higher its value.<br></strong><br></div><div><strong>The cost of an account on X-Twitter depends on various factors such as the number of followers and the activity of the account. The more followers and active the account, the higher its value.<br></strong><br></div><div><strong>In our product catalog, you can find the best offer at a cheap price and with quality assurance.<br></strong><br></div>"
                    }
                ]
            },
            {
                "id": 21,
                "icon": "fa-solid fa-heart",
                "slug": "nakrutka",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Услуги накрутки",
                        "description": "Накрутка соц.сетей",
                        "text": "<div><b>Зачем нужна накрутка?</b></div><div><br></div><div>Стратегия продвижения в социальных сетях опирается на разнообразные метрики, объединяющие как качественные, так и количественные показатели. Пользователей привлекает не только контент, размещаемый на страницах, но и активность, проявляемая вокруг профиля. Конечно, никому не интересно заглядывать на страницы, где пустынно - без подписчиков, лайков или комментариев.</div><div>Увеличение числа подписчиков играет важную роль в определении успеха.</div><div><ul><li>Подобный рост делает профиль или сообщество более заметными и узнаваемыми, что в свою очередь:</li><li>Позволяет использовать социальные платформы для рекламы продуктов и услуг, продвижения собственного бренда;</li><li>Облегчает приглашение участников на мероприятия;</li><li>Создает возможности для монетизации профиля;</li><li>Привлекает внимание потенциальных рекламодателей и спонсоров;</li><li>Содействует раскрутке собственного имени и привлечению аудитории на блогерские каналы.</li></ul></div><div>Все вышеперечисленное действительно работает, но вместе с этим требует интересного и уникального контента, регулярных публикаций и активного взаимодействия с аудиторией.</div><div><b><br></b></div><div><b>Методы и способы накрутки.</b></div><div><br></div><div><ul><li>Существует несколько способов увеличения аудитории в социальных сетях. Они включают в себя:</li><li>Контент-маркетинг, который заключается в создании качественного и полезного контента, направленного на целевую аудиторию.</li><li>Проведение конкурсов и акций, которые способствуют увеличению числа подписчиков благодаря динамике, вовлечению аудитории и предоставлению приятных бонусов и призов.</li><li>Реклама, как быстрый, но затратный способ улучшения показателей. Это запуск рекламных кампаний в социальных сетях с целью расширения аудитории.</li><li>Искусственная накрутка, при помощи специальных сервисов, где можно купить подписчиков. Цена зависит от качества и количества добавляемых пользователей.</li></ul></div><div>Все эти методы достаточно эффективны, при условии правильного применения. Важно также помнить о качестве аудитории, а не только о ее количестве.</div><div><b><br></b></div><div><b>Что такое накрутка подписчиков?</b></div><div>Суть накрутки заключается в том, что пользователь привлекает к своему профилю большое количество подписчиков в короткий промежуток времени. Это приводит к значительному увеличению числа подписчиков на страницах авторов, блогеров и брендов, но не всегда отражает реальную популярность. Тем не менее, цифры имеют значение, так как:<br></div><div><ul><li>Помогают продвигаться на платформе и увеличивать охват аудитории;</li><li>Поднимают профиль в поисковой выдаче;</li><li>Привлекают внимание других пользователей.</li><li>Для увеличения числа подписчиков часто прибегают к специализированным сервисам, предлагающим услуги по накрутке. Однако многие из этих подписчиков могут быть ботами, а не реальными пользователями.</li></ul></div>"
                    },
                    {
                        "lang": "en",
                        "title": "Promotion",
                        "description": "of social networks",
                        "text": ""
                    }
                ]
            },
            {
                "id": 22,
                "icon": "fa-solid fa-basket-shopping",
                "slug": "avito",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "AVITO",
                        "description": "Аккаунты AVITO",
                        "text": "<p><b>&nbsp;Для чего люди покупают аккаунты на Avito и где можно найти верифицированный аккаунт на этой платформе?</b></p><p>Avito - это онлайн-сервис, позволяющий покупать и продавать товары. В последнее время он стал очень популярен, и все больше пользователей обращают внимание на функцию верификации профиля, которая подтверждает личность пользователя. Это способствует доверительным отношениям между покупателем и продавцом, так как верифицированный профиль гарантирует реальность пользователя.</p><p>Покупка готовых верифицированных аккаунтов позволяет быстро начать продажи, и спрос на такие аккаунты с подтвержденными документами растет. Аккаунт с давней датой регистрации имеет больше прав, например, показывается дата регистрации профиля, что может использоваться для накрутки отзывов и повышения доверия покупателей.</p><p>Для покупателя галочка верификации на профиле Avito значительна при сделках, требующих предоплату. Это свидетельство проверки сервисом Avito и увеличивает доверие к профилю.</p><p>Галочка верификации делает профиль более надежным для потенциальных покупателей и повышает конверсию, так как покупатели предпочитают выбирать продавцов с подтвержденным профилем.</p><p>Кроме того, галочка верификации помогает продавцам установить хорошую репутацию, что привлекает новых клиентов и удерживает существующих. Это способствует повышению доверия клиентов, увеличению конверсии и улучшению репутации.</p><p>Верификация профиля подтверждает, что пользователь реальный, что повышает доверие к сделкам или коммуникации с верифицированным профилем.&nbsp;</p><p>Возможность увеличить продажи на Avito является преимуществом верифицированного профиля, так как пользователи предпочитают таких продавцов, полагаясь на их надежность.&nbsp;</p><p>Увеличение репутации и доступ к дополнительным функциям также являются преимуществами верифицированного профиля на Avito, который можно приобрести через наш каталог товаров.</p><div><br></div>"
                    },
                    {
                        "lang": "en",
                        "title": "AVITO",
                        "description": "AVITO accounts",
                        "text": ""
                    }
                ]
            },
            {
                "id": 23,
                "icon": "fa-solid fa-cart-plus",
                "slug": "olx",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Аккаунты OLX",
                        "description": "Купить аккаунты",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "OLX Accounts",
                        "description": "Buy accounts",
                        "text": ""
                    }
                ]
            },
            {
                "id": 24,
                "icon": "fa-solid fa-share",
                "slug": "rassylki",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Услуги рассылки",
                        "description": "Заказать рассылку",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "Mailing services",
                        "description": "Order newsletter",
                        "text": ""
                    }
                ]
            },
            {
                "id": 25,
                "icon": "fa-solid fa-gamepad",
                "slug": "games",
                "translations": [
                    {
                        "lang": "ru",
                        "title": "Games",
                        "description": "Аккаунты к играм",
                        "text": ""
                    },
                    {
                        "lang": "en",
                        "title": "Games",
                        "description": "Buy at low price",
                        "text": ""
                    }
                ]
            }
        ]
    ],
    "message": null
}
 

Request      

GET api/v1/data/general/categories

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Курс доллара

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/data/rates/usd" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/data/rates/usd"
);

const headers = {
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/data/rates/usd';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/data/rates/usd'
headers = {
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "success": true,
    "data": [
        "76.467800000"
    ],
    "message": null
}
 

Request      

GET api/v1/data/rates/usd

Headers

Content-Type      

Example: application/json

Accept      

Example: application/json

Для покупателя

Баланс покупателя

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/buyer/balance" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/buyer/balance"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/buyer/balance';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/buyer/balance'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/buyer/balance

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Список товаров магазина

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/goods?limit=10&offset=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/goods"
);

const params = {
    "limit": "10",
    "offset": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/buyer/shop/"testshop"/goods';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/goods'
params = {
  'limit': '10',
  'offset': '0',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "data": [
        {
            "id": 1504036,
            "title_ru": "magnam mollitia deserunt",
            "title_en": "minus earum aut",
            "description_ru": "Nam autem sunt odio eveniet unde voluptas. Quas voluptatibus sit quis blanditiis.",
            "description_en": "Soluta ea ipsa et minima rem qui odit. Magni iste tempora qui maiores vitae. Commodi accusantium animi magni voluptate possimus ipsam qui. Ut tenetur eligendi quo rerum.",
            "slug": "good-illo-maiores-38547",
            "price": "498.78000000",
            "min_count": 7,
            "max_count": 14,
            "count_accounts": 0
        },
        {
            "id": 1504037,
            "title_ru": "et consequatur non",
            "title_en": "laborum repudiandae eius",
            "description_ru": "Ab earum animi et eligendi molestiae accusamus et. Possimus voluptatem veritatis nihil dolorem est. Ut debitis placeat aspernatur qui qui rerum dignissimos. Et hic quos excepturi aut cupiditate.",
            "description_en": "Reprehenderit delectus deleniti non dolores nulla minus iusto. Optio et et facilis quasi ab quas iste.",
            "slug": "good-sunt-magnam-75546",
            "price": "852.11000000",
            "min_count": 6,
            "max_count": 23,
            "count_accounts": 0
        }
    ]
}
 

Request      

GET api/v1/buyer/shop/{shop_alias}/goods

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых товаров. По умолчанию 200. Минимум: 1, Максимум: 200. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

Получить товар по ID

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/goods/1434" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/goods/1434"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/buyer/shop/"testshop"/goods/1434';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/goods/1434'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200):


{
    "data": {
        "id": 1504038,
        "title_ru": "voluptatum voluptatem rem",
        "title_en": "ipsa quibusdam quisquam",
        "description_ru": "Neque aut laboriosam et qui. Sint aut qui soluta ut ut quia ut. Iusto est architecto neque nobis iste.",
        "description_en": "Optio aut sint rem repudiandae qui. Illo quaerat doloribus quia et.",
        "slug": "good-saepe-eos-37603",
        "price": "954.45000000",
        "min_count": 6,
        "max_count": 43,
        "count_accounts": 0
    }
}
 

Request      

GET api/v1/buyer/shop/{shop_alias}/goods/{good_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

The ID of the good. Example: 1434

good   integer   

ID товара. Example: 1

Оформить заказ в магазине

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"good_id\": 1,
    \"count\": 5,
    \"discount_code\": \"DISCOUNT2025\"
}"
const url = new URL(
    "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "good_id": 1,
    "count": 5,
    "discount_code": "DISCOUNT2025"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/buyer/shop/"testshop"/shop-order';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'good_id' => 1,
            'count' => 5,
            'discount_code' => 'DISCOUNT2025',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order'
payload = {
    "good_id": 1,
    "count": 5,
    "discount_code": "DISCOUNT2025"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/buyer/shop/{shop_alias}/shop-order

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Body Parameters

good_id   integer   

The ID of the good to order. The id of an existing record in the goods table. Example: 1

count   integer   

The quantity of goods to order. Must be at least 1 and not exceed the available stock for the specified good. Поле value должно быть не менее 1. Example: 5

discount_code   string  optional  

An optional discount code that can be applied to the order. Must exist in either the discounts table (code field) or the referrals table (link_code or coupon_code fields). Example: DISCOUNT2025

Оплатить заказ с помощью RWS Pay

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order/123/pay" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order/123/pay"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/buyer/shop/"testshop"/shop-order/123/pay';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order/123/pay'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Example response (200, success):


{
    "success": true,
    "data": [
        {
            "order_id": 123,
            "status": "processing"
        }
    ],
    "message": "Order sent for processing"
}
 

Example response (400):


{
    "success": false,
    "message": "Order already paid"
}
 

Example response (400):


{
    "success": false,
    "message": "Insufficient funds"
}
 

Example response (404):


{
    "success": false,
    "message": "Order not found"
}
 

Request      

POST api/v1/buyer/shop/{shop_alias}/shop-order/{order_id}/pay

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

order_id   integer   

ID заказа. Example: 123

Проверить (получить) заказ в магазине

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order/ab" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order/ab"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/buyer/shop/"testshop"/shop-order/ab';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/buyer/shop/&quot;testshop&quot;/shop-order/ab'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/buyer/shop/{shop_alias}/shop-order/{order_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

order_id   string   

The ID of the order. Example: ab

Для поставщика

Получить список своих товаров

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods?limit=10&offset=0&filter=visible" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"limit\": 18,
    \"offset\": 69,
    \"filter\": \"hidden\"
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods"
);

const params = {
    "limit": "10",
    "offset": "0",
    "filter": "visible",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "limit": 18,
    "offset": 69,
    "filter": "hidden"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
            'filter' => 'visible',
        ],
        'json' => [
            'limit' => 18,
            'offset' => 69,
            'filter' => 'hidden',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods'
payload = {
    "limit": 18,
    "offset": 69,
    "filter": "hidden"
}
params = {
  'limit': '10',
  'offset': '0',
  'filter': 'visible',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/goods

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых товаров. По умолчанию 200. Минимум: 1, Максимум: 200. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

filter   string  optional  

Фильтр товаров. Возможные значения: all, visible, hidden. По умолчанию all. Example: visible

Body Parameters

limit   integer  optional  

Поле value должно быть не менее 1. Поле value должно быть не больше 200. Example: 18

offset   integer  optional  

Поле value должно быть не менее 0. Example: 69

filter   string  optional  

Example: hidden

Must be one of:
  • all
  • visible
  • hidden

Создать товар

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/create" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "good_category_id=7"\
    --form "title=Аккаунт Instagram"\
    --form "title_en=Instagram Account"\
    --form "description=Качественный аккаунт Instagram с подписчиками."\
    --form "description_en=Quality Instagram account with followers."\
    --form "price=100"\
    --form "min_count=1"\
    --form "max_count=100"\
    --form "icon=instagram_icon"\
    --form "top=0"\
    --form "product_page_enabled=1"\
    --form "slug=instagram-account"\
    --form "meta_title_ru=Купить аккаунт Instagram"\
    --form "meta_title_en=Buy Instagram Account"\
    --form "meta_description_ru=Купите аккаунт Instagram с доставкой."\
    --form "meta_description_en=Buy Instagram account with delivery."\
    --form "meta_keywords_ru=instagram, аккаунт, купить"\
    --form "meta_keywords_en=instagram, account, buy"\
    --form "page_description_ru=Подробное описание товара на русском."\
    --form "page_description_en=Detailed product description in English."\
    --form "image=@/tmp/phpeA7u13" \
    --form "file=@/tmp/phpEYNP8U" 
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/create"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('good_category_id', '7');
body.append('title', 'Аккаунт Instagram');
body.append('title_en', 'Instagram Account');
body.append('description', 'Качественный аккаунт Instagram с подписчиками.');
body.append('description_en', 'Quality Instagram account with followers.');
body.append('price', '100');
body.append('min_count', '1');
body.append('max_count', '100');
body.append('icon', 'instagram_icon');
body.append('top', '0');
body.append('product_page_enabled', '1');
body.append('slug', 'instagram-account');
body.append('meta_title_ru', 'Купить аккаунт Instagram');
body.append('meta_title_en', 'Buy Instagram Account');
body.append('meta_description_ru', 'Купите аккаунт Instagram с доставкой.');
body.append('meta_description_en', 'Buy Instagram account with delivery.');
body.append('meta_keywords_ru', 'instagram, аккаунт, купить');
body.append('meta_keywords_en', 'instagram, account, buy');
body.append('page_description_ru', 'Подробное описание товара на русском.');
body.append('page_description_en', 'Detailed product description in English.');
body.append('image', document.querySelector('input[name="image"]').files[0]);
body.append('file', document.querySelector('input[name="file"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'good_category_id',
                'contents' => '7'
            ],
            [
                'name' => 'title',
                'contents' => 'Аккаунт Instagram'
            ],
            [
                'name' => 'title_en',
                'contents' => 'Instagram Account'
            ],
            [
                'name' => 'description',
                'contents' => 'Качественный аккаунт Instagram с подписчиками.'
            ],
            [
                'name' => 'description_en',
                'contents' => 'Quality Instagram account with followers.'
            ],
            [
                'name' => 'price',
                'contents' => '100'
            ],
            [
                'name' => 'min_count',
                'contents' => '1'
            ],
            [
                'name' => 'max_count',
                'contents' => '100'
            ],
            [
                'name' => 'icon',
                'contents' => 'instagram_icon'
            ],
            [
                'name' => 'top',
                'contents' => '0'
            ],
            [
                'name' => 'product_page_enabled',
                'contents' => '1'
            ],
            [
                'name' => 'slug',
                'contents' => 'instagram-account'
            ],
            [
                'name' => 'meta_title_ru',
                'contents' => 'Купить аккаунт Instagram'
            ],
            [
                'name' => 'meta_title_en',
                'contents' => 'Buy Instagram Account'
            ],
            [
                'name' => 'meta_description_ru',
                'contents' => 'Купите аккаунт Instagram с доставкой.'
            ],
            [
                'name' => 'meta_description_en',
                'contents' => 'Buy Instagram account with delivery.'
            ],
            [
                'name' => 'meta_keywords_ru',
                'contents' => 'instagram, аккаунт, купить'
            ],
            [
                'name' => 'meta_keywords_en',
                'contents' => 'instagram, account, buy'
            ],
            [
                'name' => 'page_description_ru',
                'contents' => 'Подробное описание товара на русском.'
            ],
            [
                'name' => 'page_description_en',
                'contents' => 'Detailed product description in English.'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpeA7u13', 'r')
            ],
            [
                'name' => 'file',
                'contents' => fopen('/tmp/phpEYNP8U', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/create'
files = {
  'good_category_id': (None, '7'),
  'title': (None, 'Аккаунт Instagram'),
  'title_en': (None, 'Instagram Account'),
  'description': (None, 'Качественный аккаунт Instagram с подписчиками.'),
  'description_en': (None, 'Quality Instagram account with followers.'),
  'price': (None, '100'),
  'min_count': (None, '1'),
  'max_count': (None, '100'),
  'icon': (None, 'instagram_icon'),
  'top': (None, '0'),
  'product_page_enabled': (None, '1'),
  'slug': (None, 'instagram-account'),
  'meta_title_ru': (None, 'Купить аккаунт Instagram'),
  'meta_title_en': (None, 'Buy Instagram Account'),
  'meta_description_ru': (None, 'Купите аккаунт Instagram с доставкой.'),
  'meta_description_en': (None, 'Buy Instagram account with delivery.'),
  'meta_keywords_ru': (None, 'instagram, аккаунт, купить'),
  'meta_keywords_en': (None, 'instagram, account, buy'),
  'page_description_ru': (None, 'Подробное описание товара на русском.'),
  'page_description_en': (None, 'Detailed product description in English.'),
  'image': open('/tmp/phpeA7u13', 'rb'),
  'file': open('/tmp/phpEYNP8U', 'rb')}
payload = {
    "good_category_id": 7,
    "title": "Аккаунт Instagram",
    "title_en": "Instagram Account",
    "description": "Качественный аккаунт Instagram с подписчиками.",
    "description_en": "Quality Instagram account with followers.",
    "price": 100,
    "min_count": 1,
    "max_count": 100,
    "icon": "instagram_icon",
    "top": 0,
    "product_page_enabled": 1,
    "slug": "instagram-account",
    "meta_title_ru": "Купить аккаунт Instagram",
    "meta_title_en": "Buy Instagram Account",
    "meta_description_ru": "Купите аккаунт Instagram с доставкой.",
    "meta_description_en": "Buy Instagram account with delivery.",
    "meta_keywords_ru": "instagram, аккаунт, купить",
    "meta_keywords_en": "instagram, account, buy",
    "page_description_ru": "Подробное описание товара на русском.",
    "page_description_en": "Detailed product description in English."
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Request      

POST api/v1/supplier/shop/{shop_alias}/goods/create

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Body Parameters

good_category_id   string  optional  

ID категории платформы. The id of an existing record in the good_categories table. Example: 7

title   string   

Название товара (русский). Поле value должно быть не короче 5 символов. Поле value должно быть не длиннее 250 символов. Example: Аккаунт Instagram

title_en   string  optional  

Название товара (английский). Поле value должно быть не короче 5 символов. Поле value должно быть не длиннее 250 символов. Example: Instagram Account

description   string  optional  

Описание товара (русский). Поле value должно быть не короче 10 символов. Example: Качественный аккаунт Instagram с подписчиками.

description_en   string  optional  

Описание товара (английский). Поле value должно быть не короче 10 символов. Example: Quality Instagram account with followers.

price   number   

Цена товара (цена поставщика, без наценки). Поле value должно быть не менее 0.01. Поле value должно быть не больше 999999.99. Example: 100

min_count   integer   

Минимальное количество для покупки. Поле value должно быть не менее 1. Поле value должно быть не больше 99999. Example: 1

max_count   integer  optional  

Максимальное количество для покупки. Поле value должно быть не менее 1. Поле value должно быть не больше 99999. Example: 100

icon   string  optional  

Название иконки товара. Поле value должно быть не длиннее 100 символов. Example: instagram_icon

Must be one of:
  • email_icon
  • facebook_logo_icon
  • facebooklogosocials
  • instagram_icon_r
  • instagram_icon
  • oklassnikisocials
  • rosoftsocialsocia
  • sale_icon_r
  • sale_icon
  • free_vpn_icon
  • gamepad_icon
  • google_icon
  • icon_sale_s
  • iconfinder_icon_r
  • installation_application
  • telegram_icon_r
  • telegram_icon
  • tik_tok_icon_s
  • tik_tok_icon
  • twitter_icon
  • vk_icon_s
  • vpn3
  • discord_icon
  • chatgpt_icon
  • simcard
  • vk
  • odnoklassniki
  • fb
  • twitter
  • livejournal
  • instagram
  • youtube
  • skype
  • icq
  • likest
  • likest2
  • olike
  • turboliker
  • heart
  • vtope
  • email
  • mailru
  • gmail
  • hotmail
  • yandex
  • vine
  • blogger
  • google
  • google_plus
  • google_talk
  • myspace
  • linkedin
  • foursquare
  • pinterest
  • appstore
  • deviantart
  • dribble
  • dropbox
  • ebay
  • itunes
  • lastfm
  • opera
  • origin
  • psn
  • steam
  • 4game
  • gta5
  • wot
  • skydrive
  • soundcloud
  • spotifiy
  • fotostrana
  • loveplanet
  • mamba
  • nasimke
  • olx
image   file  optional  

optional Изображение товара (jpeg, png, gif, bmp, tiff, ico). Example: /tmp/phpeA7u13

file   file  optional  

optional Файл с аккаунтами (txt, csv). Example: /tmp/phpEYNP8U

top   string  optional  

Загрузить аккаунты в верх списка (0 - нет, 1 - да). Example: 0

Must be one of:
  • 0
  • 1
product_page_enabled   string  optional  

Включена ли страница товара (0 - нет, 1 - да). Example: 1

Must be one of:
  • 0
  • 1
slug   string  optional  

Уникальный слаг товара. Must match the regex /^[a-z0-9_-]+$/i. Поле value должно быть не длиннее 100 символов. Поле value должно быть не короче 3 символов. Example: instagram-account

meta_title_ru   string  optional  

Meta title (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Купить аккаунт Instagram

meta_title_en   string  optional  

Meta title (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Buy Instagram Account

meta_description_ru   string  optional  

Meta description (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Купите аккаунт Instagram с доставкой.

meta_description_en   string  optional  

Meta description (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Buy Instagram account with delivery.

meta_keywords_ru   string  optional  

Meta keywords (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: instagram, аккаунт, купить

meta_keywords_en   string  optional  

Meta keywords (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: instagram, account, buy

page_description_ru   string  optional  

Описание страницы товара (русский). Поле value должно быть не короче 10 символов. Example: Подробное описание товара на русском.

page_description_en   string  optional  

Описание страницы товара (английский). Поле value должно быть не короче 10 символов. Example: Detailed product description in English.

Получить информацию о товаре

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/goods/{good_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Редактировать товар

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: multipart/form-data" \
    --header "Accept: application/json" \
    --form "good_category_id=7"\
    --form "title=Аккаунт Instagram"\
    --form "title_en=Instagram Account"\
    --form "description=Качественный аккаунт Instagram с подписчиками."\
    --form "description_en=Quality Instagram account with followers."\
    --form "price=100"\
    --form "min_count=1"\
    --form "max_count=100"\
    --form "icon=instagram_icon"\
    --form "top=0"\
    --form "product_page_enabled=1"\
    --form "slug=instagram-account"\
    --form "meta_title_ru=Купить аккаунт Instagram"\
    --form "meta_title_en=Buy Instagram Account"\
    --form "meta_description_ru=Купите аккаунт Instagram с доставкой."\
    --form "meta_description_en=Buy Instagram account with delivery."\
    --form "meta_keywords_ru=instagram, аккаунт, купить"\
    --form "meta_keywords_en=instagram, account, buy"\
    --form "page_description_ru=Подробное описание товара на русском."\
    --form "page_description_en=Detailed product description in English."\
    --form "image=@/tmp/phpomfPPB" \
    --form "file=@/tmp/phpuWbOKO" 
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "multipart/form-data",
    "Accept": "application/json",
};

const body = new FormData();
body.append('good_category_id', '7');
body.append('title', 'Аккаунт Instagram');
body.append('title_en', 'Instagram Account');
body.append('description', 'Качественный аккаунт Instagram с подписчиками.');
body.append('description_en', 'Quality Instagram account with followers.');
body.append('price', '100');
body.append('min_count', '1');
body.append('max_count', '100');
body.append('icon', 'instagram_icon');
body.append('top', '0');
body.append('product_page_enabled', '1');
body.append('slug', 'instagram-account');
body.append('meta_title_ru', 'Купить аккаунт Instagram');
body.append('meta_title_en', 'Buy Instagram Account');
body.append('meta_description_ru', 'Купите аккаунт Instagram с доставкой.');
body.append('meta_description_en', 'Buy Instagram account with delivery.');
body.append('meta_keywords_ru', 'instagram, аккаунт, купить');
body.append('meta_keywords_en', 'instagram, account, buy');
body.append('page_description_ru', 'Подробное описание товара на русском.');
body.append('page_description_en', 'Detailed product description in English.');
body.append('image', document.querySelector('input[name="image"]').files[0]);
body.append('file', document.querySelector('input[name="file"]').files[0]);

fetch(url, {
    method: "POST",
    headers,
    body,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'multipart/form-data',
            'Accept' => 'application/json',
        ],
        'multipart' => [
            [
                'name' => 'good_category_id',
                'contents' => '7'
            ],
            [
                'name' => 'title',
                'contents' => 'Аккаунт Instagram'
            ],
            [
                'name' => 'title_en',
                'contents' => 'Instagram Account'
            ],
            [
                'name' => 'description',
                'contents' => 'Качественный аккаунт Instagram с подписчиками.'
            ],
            [
                'name' => 'description_en',
                'contents' => 'Quality Instagram account with followers.'
            ],
            [
                'name' => 'price',
                'contents' => '100'
            ],
            [
                'name' => 'min_count',
                'contents' => '1'
            ],
            [
                'name' => 'max_count',
                'contents' => '100'
            ],
            [
                'name' => 'icon',
                'contents' => 'instagram_icon'
            ],
            [
                'name' => 'top',
                'contents' => '0'
            ],
            [
                'name' => 'product_page_enabled',
                'contents' => '1'
            ],
            [
                'name' => 'slug',
                'contents' => 'instagram-account'
            ],
            [
                'name' => 'meta_title_ru',
                'contents' => 'Купить аккаунт Instagram'
            ],
            [
                'name' => 'meta_title_en',
                'contents' => 'Buy Instagram Account'
            ],
            [
                'name' => 'meta_description_ru',
                'contents' => 'Купите аккаунт Instagram с доставкой.'
            ],
            [
                'name' => 'meta_description_en',
                'contents' => 'Buy Instagram account with delivery.'
            ],
            [
                'name' => 'meta_keywords_ru',
                'contents' => 'instagram, аккаунт, купить'
            ],
            [
                'name' => 'meta_keywords_en',
                'contents' => 'instagram, account, buy'
            ],
            [
                'name' => 'page_description_ru',
                'contents' => 'Подробное описание товара на русском.'
            ],
            [
                'name' => 'page_description_en',
                'contents' => 'Detailed product description in English.'
            ],
            [
                'name' => 'image',
                'contents' => fopen('/tmp/phpomfPPB', 'r')
            ],
            [
                'name' => 'file',
                'contents' => fopen('/tmp/phpuWbOKO', 'r')
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1'
files = {
  'good_category_id': (None, '7'),
  'title': (None, 'Аккаунт Instagram'),
  'title_en': (None, 'Instagram Account'),
  'description': (None, 'Качественный аккаунт Instagram с подписчиками.'),
  'description_en': (None, 'Quality Instagram account with followers.'),
  'price': (None, '100'),
  'min_count': (None, '1'),
  'max_count': (None, '100'),
  'icon': (None, 'instagram_icon'),
  'top': (None, '0'),
  'product_page_enabled': (None, '1'),
  'slug': (None, 'instagram-account'),
  'meta_title_ru': (None, 'Купить аккаунт Instagram'),
  'meta_title_en': (None, 'Buy Instagram Account'),
  'meta_description_ru': (None, 'Купите аккаунт Instagram с доставкой.'),
  'meta_description_en': (None, 'Buy Instagram account with delivery.'),
  'meta_keywords_ru': (None, 'instagram, аккаунт, купить'),
  'meta_keywords_en': (None, 'instagram, account, buy'),
  'page_description_ru': (None, 'Подробное описание товара на русском.'),
  'page_description_en': (None, 'Detailed product description in English.'),
  'image': open('/tmp/phpomfPPB', 'rb'),
  'file': open('/tmp/phpuWbOKO', 'rb')}
payload = {
    "good_category_id": 7,
    "title": "Аккаунт Instagram",
    "title_en": "Instagram Account",
    "description": "Качественный аккаунт Instagram с подписчиками.",
    "description_en": "Quality Instagram account with followers.",
    "price": 100,
    "min_count": 1,
    "max_count": 100,
    "icon": "instagram_icon",
    "top": 0,
    "product_page_enabled": 1,
    "slug": "instagram-account",
    "meta_title_ru": "Купить аккаунт Instagram",
    "meta_title_en": "Buy Instagram Account",
    "meta_description_ru": "Купите аккаунт Instagram с доставкой.",
    "meta_description_en": "Buy Instagram account with delivery.",
    "meta_keywords_ru": "instagram, аккаунт, купить",
    "meta_keywords_en": "instagram, account, buy",
    "page_description_ru": "Подробное описание товара на русском.",
    "page_description_en": "Detailed product description in English."
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'multipart/form-data',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, files=files)
response.json()

Request      

POST api/v1/supplier/shop/{shop_alias}/goods/{good_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: multipart/form-data

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Body Parameters

good_category_id   string  optional  

ID категории платформы. The id of an existing record in the good_categories table. Example: 7

title   string   

Название товара (русский). Поле value должно быть не короче 5 символов. Поле value должно быть не длиннее 250 символов. Example: Аккаунт Instagram

title_en   string  optional  

Название товара (английский). Поле value должно быть не короче 5 символов. Поле value должно быть не длиннее 250 символов. Example: Instagram Account

description   string  optional  

Описание товара (русский). Поле value должно быть не короче 10 символов. Example: Качественный аккаунт Instagram с подписчиками.

description_en   string  optional  

Описание товара (английский). Поле value должно быть не короче 10 символов. Example: Quality Instagram account with followers.

price   number   

Цена товара (цена поставщика, без наценки). Поле value должно быть не менее 0.01. Поле value должно быть не больше 999999.99. Example: 100

min_count   integer   

Минимальное количество для покупки. Поле value должно быть не менее 1. Поле value должно быть не больше 99999. Example: 1

max_count   integer  optional  

Максимальное количество для покупки. Поле value должно быть не менее 1. Поле value должно быть не больше 99999. Example: 100

icon   string  optional  

Название иконки товара. Поле value должно быть не длиннее 100 символов. Example: instagram_icon

Must be one of:
  • email_icon
  • facebook_logo_icon
  • facebooklogosocials
  • instagram_icon_r
  • instagram_icon
  • oklassnikisocials
  • rosoftsocialsocia
  • sale_icon_r
  • sale_icon
  • free_vpn_icon
  • gamepad_icon
  • google_icon
  • icon_sale_s
  • iconfinder_icon_r
  • installation_application
  • telegram_icon_r
  • telegram_icon
  • tik_tok_icon_s
  • tik_tok_icon
  • twitter_icon
  • vk_icon_s
  • vpn3
  • discord_icon
  • chatgpt_icon
  • simcard
  • vk
  • odnoklassniki
  • fb
  • twitter
  • livejournal
  • instagram
  • youtube
  • skype
  • icq
  • likest
  • likest2
  • olike
  • turboliker
  • heart
  • vtope
  • email
  • mailru
  • gmail
  • hotmail
  • yandex
  • vine
  • blogger
  • google
  • google_plus
  • google_talk
  • myspace
  • linkedin
  • foursquare
  • pinterest
  • appstore
  • deviantart
  • dribble
  • dropbox
  • ebay
  • itunes
  • lastfm
  • opera
  • origin
  • psn
  • steam
  • 4game
  • gta5
  • wot
  • skydrive
  • soundcloud
  • spotifiy
  • fotostrana
  • loveplanet
  • mamba
  • nasimke
  • olx
image   file  optional  

optional Изображение товара (jpeg, png, gif, bmp, tiff, ico). Example: /tmp/phpomfPPB

file   file  optional  

optional Файл с аккаунтами (txt, csv). Example: /tmp/phpuWbOKO

top   string  optional  

Загрузить аккаунты в верх списка (0 - нет, 1 - да). Example: 0

Must be one of:
  • 0
  • 1
product_page_enabled   string  optional  

Включена ли страница товара (0 - нет, 1 - да). Example: 1

Must be one of:
  • 0
  • 1
slug   string  optional  

Уникальный слаг товара. Must match the regex /^[a-z0-9_-]+$/i. Поле value должно быть не длиннее 100 символов. Поле value должно быть не короче 3 символов. Example: instagram-account

meta_title_ru   string  optional  

Meta title (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Купить аккаунт Instagram

meta_title_en   string  optional  

Meta title (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Buy Instagram Account

meta_description_ru   string  optional  

Meta description (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Купите аккаунт Instagram с доставкой.

meta_description_en   string  optional  

Meta description (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Buy Instagram account with delivery.

meta_keywords_ru   string  optional  

Meta keywords (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: instagram, аккаунт, купить

meta_keywords_en   string  optional  

Meta keywords (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: instagram, account, buy

page_description_ru   string  optional  

Описание страницы товара (русский). Поле value должно быть не короче 10 символов. Example: Подробное описание товара на русском.

page_description_en   string  optional  

Описание страницы товара (английский). Поле value должно быть не короче 10 символов. Example: Detailed product description in English.

Удалить товар

requires authentication

Example request:
curl --request DELETE \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "DELETE",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1';
$response = $client->delete(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('DELETE', url, headers=headers)
response.json()

Request      

DELETE api/v1/supplier/shop/{shop_alias}/goods/{good_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Скрыть/показать товар

requires authentication

Example request:
curl --request PUT \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/toggle-visibility" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"hidden\": 1
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/toggle-visibility"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "hidden": 1
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1/toggle-visibility';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'hidden' => 1,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/toggle-visibility'
payload = {
    "hidden": 1
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Request      

PUT api/v1/supplier/shop/{shop_alias}/goods/{good_id}/toggle-visibility

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Body Parameters

hidden   integer   

Статус скрытия (0 - показать, 1 - скрыть). Example: 1

Получить актуальное количество аккаунтов товара

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/count" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/count"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1/accounts/count';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/count'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/goods/{good_id}/accounts/count

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Скачать аккаунты товара

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/download?limit=10&offset=0&remove=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"limit\": 9,
    \"offset\": 78,
    \"remove\": \"0\"
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/download"
);

const params = {
    "limit": "10",
    "offset": "0",
    "remove": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "limit": 9,
    "offset": 78,
    "remove": "0"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1/download';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
            'remove' => '0',
        ],
        'json' => [
            'limit' => 9,
            'offset' => 78,
            'remove' => '0',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/download'
payload = {
    "limit": 9,
    "offset": 78,
    "remove": "0"
}
params = {
  'limit': '10',
  'offset': '0',
  'remove': '0',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/goods/{good_id}/download

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых аккаунтов. По умолчанию 100. Минимум: 1, Максимум: 1000. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

remove   integer  optional  

Удалять аккаунты после скачивания. По умолчанию 0. Возможные значения: 0 или 1. Example: 0

Body Parameters

limit   integer  optional  

Поле value должно быть не менее 1. Поле value должно быть не больше 1000. Example: 9

offset   integer  optional  

Поле value должно быть не менее 0. Example: 78

remove   string   

Example: 0

Must be one of:
  • 0
  • 1

Загрузить аккаунты к товару

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/upload" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"accounts\": [
        \"zkkbb\"
    ],
    \"top\": 0
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/upload"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "accounts": [
        "zkkbb"
    ],
    "top": 0
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1/upload';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'accounts' => [
                'zkkbb',
            ],
            'top' => 0,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/upload'
payload = {
    "accounts": [
        "zkkbb"
    ],
    "top": 0
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/supplier/shop/{shop_alias}/goods/{good_id}/upload

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Body Parameters

accounts   string[]   

Поле value должно быть не длиннее 10000 символов.

top   string   

Загрузить аккаунты в верх списка (0 - нет, 1 - да). Example: 0

Must be one of:
  • 0
  • 1

Перемешать аккаунты и удалить дубликаты

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/mix" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/mix"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1/accounts/mix';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/mix'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/supplier/shop/{shop_alias}/goods/{good_id}/accounts/mix

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Удалить конкретные аккаунты по содержимому

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/delete" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"accounts\": [
        \"nyyozxeululvqzws\"
    ]
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/delete"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "accounts": [
        "nyyozxeululvqzws"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1/accounts/delete';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'accounts' => [
                'nyyozxeululvqzws',
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/delete'
payload = {
    "accounts": [
        "nyyozxeululvqzws"
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/supplier/shop/{shop_alias}/goods/{good_id}/accounts/delete

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Body Parameters

accounts   string[]  optional  

This field is required when accounts is present. Поле value должно быть не длиннее 10000 символов.

Проверить наличие конкретного аккаунта в товарных остатках

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/check" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"account\": \"login1:password1\"
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/check"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "account": "login1:password1"
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/goods/1/accounts/check';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'account' => 'login1:password1',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/goods/1/accounts/check'
payload = {
    "account": "login1:password1"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/supplier/shop/{shop_alias}/goods/{good_id}/accounts/check

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

ID товара. Example: 1

Body Parameters

account   string   

Строка с аккаунтом для проверки (например, login:password). Поле value должно быть не длиннее 10000 символов. Example: login1:password1

Массовая загрузка аккаунтов на несколько товаров

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/several-goods/accounts/upload" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"goods\": [
        {
            \"id\": 1,
            \"accounts\": [
                \"login1:password1\",
                \"login2:password2\"
            ],
            \"top\": \"1\"
        },
        {
            \"id\": 2,
            \"accounts\": [
                \"login3:password3\"
            ],
            \"top\": 1
        }
    ]
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/several-goods/accounts/upload"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "goods": [
        {
            "id": 1,
            "accounts": [
                "login1:password1",
                "login2:password2"
            ],
            "top": "1"
        },
        {
            "id": 2,
            "accounts": [
                "login3:password3"
            ],
            "top": 1
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/several-goods/accounts/upload';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'goods' => [
                [
                    'id' => 1,
                    'accounts' => [
                        'login1:password1',
                        'login2:password2',
                    ],
                    'top' => '1',
                ],
                [
                    'id' => 2,
                    'accounts' => [
                        'login3:password3',
                    ],
                    'top' => 1,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/several-goods/accounts/upload'
payload = {
    "goods": [
        {
            "id": 1,
            "accounts": [
                "login1:password1",
                "login2:password2"
            ],
            "top": "1"
        },
        {
            "id": 2,
            "accounts": [
                "login3:password3"
            ],
            "top": 1
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/supplier/shop/{shop_alias}/several-goods/accounts/upload

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Body Parameters

goods   object[]   

Массив объектов с товарами и аккаунтами. Поле value должно содержать не менее 1 элементов.

id   integer   

The id of an existing record in the goods table. Example: 20

accounts   string[]   

Поле value должно быть не длиннее 10000 символов.

top   string   

Example: 1

Must be one of:
  • 0
  • 1

Получить список заказов

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/orders?limit=10&offset=0&filter=completed&search=%22test%40example.com%22" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"limit\": 10,
    \"offset\": 88,
    \"filter\": \"pending\",
    \"search\": \"wonvp\"
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/orders"
);

const params = {
    "limit": "10",
    "offset": "0",
    "filter": "completed",
    "search": ""test@example.com"",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "limit": 10,
    "offset": 88,
    "filter": "pending",
    "search": "wonvp"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/orders';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
            'filter' => 'completed',
            'search' => '"test@example.com"',
        ],
        'json' => [
            'limit' => 10,
            'offset' => 88,
            'filter' => 'pending',
            'search' => 'wonvp',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/orders'
payload = {
    "limit": 10,
    "offset": 88,
    "filter": "pending",
    "search": "wonvp"
}
params = {
  'limit': '10',
  'offset': '0',
  'filter': 'completed',
  'search': '"test@example.com"',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых заказов. По умолчанию 50. Минимум: 1, Максимум: 200. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

filter   string  optional  

Фильтр заказов. Возможные значения: all, pending, completed. По умолчанию all. Example: completed

search   string  optional  

Поиск по ID заказа, email, telegram, paymethod. Example: "test@example.com"

Body Parameters

limit   integer  optional  

Поле value должно быть не менее 1. Поле value должно быть не больше 200. Example: 10

offset   integer  optional  

Поле value должно быть не менее 0. Example: 88

filter   string  optional  

Example: pending

Must be one of:
  • all
  • pending
  • completed
search   string  optional  

Поле value должно быть не длиннее 255 символов. Example: wonvp

Получить детали заказа (получить проданные аккаунты)

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/orders/1" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/orders/1"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/orders/1';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/orders/1'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/orders/{order_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

order_id   integer   

ID заказа. Example: 1

Статистика продаж по товарам (кол-во продаж, сумма)

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/statistics/goods-sales?limit=10&offset=0&period=month" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"limit\": 21,
    \"offset\": 65,
    \"period\": \"week\"
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/statistics/goods-sales"
);

const params = {
    "limit": "10",
    "offset": "0",
    "period": "month",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "limit": 21,
    "offset": 65,
    "period": "week"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/statistics/goods-sales';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
            'period' => 'month',
        ],
        'json' => [
            'limit' => 21,
            'offset' => 65,
            'period' => 'week',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/statistics/goods-sales'
payload = {
    "limit": 21,
    "offset": 65,
    "period": "week"
}
params = {
  'limit': '10',
  'offset': '0',
  'period': 'month',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/statistics/goods-sales

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых товаров. По умолчанию 50. Минимум: 1, Максимум: 200. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

period   string  optional  

Период для статистики. Возможные значения: today, week, month, all. По умолчанию all. Example: month

Body Parameters

limit   integer  optional  

Поле value должно быть не менее 1. Поле value должно быть не больше 200. Example: 21

offset   integer  optional  

Поле value должно быть не менее 0. Example: 65

period   string  optional  

Example: week

Must be one of:
  • today
  • week
  • month
  • all

Общая статистика продаж

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/statistics/overall?period=month" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"period\": \"week\"
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/statistics/overall"
);

const params = {
    "period": "month",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "period": "week"
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/statistics/overall';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'period' => 'month',
        ],
        'json' => [
            'period' => 'week',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/statistics/overall'
payload = {
    "period": "week"
}
params = {
  'period': 'month',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/statistics/overall

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

period   string  optional  

Период для статистики. Возможные значения: today, week, month, all. По умолчанию all. Example: month

Body Parameters

period   string  optional  

Example: week

Must be one of:
  • today
  • week
  • month
  • all

Получить текущий баланс поставщика

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/balance" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/balance"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/balance';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/balance'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/balance

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Получить историю выплат

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/balance/payout-history?limit=10&offset=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/balance/payout-history"
);

const params = {
    "limit": "10",
    "offset": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/balance/payout-history';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/balance/payout-history'
params = {
  'limit': '10',
  'offset': '0',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/balance/payout-history

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых записей. По умолчанию 50. Минимум: 1, Максимум: 200. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

Получить категории / подкатегории магазина

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/categories?limit=10&offset=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"limit\": 17,
    \"offset\": 27
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/categories"
);

const params = {
    "limit": "10",
    "offset": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "limit": 17,
    "offset": 27
};

fetch(url, {
    method: "GET",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/categories';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
        ],
        'json' => [
            'limit' => 17,
            'offset' => 27,
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/categories'
payload = {
    "limit": 17,
    "offset": 27
}
params = {
  'limit': '10',
  'offset': '0',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, json=payload, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/supplier/shop/{shop_alias}/categories

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых категорий. По умолчанию 200. Минимум: 1, Максимум: 200. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

Body Parameters

limit   integer  optional  

Поле value должно быть не менее 1. Поле value должно быть не больше 200. Example: 17

offset   integer  optional  

Поле value должно быть не менее 0. Example: 27

Обновить webhook URL

requires authentication

Настройка URL'ов для получения уведомлений о событиях (продажа товара, возврат товара).

Как работают webhook'и:

  1. При настройке webhook URL'ов система будет отправлять HTTP POST запросы на указанные адреса при соответствующих событиях.
  2. Webhook'и отправляются асинхронно через очередь задач.
  3. Система автоматически повторяет отправку при ошибках по следующему расписанию:
    • 1-я попытка: через 1 минуту
    • 2-я попытка: через 1 минуту
    • 3-я попытка: через 30 минут
    • 4-я попытка: через 1 час
    • 5-я попытка: через 5 часов

Формат данных webhook'а при продаже:

{
  "event": "sale",
  "order_id": 123,
  "good_id": 789,
  "good_title": "Название товара",
  "quantity": 5,
  "supplier_price": 100.00,
  "total_amount": 500.00,
  "accounts": ["login1:password1", "login2:password2", ...],
  "timestamp": "2025-01-15T10:30:00Z"
}

Формат данных webhook'а при возврате:

{
  "event": "return",
  "return_id": 123,
  "order_id": 456,
  "order_good_id": 789,
  "good_id": 101,
  "good_title": "Название товара",
  "quantity": 2,
  "returned_amount": 200.00,
  "accounts": ["login1:password1", "login2:password2"],
  "timestamp": "2025-01-15T10:30:00Z"
}

Формат правильного ответа на webhook:

Ваш сервер должен вернуть HTTP статус 200-299 и JSON ответ следующего формата:

{
  "success": true
}

Важно:

Пример обработки webhook'а на вашем сервере (PHP):

<?php
$data = json_decode(file_get_contents('php://input'), true);

// Обработка данных
if ($data['event'] === 'sale') {
    // Обработка продажи
    $orderId = $data['order_id'];
    $accounts = $data['accounts'];
    // ... ваша логика
}

// Обязательно верните правильный ответ
header('Content-Type: application/json');
http_response_code(200);
echo json_encode(['success' => true]);

Пример обработки webhook'а на вашем сервере (Node.js/Express):

app.post('/webhook/sale', express.json(), (req, res) => {
  const data = req.body;

  // Обработка данных
  if (data.event === 'sale') {
    const orderId = data.order_id;
    const accounts = data.accounts;
    // ... ваша логика
  }

  // Обязательно верните правильный ответ
  res.status(200).json({ success: true });
});
Example request:
curl --request PUT \
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/webhook" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"webhook_sale_url\": \"https:\\/\\/example.com\\/webhook\\/sale\",
    \"webhook_return_url\": \"https:\\/\\/example.com\\/webhook\\/return\"
}"
const url = new URL(
    "https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/webhook"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "webhook_sale_url": "https:\/\/example.com\/webhook\/sale",
    "webhook_return_url": "https:\/\/example.com\/webhook\/return"
};

fetch(url, {
    method: "PUT",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/supplier/shop/"testshop"/webhook';
$response = $client->put(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'webhook_sale_url' => 'https://example.com/webhook/sale',
            'webhook_return_url' => 'https://example.com/webhook/return',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/supplier/shop/&quot;testshop&quot;/webhook'
payload = {
    "webhook_sale_url": "https:\/\/example.com\/webhook\/sale",
    "webhook_return_url": "https:\/\/example.com\/webhook\/return"
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('PUT', url, headers=headers, json=payload)
response.json()

Request      

PUT api/v1/supplier/shop/{shop_alias}/webhook

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Body Parameters

webhook_sale_url   string  optional  

Webhook URL для уведомлений о продаже. Must be a valid URL. Поле value должно быть не длиннее 500 символов. Example: https://example.com/webhook/sale

webhook_return_url   string  optional  

Webhook URL для уведомлений о возврате. Must be a valid URL. Поле value должно быть не длиннее 500 символов. Example: https://example.com/webhook/return

Для продавца

Список магазинов

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/all" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/all"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/all';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/all'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200, success):


{
    "success": true,
    "data": [
        [
            {
                "id": 69,
                "name": "test",
                "time_payed": "2016-11-14 23:37:08",
                "active": 0,
                "block_reason": null,
                "setting": {
                    "currency": "rub"
                },
                "domains": []
            }
        ]
    ],
    "message": null
}
 

Request      

GET api/v1/shop/all

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Баланс продавца

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/balance" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/balance"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/balance';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/balance'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200, success):


{
    "success": true,
    "data": 2500.75,
    "message": null
}
 

Request      

GET api/v1/shop/balance

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

Информация о магазине

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/shop/{shop_alias}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Список заказов

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;/orders?limit=10&offset=68&order_dir=%22asc%22" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/orders"
);

const params = {
    "limit": "10",
    "offset": "68",
    "order_dir": ""asc"",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/orders';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '68',
            'order_dir' => '"asc"',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/orders'
params = {
  'limit': '10',
  'offset': '68',
  'order_dir': '"asc"',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/shop/{shop_alias}/orders

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Количество записей (default: 10) Example: 10

offset   integer  optional  

Поле value должно быть не менее 0. Example: 68

order_dir   string  optional  

Направление сортировки (default: desc). Example: "asc"

Список категорий магазина

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;/categories?limit=15&offset=66" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/categories"
);

const params = {
    "limit": "15",
    "offset": "66",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/categories';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '15',
            'offset' => '66',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/categories'
params = {
  'limit': '15',
  'offset': '66',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/shop/{shop_alias}/categories

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Поле value должно быть не менее 1. Поле value должно быть не больше 200. Example: 15

offset   integer  optional  

Поле value должно быть не менее 0. Example: 66

Список страниц

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;/pages" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/pages"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/pages';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/pages'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/shop/{shop_alias}/pages

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Список товаров

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods?limit=10&offset=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods"
);

const params = {
    "limit": "10",
    "offset": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/goods';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods'
params = {
  'limit': '10',
  'offset': '0',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (200):


{
    "data": [
        {
            "id": 1504034,
            "shop_category_id": 22637,
            "platform_category_id": null,
            "title_ru": "qui fugiat consectetur",
            "title_en": "debitis sed labore",
            "description_ru": "Reprehenderit placeat deleniti quidem labore corrupti. Consequatur eum tempore accusantium libero ex. Voluptatem repellat ratione dolores enim exercitationem. Et dolor ratione sit ab eligendi voluptas laudantium. Unde sapiente qui consequatur reprehenderit voluptas perferendis.",
            "description_en": "Sed pariatur quidem at et reiciendis aut rerum. Asperiores necessitatibus fugiat asperiores hic. Et sint velit aut voluptate hic earum unde quasi.",
            "meta_title_ru": "Voluptatibus esse doloremque hic placeat.",
            "meta_title_en": "Optio ea porro dolorem et consequatur itaque.",
            "meta_description_ru": "Aut odit aut illo sapiente cupiditate ut minima eligendi architecto fugiat.",
            "meta_description_en": "Unde quia cumque ipsa explicabo corporis soluta explicabo aliquam corrupti.",
            "meta_keywords_ru": "ut sed doloremque aut excepturi",
            "meta_keywords_en": "quaerat non ipsam odit sed",
            "slug": "good-illum-occaecati-98292",
            "price": "746.65000000",
            "min_count": 3,
            "max_count": 91,
            "icon": null,
            "deleted": 0,
            "hidden": 1,
            "position": 8,
            "product_page_enabled": 1,
            "page_description_ru": "Deleniti ea quo vel aspernatur. Et qui sequi blanditiis laudantium doloremque et corporis. Cumque voluptate eos quasi voluptatibus.",
            "page_description_en": "Perspiciatis illo unde non facilis et inventore quia. Incidunt assumenda omnis qui veniam vero. Consequatur nemo corrupti quaerat nemo rem laudantium quibusdam.",
            "count_accounts": 0,
            "moderation_status": "approved",
            "moderation_note": null
        },
        {
            "id": 1504035,
            "shop_category_id": 22638,
            "platform_category_id": null,
            "title_ru": "qui reiciendis nobis",
            "title_en": "ut ut eaque",
            "description_ru": "Consequuntur suscipit labore ipsam esse qui vel. Consectetur accusantium repudiandae labore est natus. Expedita molestiae et quo error aliquam quisquam et.",
            "description_en": "Vel impedit culpa dolores autem ut voluptatem dolorem rem. Dolorem ratione aut ut officiis. Repudiandae a enim iure sapiente odio velit in. Molestiae repellat accusantium cupiditate qui architecto facere.",
            "meta_title_ru": "Ut fugit enim qui qui ullam.",
            "meta_title_en": "Cupiditate minus qui qui sed autem et.",
            "meta_description_ru": "Voluptates ipsam sint sed numquam tempora reiciendis magni facere et magnam molestias numquam qui.",
            "meta_description_en": "Unde consequatur excepturi ut et fugiat et delectus magnam fugiat.",
            "meta_keywords_ru": "nobis consequatur nostrum sint nam",
            "meta_keywords_en": "illum exercitationem saepe tempora at",
            "slug": "good-voluptatem-quia-suscipit-20818",
            "price": "149.43000000",
            "min_count": 7,
            "max_count": 89,
            "icon": null,
            "deleted": 0,
            "hidden": 0,
            "position": 36,
            "product_page_enabled": 1,
            "page_description_ru": "Quam dolores rerum ipsa eligendi nisi. Quis atque iste doloribus qui culpa atque. Quas quaerat temporibus est velit maiores maxime numquam. Tenetur sit occaecati eum numquam aut vero. Sed delectus fugit illo quo facere.",
            "page_description_en": "Corporis nostrum eius est dolor eos veritatis recusandae. Accusantium et eos porro sed ratione sequi hic. Voluptas voluptatem et culpa distinctio et.",
            "count_accounts": 0,
            "moderation_status": "approved",
            "moderation_note": null
        }
    ]
}
 

Request      

GET api/v1/shop/{shop_alias}/goods

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых товаров. По умолчанию 200. Минимум: 1, Максимум: 200. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

Добавить товар

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/create" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"shop_category_id\": 3,
    \"platform_category_id\": 7,
    \"title_ru\": \"Смартфон\",
    \"title_en\": \"Smartphone\",
    \"description_ru\": \"Лучший смартфон на рынке с топовыми характеристиками.\",
    \"description_en\": \"The best smartphone on the market with top specs.\",
    \"meta_title_ru\": \"Смартфон – купить недорого\",
    \"meta_title_en\": \"Smartphone – buy cheap\",
    \"meta_description_ru\": \"Купите смартфон с доставкой по всей России.\",
    \"meta_description_en\": \"Buy a smartphone with worldwide shipping.\",
    \"meta_keywords_ru\": \"смартфон, телефон, гаджет\",
    \"meta_keywords_en\": \"smartphone, phone, gadget\",
    \"slug\": \"smartphone-x100\",
    \"price\": 999.99,
    \"min_count\": 1,
    \"max_count\": 100,
    \"icon\": \"email_icon\",
    \"deleted\": 0,
    \"hidden\": 0,
    \"position\": 1,
    \"product_page_enabled\": 1,
    \"page_description_ru\": \"Подробное описание товара на русском.\",
    \"page_description_en\": \"Detailed product description in English.\"
}"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/create"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "shop_category_id": 3,
    "platform_category_id": 7,
    "title_ru": "Смартфон",
    "title_en": "Smartphone",
    "description_ru": "Лучший смартфон на рынке с топовыми характеристиками.",
    "description_en": "The best smartphone on the market with top specs.",
    "meta_title_ru": "Смартфон – купить недорого",
    "meta_title_en": "Smartphone – buy cheap",
    "meta_description_ru": "Купите смартфон с доставкой по всей России.",
    "meta_description_en": "Buy a smartphone with worldwide shipping.",
    "meta_keywords_ru": "смартфон, телефон, гаджет",
    "meta_keywords_en": "smartphone, phone, gadget",
    "slug": "smartphone-x100",
    "price": 999.99,
    "min_count": 1,
    "max_count": 100,
    "icon": "email_icon",
    "deleted": 0,
    "hidden": 0,
    "position": 1,
    "product_page_enabled": 1,
    "page_description_ru": "Подробное описание товара на русском.",
    "page_description_en": "Detailed product description in English."
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/goods/create';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'shop_category_id' => 3,
            'platform_category_id' => 7,
            'title_ru' => 'Смартфон',
            'title_en' => 'Smartphone',
            'description_ru' => 'Лучший смартфон на рынке с топовыми характеристиками.',
            'description_en' => 'The best smartphone on the market with top specs.',
            'meta_title_ru' => 'Смартфон – купить недорого',
            'meta_title_en' => 'Smartphone – buy cheap',
            'meta_description_ru' => 'Купите смартфон с доставкой по всей России.',
            'meta_description_en' => 'Buy a smartphone with worldwide shipping.',
            'meta_keywords_ru' => 'смартфон, телефон, гаджет',
            'meta_keywords_en' => 'smartphone, phone, gadget',
            'slug' => 'smartphone-x100',
            'price' => 999.99,
            'min_count' => 1,
            'max_count' => 100,
            'icon' => 'email_icon',
            'deleted' => 0,
            'hidden' => 0,
            'position' => 1,
            'product_page_enabled' => 1,
            'page_description_ru' => 'Подробное описание товара на русском.',
            'page_description_en' => 'Detailed product description in English.',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/create'
payload = {
    "shop_category_id": 3,
    "platform_category_id": 7,
    "title_ru": "Смартфон",
    "title_en": "Smartphone",
    "description_ru": "Лучший смартфон на рынке с топовыми характеристиками.",
    "description_en": "The best smartphone on the market with top specs.",
    "meta_title_ru": "Смартфон – купить недорого",
    "meta_title_en": "Smartphone – buy cheap",
    "meta_description_ru": "Купите смартфон с доставкой по всей России.",
    "meta_description_en": "Buy a smartphone with worldwide shipping.",
    "meta_keywords_ru": "смартфон, телефон, гаджет",
    "meta_keywords_en": "smartphone, phone, gadget",
    "slug": "smartphone-x100",
    "price": 999.99,
    "min_count": 1,
    "max_count": 100,
    "icon": "email_icon",
    "deleted": 0,
    "hidden": 0,
    "position": 1,
    "product_page_enabled": 1,
    "page_description_ru": "Подробное описание товара на русском.",
    "page_description_en": "Detailed product description in English."
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/shop/{shop_alias}/goods/create

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Body Parameters

shop_category_id   string  optional  

ID категории магазина. The id of an existing record in the shop_cats table. Example: 3

platform_category_id   string  optional  

ID категории платформы. The id of an existing record in the good_categories table. Example: 7

title_ru   string   

Название товара (русский). Поле value должно быть не короче 5 символов. Поле value должно быть не длиннее 250 символов. Example: Смартфон

title_en   string  optional  

Название товара (английский). Поле value должно быть не короче 5 символов. Поле value должно быть не длиннее 250 символов. Example: Smartphone

description_ru   string   

Описание товара (русский). Поле value должно быть не короче 100 символов. Example: Лучший смартфон на рынке с топовыми характеристиками.

description_en   string  optional  

Описание товара (английский). Поле value должно быть не короче 100 символов. Example: The best smartphone on the market with top specs.

meta_title_ru   string   

Meta title (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Смартфон – купить недорого

meta_title_en   string  optional  

Meta title (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Smartphone – buy cheap

meta_description_ru   string   

Meta description (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Купите смартфон с доставкой по всей России.

meta_description_en   string  optional  

Meta description (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: Buy a smartphone with worldwide shipping.

meta_keywords_ru   string   

Meta keywords (русский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: смартфон, телефон, гаджет

meta_keywords_en   string  optional  

Meta keywords (английский). Поле value должно быть не короче 10 символов. Поле value должно быть не длиннее 270 символов. Example: smartphone, phone, gadget

slug   string  optional  

Уникальный слаг товара. Must match the regex /^[a-z0-9_-]+$/i. Поле value должно быть не длиннее 100 символов. Поле value должно быть не короче 3 символов. Example: smartphone-x100

price   number   

Цена товара. Поле value должно быть не менее 1. Поле value должно быть не больше 999999.99. Example: 999.99

min_count   integer   

Минимальное количество для покупки. Поле value должно быть не менее 1. Поле value должно быть не больше 99999. Example: 1

max_count   integer   

Максимальное количество для покупки. Поле value должно быть не менее 1. Поле value должно быть не больше 99999. Example: 100

icon   string  optional  

Название иконки товара, есть отдельный метод получения иконок. Поле value должно быть не длиннее 100 символов. Example: email_icon

deleted   string   

Статус удаления (0 - активный, 1 - удалённый). Example: 0

Must be one of:
  • 0
  • 1
hidden   string   

Скрыть товар (0 - нет, 1 - да). Example: 0

Must be one of:
  • 0
  • 1
position   integer   

Позиция товара в списке. Поле value должно быть не менее 1. Поле value должно быть не больше 99999. Example: 1

product_page_enabled   string   

Включена ли страница товара (0 - нет, 1 - да). Example: 1

Must be one of:
  • 0
  • 1
page_description_ru   string  optional  

Описание страницы товара (русский). This field is required when product_page_enabled is 1. Поле value должно быть не короче 100 символов. Example: Подробное описание товара на русском.

page_description_en   string  optional  

Описание страницы товара (английский). Поле value должно быть не короче 100 символов. Example: Detailed product description in English.

Информация о товаре

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/goods/1434';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/shop/{shop_alias}/goods/{good_id}

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

The ID of the good. Example: 1434

Количество аккаунтов товара

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/accounts/count" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/accounts/count"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/goods/1434/accounts/count';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/accounts/count'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/shop/{shop_alias}/goods/{good_id}/accounts/count

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

The ID of the good. Example: 1434

Получить аккаунты товара

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/download?limit=10&offset=0&remove=0" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/download"
);

const params = {
    "limit": "10",
    "offset": "0",
    "remove": "0",
};
Object.keys(params)
    .forEach(key => url.searchParams.append(key, params[key]));

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/goods/1434/download';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'query' => [
            'limit' => '10',
            'offset' => '0',
            'remove' => '0',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/download'
params = {
  'limit': '10',
  'offset': '0',
  'remove': '0',
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers, params=params)
response.json()

Example response (401):

Show headers
cache-control: no-cache, private
content-type: application/json
access-control-allow-origin: *
 

{
    "message": "Unauthenticated."
}
 

Request      

GET api/v1/shop/{shop_alias}/goods/{good_id}/download

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

The ID of the good. Example: 1434

Query Parameters

limit   integer  optional  

Лимит на количество возвращаемых товаров. По умолчанию 100. Минимум: 1, Максимум: 1000. Example: 10

offset   integer  optional  

Смещение для пагинации. По умолчанию 0. Минимум: 0. Example: 0

remove   integer  optional  

Удалять аккаунты. По умолчанию 0. Возможные значения: 0 или 1. Example: 0

Добавить аккаунты к товару

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/upload" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"top\": 0,
    \"accounts\": [
        \"user123\"
    ]
}"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/upload"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "top": 0,
    "accounts": [
        "user123"
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/goods/1434/upload';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'top' => 0,
            'accounts' => [
                'user123',
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/upload'
payload = {
    "top": 0,
    "accounts": [
        "user123"
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/shop/{shop_alias}/goods/{good_id}/upload

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

The ID of the good. Example: 1434

Body Parameters

top   integer  optional  

Загрузить аккаунты в вехр списка. По умолчанию 0. Возможные значения: 0 или 1. Example: 0

accounts   string[]  optional  

Каждый элемент массива accounts – строка длиной до 10 000 символов. Поле value должно быть не длиннее 10000 символов.

Перемешать аккаунты и удалить дубли

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/accounts/mix" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/accounts/mix"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "POST",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/goods/1434/accounts/mix';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/goods/1434/accounts/mix'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers)
response.json()

Request      

POST api/v1/shop/{shop_alias}/goods/{good_id}/accounts/mix

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

good_id   integer   

The ID of the good. Example: 1434

Добавить аккаунты к товарам

requires authentication

Example request:
curl --request POST \
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/several-goods/accounts/upload" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json" \
    --data "{
    \"goods\": [
        {
            \"id\": 1,
            \"accounts\": [
                \"user123\",
                \"admin456\"
            ],
            \"top\": 1
        },
        {
            \"id\": 2,
            \"accounts\": [
                \"guest789\",
                \"testuser\"
            ],
            \"top\": 0
        }
    ]
}"
const url = new URL(
    "https://rents.ws/api/v1/shop/&quot;testshop&quot;/several-goods/accounts/upload"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

let body = {
    "goods": [
        {
            "id": 1,
            "accounts": [
                "user123",
                "admin456"
            ],
            "top": 1
        },
        {
            "id": 2,
            "accounts": [
                "guest789",
                "testuser"
            ],
            "top": 0
        }
    ]
};

fetch(url, {
    method: "POST",
    headers,
    body: JSON.stringify(body),
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/shop/"testshop"/several-goods/accounts/upload';
$response = $client->post(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
        'json' => [
            'goods' => [
                [
                    'id' => 1,
                    'accounts' => [
                        'user123',
                        'admin456',
                    ],
                    'top' => 1,
                ],
                [
                    'id' => 2,
                    'accounts' => [
                        'guest789',
                        'testuser',
                    ],
                    'top' => 0,
                ],
            ],
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/shop/&quot;testshop&quot;/several-goods/accounts/upload'
payload = {
    "goods": [
        {
            "id": 1,
            "accounts": [
                "user123",
                "admin456"
            ],
            "top": 1
        },
        {
            "id": 2,
            "accounts": [
                "guest789",
                "testuser"
            ],
            "top": 0
        }
    ]
}
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('POST', url, headers=headers, json=payload)
response.json()

Request      

POST api/v1/shop/{shop_alias}/several-goods/accounts/upload

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json

URL Parameters

shop_alias   string   

Магазин. Example: "testshop"

Body Parameters

goods   object[]   

Массив товаров (максимум 10 элементов). Поле value должно содержать не более 10 элементов.

id   integer   

ID товара. Example: 1

accounts   string[]  optional  

Каждый аккаунт - строка (максимум 10 000 символов). Поле value должно быть не длиннее 10000 символов.

top   string   

Флаг (0 - нет, 1 - да), указывающий, относится ли товар к топу. Example: 1

Must be one of:
  • 0
  • 1

Пользователь

Баланс RWS Pay

requires authentication

Example request:
curl --request GET \
    --get "https://rents.ws/api/v1/user/rws-pay-balance" \
    --header "Authorization: Bearer {YOUR_AUTH_KEY}" \
    --header "Content-Type: application/json" \
    --header "Accept: application/json"
const url = new URL(
    "https://rents.ws/api/v1/user/rws-pay-balance"
);

const headers = {
    "Authorization": "Bearer {YOUR_AUTH_KEY}",
    "Content-Type": "application/json",
    "Accept": "application/json",
};

fetch(url, {
    method: "GET",
    headers,
}).then(response => response.json());
$client = new \GuzzleHttp\Client();
$url = 'https://rents.ws/api/v1/user/rws-pay-balance';
$response = $client->get(
    $url,
    [
        'headers' => [
            'Authorization' => 'Bearer {YOUR_AUTH_KEY}',
            'Content-Type' => 'application/json',
            'Accept' => 'application/json',
        ],
    ]
);
$body = $response->getBody();
print_r(json_decode((string) $body));
import requests
import json

url = 'https://rents.ws/api/v1/user/rws-pay-balance'
headers = {
  'Authorization': 'Bearer {YOUR_AUTH_KEY}',
  'Content-Type': 'application/json',
  'Accept': 'application/json'
}

response = requests.request('GET', url, headers=headers)
response.json()

Example response (200, success):


{
    "success": true,
    "data": 1500.5,
    "message": null
}
 

Request      

GET api/v1/user/rws-pay-balance

Headers

Authorization      

Example: Bearer {YOUR_AUTH_KEY}

Content-Type      

Example: application/json

Accept      

Example: application/json