[{"data":1,"prerenderedAt":156},["ShallowReactive",2],{"openapi-specs-catalog":3,"openapi-nav-de-Alternative-API-UN":38,"openapi-doc-\u002Fde\u002FAlternative-API-UN\u002Fauth":123,"openapi-op-\u002Fde\u002FAlternative-API-UN\u002Fauth":155},["Reactive",4],{"defaultLocale":5,"base":6,"specs":7,"specsMeta":11,"locales":35},"en","\u002Fopenapi_docs\u002F",[8,9,10],"Onlinesim-API-UN","Reseller-API-UN","Alternative-API-UN",[12,22,29],{"name":8,"fileName":8,"title":13,"version":14,"description":15,"basePath":16,"specsPath":17,"locales":18,"defaultLocale":5},"Onlinesim API","1.1","General description This API will allow you to access all services provided by Onlinesim: SMS receiving from a single specific service on a virtual nu","Onlinesim-API-UN\u002F","\u002Fopenapi_docs\u002Fspecs\u002FOnlinesim-API-UN",{"en":19,"ru":20,"de":21},"English","Русский","Deutsch",{"name":9,"fileName":9,"title":23,"version":24,"description":25,"basePath":26,"specsPath":27,"locales":28,"defaultLocale":5},"Reseller API","1.0","General description The API is intended for current and potential Onlinesim partners. It allows you to monetize your numbers by providing them to our ","Reseller-API-UN\u002F","\u002Fopenapi_docs\u002Fspecs\u002FReseller-API-UN",{"en":19,"ru":20,"de":21},{"name":10,"fileName":10,"title":30,"version":24,"description":31,"basePath":32,"specsPath":33,"locales":34,"defaultLocale":5},"Alternative API","General description Alternative API for integration with Onlinesim. This API will allow you to access two main services of Onlinesim: rent numbers to ","Alternative-API-UN\u002F","\u002Fopenapi_docs\u002Fspecs\u002FAlternative-API-UN",{"en":19,"ru":20,"de":21},[5,36,37],"ru","de",[39,43,48,65,94],{"text":30,"link":40,"icon":41,"description":42},"\u002Fde\u002FAlternative-API-UN\u002Finfo","icons\u002Fdocs\u002Finfo","API-Übersicht und Einführung",{"text":44,"link":45,"icon":46,"description":47},"Autorisierung","\u002Fde\u002FAlternative-API-UN\u002Fauth","icons\u002Fdocs\u002Fauth","API-Schlüssel, OAuth und Sicherheitsschemata",{"text":49,"collapsed":50,"items":51,"description":63,"icon":64},"profile (alt)",false,[52,58],{"text":53,"link":54,"method":55,"path":56,"description":57,"deprecated":50},"getBalance","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getbalance","GET","\u002Fstubs\u002Fhandler_api.php?action=getBalance","Informationen zum Kontoguthaben abrufen",{"text":59,"link":60,"method":55,"path":61,"description":62,"deprecated":50},"getCountries","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getcountries","\u002Fstubs\u002Fhandler_api.php?action=getCountries","Liste der Länder mit verfügbaren Nummern für die Bestellung abrufen","Anfragen, die sich auf das Profil oder alle von Onlinesim bereitgestellten Dienste beziehen","icons\u002Fdocs\u002Ffolder",{"text":66,"collapsed":50,"items":67,"description":93,"icon":64},"single-service activations",[68,73,78,83,88],{"text":69,"link":70,"method":55,"path":71,"description":72,"deprecated":50},"getNumbersStatus","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getnumbersstatus","\u002Fstubs\u002Fhandler_api.php?action=getNumbersStatus","Informationen über die Anzahl der verfügbaren Nummern nach Diensten abrufen",{"text":74,"link":75,"method":55,"path":76,"description":77,"deprecated":50},"getNumber","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getnumber","\u002Fstubs\u002Fhandler_api.php?action=getNumber","Kauf einer virtuellen Nummer für den ausgewählten Dienst",{"text":79,"link":80,"method":55,"path":81,"description":82,"deprecated":50},"getStatus","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getstatus","\u002Fstubs\u002Fhandler_api.php?action=getStatus","Kurzen Code aus einer empfangenen SMS-Nachricht abrufen",{"text":84,"link":85,"method":55,"path":86,"description":87,"deprecated":50},"getFullSms","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getfullsms","\u002Fstubs\u002Fhandler_api.php?action=getFullSms","Vollständigen SMS-Text abrufen",{"text":89,"link":90,"method":55,"path":91,"description":92,"deprecated":50},"setStatus","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-setstatus","\u002Fstubs\u002Fhandler_api.php?action=setStatus","Vorgangsstatus ändern","Anfragen für die Funktionalität des Empfangs von SMS von einzelnen Diensten",{"text":95,"collapsed":50,"items":96,"description":122,"icon":64},"rent",[97,102,107,112,117],{"text":98,"link":99,"method":55,"path":100,"description":101,"deprecated":50},"getRentServicesAndCountries","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getrentservicesandcountries","\u002Fstubs\u002Fhandler_api.php?action=getRentServicesAndCountries","Liste der Länder und Tarife für die Vermietung virtueller Nummern abrufen",{"text":103,"link":104,"method":55,"path":105,"description":106,"deprecated":50},"getRentNumber","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getrentnumber","\u002Fstubs\u002Fhandler_api.php?action=getRentNumber","Virtuelle Nummer für den Empfang von SMS mieten",{"text":108,"link":109,"method":55,"path":110,"description":111,"deprecated":50},"getRentList","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getrentlist","\u002Fstubs\u002Fhandler_api.php?action=getRentList","Liste der aktiven Mietnummern des Profils abrufen",{"text":113,"link":114,"method":55,"path":115,"description":116,"deprecated":50},"getRentStatus","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-getrentstatus","\u002Fstubs\u002Fhandler_api.php?action=getRentStatus","Status der Mietoperation abrufen",{"text":118,"link":119,"method":55,"path":120,"description":121,"deprecated":50},"setRentStatus","\u002Fde\u002FAlternative-API-UN\u002FAlternative-API-UN-get-stubs-handler_api-php-action-setrentstatus","\u002Fstubs\u002Fhandler_api.php?action=setRentStatus","Status der Mietoperation einer virtuellen Nummer ändern","Anfragen für die Funktionalität der Vermietung",{"title":124,"kind":125,"locale":37,"specName":10,"path":45,"description":124,"auth":126},"Authorization","auth",{"api_key":127,"BearerAuth":134,"OAuth2":140},{"name":128,"type":129,"in":130,"x-description-ru":131,"x-description-de":132,"description":133},"api_key","apiKey","query","Секретный ключ, используемый для упрощенной авторизации в API Onlinesim.\n\n---\n\n#### Как получить API ключ:\n\n1. Авторизоваться в личном кабинете, перейти в [настройки профиля](https:\u002F\u002Fonlinesim.io\u002Fv2\u002Fprofile\u002F), выбрать вкладку **API**.\n2. Ключ будет указан в строке `API key`. Его необходимо скопировать и добавить в Ваше приложение\u002Fпрограмму.\n\n---\n\n#### Как использовать:\n\n1. Все запросы к текущему API Onlinesim (за исключением [getFreeList](\u002Fru\u002FOnlinesim-API-UN\u002FOnlinesim-API-UN-get-api-getfreelist)) должны содержать API ключ.\n2. API ключ можно указать как параметр запроса, например:\n\n          https:\u002F\u002Fonlinesim.io\u002Fapi\u002FgetTariffs.php?api_key={api_key}\n\n::: tip\nИспользование API ключа представляет собой способ для упрощенной авторизации запросов. Мы рекомендуем использовать OAuth 2.0 для более безопасной работы с данными.\n\nДля получения более подробной информации, пожалуйста, обратитесь к [официальной документации OAuth 2.0](https:\u002F\u002Foauth.net\u002F2\u002F).\n:::\n","Geheimer Schlüssel, der für die vereinfachte Autorisierung in der Onlinesim API verwendet wird.\n\n---\n\n#### So erhalten Sie einen API-Schlüssel:\n\n1. Melden Sie sich in Ihrem persönlichen Konto an, gehen Sie zu den [Profileinstellungen](https:\u002F\u002Fonlinesim.io\u002Fv2\u002Fprofile\u002F) und wählen Sie die Registerkarte **API**.\n2. Der Schlüssel wird in der Zeile `API key` angezeigt. Sie müssen ihn kopieren und zu Ihrer Anwendung\u002FProgramm hinzufügen.\n\n---\n\n#### So verwenden Sie ihn:\n\n1. Alle Anfragen an die aktuelle Onlinesim API (außer [getFreeList](\u002Fde\u002FOnlinesim-API-UN\u002FOnlinesim-API-UN-get-api-getfreelist)) müssen einen API-Schlüssel enthalten.\n2. Der API-Schlüssel kann als Anfrageparameter angegeben werden, z. B.:\n\n          https:\u002F\u002Fonlinesim.io\u002Fapi\u002FgetTariffs.php?api_key={api_key}\n\n::: tip\nDie Verwendung eines API-Schlüssels ist eine Methode zur vereinfachten Autorisierung von Anfragen. Wir empfehlen die Verwendung von OAuth 2.0 für eine sicherere Arbeit mit Daten.\n\nFür weitere Informationen wenden Sie sich bitte an die [offizielle OAuth 2.0-Dokumentation](https:\u002F\u002Foauth.net\u002F2\u002F).\n:::\n","\u003Cp>Geheimer Schlüssel, der für die vereinfachte Autorisierung in der Onlinesim API verwendet wird.\u003C\u002Fp>\n\u003Chr>\n\u003Ch4>So erhalten Sie einen API-Schlüssel:\u003C\u002Fh4>\n\u003Col>\n  \u003Cli>Melden Sie sich in Ihrem persönlichen Konto an, gehen Sie zu den \u003Ca href=\"https:\u002F\u002Fonlinesim.io\u002Fv2\u002Fprofile\u002F\" target=\"_blank\" rel=\"noopener noreferrer\">Profileinstellungen\u003C\u002Fa> und wählen Sie die Registerkarte \u003Cstrong>API\u003C\u002Fstrong>.\u003C\u002Fli>\n  \u003Cli>Der Schlüssel wird in der Zeile \u003Ccode>API key\u003C\u002Fcode> angezeigt. Sie müssen ihn kopieren und zu Ihrer Anwendung\u002FProgramm hinzufügen.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Chr>\n\u003Ch4>So verwenden Sie ihn:\u003C\u002Fh4>\n\u003Col>\n  \u003Cli>Alle Anfragen an die aktuelle Onlinesim API (außer \u003Ca href=\"\u002Fopenapi_docs\u002Fde\u002FOnlinesim-API-UN\u002FOnlinesim-API-UN-get-api-getfreelist\">getFreeList\u003C\u002Fa>) müssen einen API-Schlüssel enthalten.\u003C\u002Fli>\n  \u003Cli>\n    \u003Cp>Der API-Schlüssel kann als Anfrageparameter angegeben werden, z. B.:\u003C\u002Fp>\n    \u003Cpre>\u003Ccode>   https:\u002F\u002Fonlinesim.io\u002Fapi\u002FgetTariffs.php?api_key={api_key}\u003C\u002Fcode>\u003C\u002Fpre>\n  \u003C\u002Fli>\n\u003C\u002Fol>\n\u003Caside class=\"my-4 rounded-lg border p-4 text-sm leading-relaxed not-prose border-brand-200 bg-brand-50 text-brand-950\" role=\"note\">\u003Cdiv class=\"openapi-callout-body [&_p:last-child]:mb-0 [&_p]:mb-2\">\u003Cp>Die Verwendung eines API-Schlüssels ist eine Methode zur vereinfachten Autorisierung von Anfragen. Wir empfehlen die Verwendung von OAuth 2.0 für eine sicherere Arbeit mit Daten.\u003C\u002Fp>\n\u003Cp>Für weitere Informationen wenden Sie sich bitte an die \u003Ca href=\"https:\u002F\u002Foauth.net\u002F2\u002F\" target=\"_blank\" rel=\"noopener noreferrer\">offizielle OAuth 2.0-Dokumentation\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fdiv>\u003C\u002Faside>",{"type":135,"scheme":136,"x-description-ru":137,"x-description-de":138,"description":139},"http","bearer","API ключ также можно использовать для авторизации в заголовке запроса, используя схему `Authorization: Bearer`, например:\n\n```bash\nAuthorization: Bearer {api_key}\nUser-Agent: PostmanRuntime\u002F7.29.2\nAccept: *\u002F\\*\nCache-Control: no-cache\nPostman-Token: 948bc880-8d25-4298-994f-fe6e22ada339\nHost: onlinesim.io\nAccept-Encoding: gzip, deflate, br\nConnection: keep-alive\nCookie: xxxx\n```\n\n::: tip\nИспользование API ключа представляет собой способ для упрощенной авторизации запросов. Мы рекомендуем использовать OAuth 2.0 для более безопасной работы с данными.\n\nДля получения более подробной информации, пожалуйста, обратитесь к [официальной документации OAuth 2.0](https:\u002F\u002Foauth.net\u002F2\u002F).\n:::\n","Der API-Schlüssel kann auch für die Autorisierung im Anfrageheader verwendet werden, indem das Schema `Authorization: Bearer` verwendet wird, z. B.:\n\n```bash\nAuthorization: Bearer {api_key}\nUser-Agent: PostmanRuntime\u002F7.29.2\nAccept: *\u002F\\*\nCache-Control: no-cache\nPostman-Token: 948bc880-8d25-4298-994f-fe6e22ada339\nHost: onlinesim.io\nAccept-Encoding: gzip, deflate, br\nConnection: keep-alive\nCookie: xxxx\n```\n\n::: tip        \nDie Verwendung eines API-Schlüssels ist eine Methode zur vereinfachten Autorisierung von Anfragen. Wir empfehlen die Verwendung von OAuth 2.0 für eine sicherere Arbeit mit Daten.\n\nFür weitere Informationen wenden Sie sich bitte an die [offizielle OAuth 2.0-Dokumentation](https:\u002F\u002Foauth.net\u002F2\u002F).\n:::\n","\u003Cp>Der API-Schlüssel kann auch für die Autorisierung im Anfrageheader verwendet werden, indem das Schema \u003Ccode>Authorization: Bearer\u003C\u002Fcode> verwendet wird, z. B.:\u003C\u002Fp>\n\u003Cpre language=\"bash\">\u003Ccode class=\"language-bash\">Authorization: Bearer {api_key}\nUser-Agent: PostmanRuntime\u002F7.29.2\nAccept: *\u002F\\*\nCache-Control: no-cache\nPostman-Token: 948bc880-8d25-4298-994f-fe6e22ada339\nHost: onlinesim.io\nAccept-Encoding: gzip, deflate, br\nConnection: keep-alive\nCookie: xxxx\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Caside class=\"my-4 rounded-lg border p-4 text-sm leading-relaxed not-prose border-brand-200 bg-brand-50 text-brand-950\" role=\"note\">\u003Cdiv class=\"openapi-callout-body [&_p:last-child]:mb-0 [&_p]:mb-2\">\u003Cp>Die Verwendung eines API-Schlüssels ist eine Methode zur vereinfachten Autorisierung von Anfragen. Wir empfehlen die Verwendung von OAuth 2.0 für eine sicherere Arbeit mit Daten.\u003C\u002Fp>\n\u003Cp>Für weitere Informationen wenden Sie sich bitte an die \u003Ca href=\"https:\u002F\u002Foauth.net\u002F2\u002F\" target=\"_blank\" rel=\"noopener noreferrer\">offizielle OAuth 2.0-Dokumentation\u003C\u002Fa>.\u003C\u002Fp>\n\u003C\u002Fdiv>\u003C\u002Faside>",{"type":141,"flows":142,"x-description-ru":152,"x-description-de":153,"description":154},"oauth2",{"implicit":143,"authorizationCode":150},{"authorizationUrl":144,"refreshUrl":145,"scopes":146},"https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize","https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken",{"sms-scope":147,"rent-scope":148,"free-scope":149},"grants access to manage numbers for the SMS receiving service from Onlinesim","grants access to renting phone numbers from Onlinesim","grants access to using Onlinesim free numbers",{"authorizationUrl":144,"scopes":151,"tokenUrl":145},{"sms-scope":147,"rent-scope":148,"free-scope":149},"\n\u003Ca name=\"OAUTH\">\u003C\u002Fa>\n### OAuth 2.0\nПротокол OAuth 2.0 поддерживает несколько сценариев авторизации, для работы с нашим API можно использовать сценарии Authorization Code Flow или Implicit Flow.\n\n::: info\nДля получения более подробной информации, пожалуйста, обратитесь к [официальной документации OAuth 2.0](https:\u002F\u002Foauth.net\u002F2\u002F).\n:::\n\n**Authorization URL**: `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize`\n\n**Token URL**: `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken`\n\n**Scopes**:\n\n  - `sms-scope` открывает доступ к управлению номерами для услуги \"Прием SMS\" от Onlinesim;\n  \n  - `rent-scope` открывает доступ к аренде виртуальных телефонных номеров Onlinesim;\n  \n  - `free-scope` открывает доступ к использованию бесплатных номеров Onlinesim.\n\n### **Регистрация вашего приложения на нашем сервисе авторизации**\n\n1. Перейдите на [страницу OAuth](https:\u002F\u002Fonlinesim.io\u002Foauth)\n2. Создайте новый клиент, указав:\n      * `Name` - название приложения или любое другое название, которое Вы и Ваши пользователи будут ассоциировать с приложением;\n      * `Redirect URL` - URL, на который будет перенаправлен клиент после авторизации и куда будет направлен код авторизации приложения;\n      * `Confidential` - необзятально, отметье клиент как \u003Cu>Confidential\u003C\u002Fu>, если ваше приложение работает на сервере и может безопасно хранить \u003Cu>Client Secret\u003C\u002Fu>.\n\n![Создание клиента](\u002Fdocs\u002FCreateOAuthClient.png)\n\n3. Нажмите \"Create\". Добавленное Вами приложение будет отображаться в списке клиентов.\n\n![Список клиентов](\u002Fdocs\u002FOAuthClient.png)\n\n4. Сохраните `Client ID` и `Secret` в безопасном месте, далее они будут использоваться Вашим приложении для авторизации.\n\n\u003Ca name=\"AUTHCODE\">\u003C\u002Fa>\n### OAuth 2.0. Authorization Сode Flow\n\n#### **Авторизация пользователя и получение токена**\n\n1. Авторизуйте клиент через GET запрос к `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize` с параметрами `client_id`, `redirect_uri`, `response_type`, `scope`, `state`:\n\n##### Описание параметров\n\n  Название параметра | Тип данных | Описание\n  -------------------|:----------:|---------\n  client_id | STRING | `Client ID`, который был получен после регистрации приложения\n  redirect_uri | STRING | Адрес на который будет перенаправлен клиент, после успешной авторизации, должен совпадать с `Redirect URL`, который Вы указали при регистрации приложения.\n  response_type | STRING | Указать `code`\n  scope | STRING | Права доступа, разрешение на которые запрашивает Ваше приложение у пользователя. Возможные варианты: `sms-scope`, `rent-scope`, `free-scope`. Можно указать несколько значений\n  state | STRING | Случайная строка для защиты от CSRF (проверьте её после редиректа)\n\n2. После запроса к `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize` пользователь из Вашего приложения будет перенаправлен на страницу авторизации, где ему необходимо указать логин пароль и, в случае успеха, авторизовать Ваше приложение для работы с данными пользователя в сервисе Onlinesim. Для этого ему необходимо будет нажать кнопку *`Authorize`*:\n\n![OAuth запрос](\u002Fdocs\u002FOAuthRequest.png)\n\n::: info\nНа этом этапе Вы можете проверить параметр `state`, для подтверждения безопасного взаимодействия с сервисом авторизации\n:::\n\n3. В случае успешной авторизации пользователь будет перенаправлен по адресу `redirect_uri` с параметром `code`. Теперь Вы можете получить `access token`, для этого необходимо сделать POST запрос к `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken`:\n\n##### Описание параметров\n\n  Название параметра | Тип данных | Описание\n  ---------|:--------:|---------\n  grant_type | STRING | Сценарий авторизации, для сценария Authorization Сode необходимо указать `authorization_code`\n  client_id | STRING | `Client ID`, который был получен после регистрации приложения\n  client_secret | STRING |`Сlient_secret`, который был получен после регистрации приложения\n  redirect_uri | STRING | Адрес на который будет перенаправлен клиент, после успешной авторизации, должен совпадать с `Redirect URL`, который Вы указали при регистрации приложения\n  code | STRING | Код авторизации, который был получен на предыдущем этапе\n\n::: danger\n\nТак как `client_secret` -  это приватный ключ, крайне не рекомендуется хранить его на frontend клиента. Для большей безопасности необходимо хранить его в бэкенде Вашего приложения. Для реализации сценария с авторизационным кодом нужно передать полученный frontend'ем код в backend Вашего сервиса, а уже он должен обратится в авторизационный сервис для получения токена.\n:::\n\n4. В результате успешного выполнения запроса к `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken`, в ответ получите JSON, содержащий поля `access_token`, `refresh_token` и `expires_in`. Поле `expires_in` определяет количество секунд до истечения срока действия токена доступа, `refresh_token` используется для обновления токена доступа при истечении его срока действия.\n\n---\n\n#### **Авторизация запросов к API Onlinesim и обновление токена**\n\nВо все запросы к API нужно добавлять заголовок **Authorization: Bearer *`access_token`***.\nЕсли в ответ на ваш запрос пришел `ERROR_WRONG_KEY`, Вам необходимо обновить токен или получить новый.\n\n  ```json\n  {\n    \"response\": \"ERROR_WRONG_KEY\"\n  }\n  ```\n\nДля обновления токена необходимо сделать POST запрос к `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken` с параметрами `grant_type`, `client_id`, `client_secret` и `refresh_token`. Для поля `refresh_token` необходимо использовать значение, которое было получено в шаге 4.\n\n##### Описание параметров\n\n  Название параметра | Тип данных | Описание\n  ---------|:--------:|---------\n  grant_type | STRING | Необходимо указать `refresh_token`\n  client_id | STRING | `client ID`, который Вы получили при регистрации приложения\n  client_secret | STRING | `client_secret`, который был получен при регистрации приложения\n  refresh_token | STRING | `refresh_token` был получен вместе с `access_token`. Имеет гораздо большее время жизни и используется для обновления `access_token`\n\n\n\u003Ca name=\"IMPLICIT\">\u003C\u002Fa>\n### OAuth 2.0. Implicit flow\n\n#### **Авторизация пользователя и получение токена**\n1. Авторизуйте клиент через GET запрос к `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize` с параметрами `client_id`, `redirect_uri`, `response_type`, `scope`, `state`:\n\n##### Описание параметров\n\n  Название параметра | Тип данных | Описание\n  ---------|:--------:|---------\n  client_id | STRING | `Client ID`, который был получен при регистрации приложения\n  redirect_uri | STRING | Адрес на который будет перенаправлен клиент, после успешной авторизации, должен совпадать с `Redirect URL`, который Вы указали при добавлении приложения.\n  response_type | STRING | Используйте `token` в качестве значения\n  scope | STRING | Права доступа, разрешение на которые запрашивает Ваше приложение у пользователя. Возможные варианты: `sms-scope`, `rent-scope`, `free-scope`. Можно указать несколько значений\n  state | STRING | Случайная строка для защиты от CSRF (проверьте её после редиректа)\n\n2. После запроса к `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize`, пользователь из Вашего приложения будет перенаправлен на страницу авторизации, где ему необходимо указать логин пароль и, в случае успеха, авторизовать Ваше приложение для работы с данными пользователя в сервисе Onlinesim. Для этого ему необходимо будет нажать кнопку *`Authorize`*:\n\n![OAuth запрос](\u002Fdocs\u002FOAuthRequest.png)\n\n::: info\nНа этом этапе Вы можете проверить параметр `state`, для подтверждения безопасного взаимодействия с сервисом авторизации\n:::\n\n3. В случае успешной авторизации пользователь будет перенаправлен по адрес `redirect_uri` с параметром `access_token`. Это и есть необходимый токен для авторизации в API Onlinesim.\n\n---\n\n### **Авторизация запросов к API Onlinesim**\n\nВо все запросы к API нужно добавлять заголовок **Authorization: Bearer *`access_token`***.\nЕсли в ответ на ваш запрос пришел `ERROR_WRONG_KEY`, Вам необходимо получить новый токен.\n\n  ```json\n  {\n    \"response\": \"ERROR_WRONG_KEY\"\n  }\n  ```\n","\n\u003Ca name=\"OAUTH\">\u003C\u002Fa>\n### OAuth 2.0\nDas OAuth 2.0-Protokoll unterstützt mehrere Autorisierungsszenarien. Für die Arbeit mit unserer API können Sie die Szenarien Authorization Code Flow oder Implicit Flow verwenden.\n\n::: info\nFür weitere Informationen wenden Sie sich bitte an die [offizielle OAuth 2.0-Dokumentation](https:\u002F\u002Foauth.net\u002F2\u002F).\n:::\n\n**Authorization URL**: `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize`\n\n**Token URL**: `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken`\n\n**Scopes**:\n\n  - `sms-scope` gewährt Zugriff auf die Verwaltung von Nummern für den Dienst \"SMS-Empfang\" von Onlinesim;\n  \n  - `rent-scope` gewährt Zugriff auf die Vermietung virtueller Telefonnummern von Onlinesim;\n  \n  - `free-scope` gewährt Zugriff auf die Verwendung kostenloser Nummern von Onlinesim.\n\n### **Registrierung Ihrer Anwendung auf unserem Autorisierungsdienst**\n\n1. Gehen Sie zur [OAuth-Seite](https:\u002F\u002Fonlinesim.io\u002Foauth)\n2. Erstellen Sie einen neuen Client und geben Sie an:\n      * `Name` - Name der Anwendung oder ein anderer Name, den Sie und Ihre Benutzer mit der Anwendung assoziieren werden;\n      * `Redirect URL` - URL, an die der Client nach der Autorisierung weitergeleitet wird und wohin der Autorisierungscode der Anwendung gesendet wird;\n      * `Confidential` - optional, markieren Sie den Client als \u003Cu>Confidential\u003C\u002Fu>, wenn Ihre Anwendung auf einem Server läuft und den \u003Cu>Client Secret\u003C\u002Fu> sicher speichern kann.\n\n![Client erstellen](\u002Fdocs\u002FCreateOAuthClient.png)\n\n3. Klicken Sie auf \"Create\". Ihre hinzugefügte Anwendung wird in der Liste der Clients angezeigt.\n\n![Client-Liste](\u002Fdocs\u002FOAuthClient.png)\n\n4. Speichern Sie `Client ID` und `Secret` an einem sicheren Ort, sie werden von Ihrer Anwendung für die Autorisierung verwendet.\n\n\u003Ca name=\"AUTHCODE\">\u003C\u002Fa>\n### OAuth 2.0. Authorization Code Flow\n\n#### **Benutzerautorisierung und Token-Erhaltung**\n\n1. Autorisieren Sie den Client über eine GET-Anfrage an `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize` mit den Parametern `client_id`, `redirect_uri`, `response_type`, `scope`, `state`:\n\n##### Parameterbeschreibung\n\n  Parametername | Datentyp | Beschreibung\n  -------------------|:----------:|---------\n  client_id | STRING | `Client ID`, der nach der Registrierung der Anwendung erhalten wurde\n  redirect_uri | STRING | Adresse, an die der Client nach erfolgreicher Autorisierung weitergeleitet wird, muss mit der `Redirect URL` übereinstimmen, die Sie bei der Registrierung der Anwendung angegeben haben.\n  response_type | STRING | Geben Sie `code` an\n  scope | STRING | Zugriffsrechte, deren Genehmigung Ihre Anwendung vom Benutzer anfordert. Mögliche Optionen: `sms-scope`, `rent-scope`, `free-scope`. Mehrere Werte können angegeben werden\n  state | STRING | Zufällige Zeichenfolge zum Schutz vor CSRF (überprüfen Sie sie nach der Weiterleitung)\n\n2. Nach der Anfrage an `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize` wird der Benutzer aus Ihrer Anwendung zur Autorisierungsseite weitergeleitet, wo er Benutzername und Passwort eingeben muss und bei Erfolg Ihre Anwendung für die Arbeit mit den Benutzerdaten im Onlinesim-Dienst autorisieren muss. Dazu muss er auf die Schaltfläche *`Authorize`* klicken:\n\n![OAuth-Anfrage](\u002Fdocs\u002FOAuthRequest.png)\n\n::: info\nAuf dieser Stufe können Sie den Parameter `state` überprüfen, um die sichere Interaktion mit dem Autorisierungsdienst zu bestätigen\n:::\n\n3. Bei erfolgreicher Autorisierung wird der Benutzer an die Adresse `redirect_uri` mit dem Parameter `code` weitergeleitet. Jetzt können Sie ein `access token` erhalten, dazu müssen Sie eine POST-Anfrage an `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken` stellen:\n\n##### Parameterbeschreibung\n\n  Parametername | Datentyp | Beschreibung\n  ---------|:--------:|---------\n  grant_type | STRING | Autorisierungsszenario, für das Szenario Authorization Code müssen Sie `authorization_code` angeben\n  client_id | STRING | `Client ID`, der nach der Registrierung der Anwendung erhalten wurde\n  client_secret | STRING |`Client_secret`, der nach der Registrierung der Anwendung erhalten wurde\n  redirect_uri | STRING | Adresse, an die der Client nach erfolgreicher Autorisierung weitergeleitet wird, muss mit der `Redirect URL` übereinstimmen, die Sie bei der Registrierung der Anwendung angegeben haben\n  code | STRING | Autorisierungscode, der in der vorherigen Stufe erhalten wurde\n\n::: danger\n  \nDa `client_secret` ein privater Schlüssel ist, wird nicht empfohlen, ihn im Frontend des Clients zu speichern. Für mehr Sicherheit muss er im Backend Ihrer Anwendung gespeichert werden. Um das Szenario mit dem Autorisierungscode zu implementieren, muss der vom Frontend erhaltene Code an das Backend Ihres Dienstes übergeben werden, und dieses muss sich dann an den Autorisierungsdienst wenden, um das Token zu erhalten.\n:::\n\n4. Als Ergebnis einer erfolgreichen Anfrage an `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken` erhalten Sie eine JSON-Antwort, die die Felder `access_token`, `refresh_token` und `expires_in` enthält. Das Feld `expires_in` bestimmt die Anzahl der Sekunden bis zum Ablauf des Zugriffstokens, `refresh_token` wird verwendet, um das Zugriffstoken bei Ablauf zu aktualisieren.\n\n---\n\n#### **Autorisierung von Anfragen an die Onlinesim API und Token-Aktualisierung**\n\nZu allen Anfragen an die API muss der Header **Authorization: Bearer *`access_token`*** hinzugefügt werden.\nWenn als Antwort auf Ihre Anfrage `ERROR_WRONG_KEY` kam, müssen Sie das Token aktualisieren oder ein neues erhalten.\n\n  ```json\n  {\n    \"response\": \"ERROR_WRONG_KEY\"\n  }\n  ```\n\nUm das Token zu aktualisieren, müssen Sie eine POST-Anfrage an `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken` mit den Parametern `grant_type`, `client_id`, `client_secret` und `refresh_token` stellen. Für das Feld `refresh_token` muss der Wert verwendet werden, der in Schritt 4 erhalten wurde.\n\n##### Parameterbeschreibung\n\n  Parametername | Datentyp | Beschreibung\n  ---------|:--------:|---------\n  grant_type | STRING | Sie müssen `refresh_token` angeben\n  client_id | STRING | `client ID`, den Sie bei der Registrierung der Anwendung erhalten haben\n  client_secret | STRING | `client_secret`, der bei der Registrierung der Anwendung erhalten wurde\n  refresh_token | STRING | `refresh_token` wurde zusammen mit `access_token` erhalten. Hat eine viel längere Lebensdauer und wird verwendet, um `access_token` zu aktualisieren\n\n\n\u003Ca name=\"IMPLICIT\">\u003C\u002Fa>\n### OAuth 2.0. Implicit Flow\n\n#### **Benutzerautorisierung und Token-Erhaltung**\n1. Autorisieren Sie den Client über eine GET-Anfrage an `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize` mit den Parametern `client_id`, `redirect_uri`, `response_type`, `scope`, `state`:\n\n##### Parameterbeschreibung\n\n  Parametername | Datentyp | Beschreibung\n  ---------|:--------:|---------\n  client_id | STRING | `Client ID`, der bei der Registrierung der Anwendung erhalten wurde\n  redirect_uri | STRING | Adresse, an die der Client nach erfolgreicher Autorisierung weitergeleitet wird, muss mit der `Redirect URL` übereinstimmen, die Sie beim Hinzufügen der Anwendung angegeben haben.\n  response_type | STRING | Verwenden Sie `token` als Wert\n  scope | STRING | Zugriffsrechte, deren Genehmigung Ihre Anwendung vom Benutzer anfordert. Mögliche Optionen: `sms-scope`, `rent-scope`, `free-scope`. Mehrere Werte können angegeben werden\n  state | STRING | Zufällige Zeichenfolge zum Schutz vor CSRF (überprüfen Sie sie nach der Weiterleitung)\n\n2. Nach der Anfrage an `https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize` wird der Benutzer aus Ihrer Anwendung zur Autorisierungsseite weitergeleitet, wo er Benutzername und Passwort eingeben muss und bei Erfolg Ihre Anwendung für die Arbeit mit den Benutzerdaten im Onlinesim-Dienst autorisieren muss. Dazu muss er auf die Schaltfläche *`Authorize`* klicken:\n\n![OAuth-Anfrage](\u002Fdocs\u002FOAuthRequest.png)\n\n::: info\nAuf dieser Stufe können Sie den Parameter `state` überprüfen, um die sichere Interaktion mit dem Autorisierungsdienst zu bestätigen\n:::\n\n3. Bei erfolgreicher Autorisierung wird der Benutzer an die Adresse `redirect_uri` mit dem Parameter `access_token` weitergeleitet. Dies ist das erforderliche Token für die Autorisierung in der Onlinesim API.\n\n---\n\n### **Autorisierung von Anfragen an die Onlinesim API**\n\nZu allen Anfragen an die API muss der Header **Authorization: Bearer *`access_token`*** hinzugefügt werden.\nWenn als Antwort auf Ihre Anfrage `ERROR_WRONG_KEY` kam, müssen Sie ein neues Token erhalten.\n\n  ```json\n  {\n    \"response\": \"ERROR_WRONG_KEY\"\n  }\n  ```\n","\u003Cp>\u003Ca href=\"\">\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>OAuth 2.0\u003C\u002Fh3>\n\u003Cp>Das OAuth 2.0-Protokoll unterstützt mehrere Autorisierungsszenarien. Für die Arbeit mit unserer API können Sie die Szenarien Authorization Code Flow oder Implicit Flow verwenden.\u003C\u002Fp>\n\u003Caside class=\"my-4 rounded-lg border p-4 text-sm leading-relaxed not-prose border-brand-200 bg-brand-50 text-brand-950\" role=\"note\">\u003Cdiv class=\"openapi-callout-body [&_p:last-child]:mb-0 [&_p]:mb-2\">Für weitere Informationen wenden Sie sich bitte an die \u003Ca href=\"https:\u002F\u002Foauth.net\u002F2\u002F\" target=\"_blank\" rel=\"noopener noreferrer\">offizielle OAuth 2.0-Dokumentation\u003C\u002Fa>.\u003C\u002Fdiv>\u003C\u002Faside>\u003Cp>\u003Cstrong>Authorization URL\u003C\u002Fstrong>: \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Token URL\u003C\u002Fstrong>: \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken\u003C\u002Fcode>\u003C\u002Fp>\n\u003Cp>\u003Cstrong>Scopes\u003C\u002Fstrong>:\u003C\u002Fp>\n\u003Cul>\n  \u003Cli>\u003Ccode>sms-scope\u003C\u002Fcode> gewährt Zugriff auf die Verwaltung von Nummern für den Dienst \"SMS-Empfang\" von Onlinesim;\u003C\u002Fli>\n  \u003Cli>\u003Ccode>rent-scope\u003C\u002Fcode> gewährt Zugriff auf die Vermietung virtueller Telefonnummern von Onlinesim;\u003C\u002Fli>\n  \u003Cli>\u003Ccode>free-scope\u003C\u002Fcode> gewährt Zugriff auf die Verwendung kostenloser Nummern von Onlinesim.\u003C\u002Fli>\n\u003C\u002Ful>\n\u003Ch3>\u003Cstrong>Registrierung Ihrer Anwendung auf unserem Autorisierungsdienst\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Col>\n  \u003Cli>Gehen Sie zur \u003Ca href=\"https:\u002F\u002Fonlinesim.io\u002Foauth\" target=\"_blank\" rel=\"noopener noreferrer\">OAuth-Seite\u003C\u002Fa>\u003C\u002Fli>\n  \u003Cli>\n    \u003Cp>Erstellen Sie einen neuen Client und geben Sie an:\u003C\u002Fp>\n    \u003Cul>\n      \u003Cli>\u003Ccode>Name\u003C\u002Fcode> - Name der Anwendung oder ein anderer Name, den Sie und Ihre Benutzer mit der Anwendung assoziieren werden;\u003C\u002Fli>\n      \u003Cli>\u003Ccode>Redirect URL\u003C\u002Fcode> - URL, an die der Client nach der Autorisierung weitergeleitet wird und wohin der Autorisierungscode der Anwendung gesendet wird;\u003C\u002Fli>\n      \u003Cli>\n        \u003Ccode>Confidential\u003C\u002Fcode> - optional, markieren Sie den Client als \u003Cu>Confidential\u003C\u002Fu>, wenn Ihre Anwendung auf einem Server läuft und den \u003Cu>Client Secret\u003C\u002Fu> sicher speichern kann.\n      \u003C\u002Fli>\n    \u003C\u002Ful>\n  \u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cimg src=\"\u002Fopenapi_docs\u002Fdocs\u002FCreateOAuthClient.png\" alt=\"Client erstellen\">\u003C\u002Fp>\n\u003Col start=\"3\">\n  \u003Cli>Klicken Sie auf \"Create\". Ihre hinzugefügte Anwendung wird in der Liste der Clients angezeigt.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cimg src=\"\u002Fopenapi_docs\u002Fdocs\u002FOAuthClient.png\" alt=\"Client-Liste\">\u003C\u002Fp>\n\u003Col start=\"4\">\n  \u003Cli>Speichern Sie \u003Ccode>Client ID\u003C\u002Fcode> und \u003Ccode>Secret\u003C\u002Fcode> an einem sicheren Ort, sie werden von Ihrer Anwendung für die Autorisierung verwendet.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Ca href=\"\">\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>OAuth 2.0. Authorization Code Flow\u003C\u002Fh3>\n\u003Ch4>\u003Cstrong>Benutzerautorisierung und Token-Erhaltung\u003C\u002Fstrong>\u003C\u002Fh4>\n\u003Col>\n  \u003Cli>Autorisieren Sie den Client über eine GET-Anfrage an \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize\u003C\u002Fcode> mit den Parametern \u003Ccode>client_id\u003C\u002Fcode>, \u003Ccode>redirect_uri\u003C\u002Fcode>, \u003Ccode>response_type\u003C\u002Fcode>, \u003Ccode>scope\u003C\u002Fcode>, \u003Ccode>state\u003C\u002Fcode>:\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch5>Parameterbeschreibung\u003C\u002Fh5>\n\u003Ctable>\n  \u003Cthead>\n    \u003Ctr>\n      \u003Cth>Parametername\u003C\u002Fth>\n      \u003Cth style=\"text-align:center\">Datentyp\u003C\u002Fth>\n      \u003Cth>Beschreibung\u003C\u002Fth>\n    \u003C\u002Ftr>\n  \u003C\u002Fthead>\n  \u003Ctbody>\n    \u003Ctr>\n      \u003Ctd>client_id\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>\u003Ccode>Client ID\u003C\u002Fcode>, der nach der Registrierung der Anwendung erhalten wurde\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>redirect_uri\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Adresse, an die der Client nach erfolgreicher Autorisierung weitergeleitet wird, muss mit der \u003Ccode>Redirect URL\u003C\u002Fcode> übereinstimmen, die Sie bei der Registrierung der Anwendung angegeben haben.\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>response_type\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Geben Sie \u003Ccode>code\u003C\u002Fcode> an\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>scope\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Zugriffsrechte, deren Genehmigung Ihre Anwendung vom Benutzer anfordert. Mögliche Optionen: \u003Ccode>sms-scope\u003C\u002Fcode>, \u003Ccode>rent-scope\u003C\u002Fcode>, \u003Ccode>free-scope\u003C\u002Fcode>. Mehrere Werte können angegeben werden\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>state\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Zufällige Zeichenfolge zum Schutz vor CSRF (überprüfen Sie sie nach der Weiterleitung)\u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Col start=\"2\">\n  \u003Cli>Nach der Anfrage an \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize\u003C\u002Fcode> wird der Benutzer aus Ihrer Anwendung zur Autorisierungsseite weitergeleitet, wo er Benutzername und Passwort eingeben muss und bei Erfolg Ihre Anwendung für die Arbeit mit den Benutzerdaten im Onlinesim-Dienst autorisieren muss. Dazu muss er auf die Schaltfläche \u003Cem>\u003Ccode>Authorize\u003C\u002Fcode>\u003C\u002Fem> klicken:\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cimg src=\"\u002Fopenapi_docs\u002Fdocs\u002FOAuthRequest.png\" alt=\"OAuth-Anfrage\">\u003C\u002Fp>\n\u003Caside class=\"my-4 rounded-lg border p-4 text-sm leading-relaxed not-prose border-brand-200 bg-brand-50 text-brand-950\" role=\"note\">\u003Cdiv class=\"openapi-callout-body [&_p:last-child]:mb-0 [&_p]:mb-2\">Auf dieser Stufe können Sie den Parameter \u003Ccode>state\u003C\u002Fcode>\n überprüfen, um die sichere Interaktion mit dem Autorisierungsdienst zu bestätigen\u003C\u002Fdiv>\u003C\u002Faside>\u003Col start=\"3\">\n  \u003Cli>Bei erfolgreicher Autorisierung wird der Benutzer an die Adresse \u003Ccode>redirect_uri\u003C\u002Fcode> mit dem Parameter \u003Ccode>code\u003C\u002Fcode> weitergeleitet. Jetzt können Sie ein \u003Ccode>access token\u003C\u002Fcode> erhalten, dazu müssen Sie eine POST-Anfrage an \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken\u003C\u002Fcode> stellen:\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch5>Parameterbeschreibung\u003C\u002Fh5>\n\u003Ctable>\n  \u003Cthead>\n    \u003Ctr>\n      \u003Cth>Parametername\u003C\u002Fth>\n      \u003Cth style=\"text-align:center\">Datentyp\u003C\u002Fth>\n      \u003Cth>Beschreibung\u003C\u002Fth>\n    \u003C\u002Ftr>\n  \u003C\u002Fthead>\n  \u003Ctbody>\n    \u003Ctr>\n      \u003Ctd>grant_type\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Autorisierungsszenario, für das Szenario Authorization Code müssen Sie \u003Ccode>authorization_code\u003C\u002Fcode> angeben\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>client_id\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>\u003Ccode>Client ID\u003C\u002Fcode>, der nach der Registrierung der Anwendung erhalten wurde\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>client_secret\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>\u003Ccode>Client_secret\u003C\u002Fcode>, der nach der Registrierung der Anwendung erhalten wurde\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>redirect_uri\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Adresse, an die der Client nach erfolgreicher Autorisierung weitergeleitet wird, muss mit der \u003Ccode>Redirect URL\u003C\u002Fcode> übereinstimmen, die Sie bei der Registrierung der Anwendung angegeben haben\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>code\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Autorisierungscode, der in der vorherigen Stufe erhalten wurde\u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Caside class=\"my-4 rounded-lg border p-4 text-sm leading-relaxed not-prose border-red-200 bg-red-50 text-red-950\" role=\"note\">\u003Cdiv class=\"openapi-callout-body [&_p:last-child]:mb-0 [&_p]:mb-2\">Da \u003Ccode>client_secret\u003C\u002Fcode>\n ein privater Schlüssel ist, wird nicht empfohlen, ihn im Frontend des Clients zu speichern. Für mehr Sicherheit muss er im Backend Ihrer Anwendung gespeichert werden. Um das Szenario mit dem Autorisierungscode zu implementieren, muss der vom Frontend erhaltene Code an das Backend Ihres Dienstes übergeben werden, und dieses muss sich dann an den Autorisierungsdienst wenden, um das Token zu erhalten.\u003C\u002Fdiv>\u003C\u002Faside>\u003Col start=\"4\">\n  \u003Cli>Als Ergebnis einer erfolgreichen Anfrage an \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken\u003C\u002Fcode> erhalten Sie eine JSON-Antwort, die die Felder \u003Ccode>access_token\u003C\u002Fcode>, \u003Ccode>refresh_token\u003C\u002Fcode> und \u003Ccode>expires_in\u003C\u002Fcode> enthält. Das Feld \u003Ccode>expires_in\u003C\u002Fcode> bestimmt die Anzahl der Sekunden bis zum Ablauf des Zugriffstokens, \u003Ccode>refresh_token\u003C\u002Fcode> wird verwendet, um das Zugriffstoken bei Ablauf zu aktualisieren.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Chr>\n\u003Ch4>\u003Cstrong>Autorisierung von Anfragen an die Onlinesim API und Token-Aktualisierung\u003C\u002Fstrong>\u003C\u002Fh4>\n\u003Cp>Zu allen Anfragen an die API muss der Header \u003Cstrong>Authorization: Bearer \u003Cem>\u003Ccode>access_token\u003C\u002Fcode>\u003C\u002Fem>\u003C\u002Fstrong> hinzugefügt werden.\nWenn als Antwort auf Ihre Anfrage \u003Ccode>ERROR_WRONG_KEY\u003C\u002Fcode> kam, müssen Sie das Token aktualisieren oder ein neues erhalten.\u003C\u002Fp>\n\u003Cpre language=\"json\">\u003Ccode class=\"language-json\">{\n  \"response\": \"ERROR_WRONG_KEY\"\n}\u003C\u002Fcode>\u003C\u002Fpre>\n\u003Cp>Um das Token zu aktualisieren, müssen Sie eine POST-Anfrage an \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Ftoken\u003C\u002Fcode> mit den Parametern \u003Ccode>grant_type\u003C\u002Fcode>, \u003Ccode>client_id\u003C\u002Fcode>, \u003Ccode>client_secret\u003C\u002Fcode> und \u003Ccode>refresh_token\u003C\u002Fcode> stellen. Für das Feld \u003Ccode>refresh_token\u003C\u002Fcode> muss der Wert verwendet werden, der in Schritt 4 erhalten wurde.\u003C\u002Fp>\n\u003Ch5>Parameterbeschreibung\u003C\u002Fh5>\n\u003Ctable>\n  \u003Cthead>\n    \u003Ctr>\n      \u003Cth>Parametername\u003C\u002Fth>\n      \u003Cth style=\"text-align:center\">Datentyp\u003C\u002Fth>\n      \u003Cth>Beschreibung\u003C\u002Fth>\n    \u003C\u002Ftr>\n  \u003C\u002Fthead>\n  \u003Ctbody>\n    \u003Ctr>\n      \u003Ctd>grant_type\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Sie müssen \u003Ccode>refresh_token\u003C\u002Fcode> angeben\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>client_id\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>\u003Ccode>client ID\u003C\u002Fcode>, den Sie bei der Registrierung der Anwendung erhalten haben\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>client_secret\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>\u003Ccode>client_secret\u003C\u002Fcode>, der bei der Registrierung der Anwendung erhalten wurde\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>refresh_token\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>\u003Ccode>refresh_token\u003C\u002Fcode> wurde zusammen mit \u003Ccode>access_token\u003C\u002Fcode> erhalten. Hat eine viel längere Lebensdauer und wird verwendet, um \u003Ccode>access_token\u003C\u002Fcode> zu aktualisieren\u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Cp>\u003Ca href=\"\">\u003C\u002Fa>\u003C\u002Fp>\n\u003Ch3>OAuth 2.0. Implicit Flow\u003C\u002Fh3>\n\u003Ch4>\u003Cstrong>Benutzerautorisierung und Token-Erhaltung\u003C\u002Fstrong>\u003C\u002Fh4>\n\u003Col>\n  \u003Cli>Autorisieren Sie den Client über eine GET-Anfrage an \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize\u003C\u002Fcode> mit den Parametern \u003Ccode>client_id\u003C\u002Fcode>, \u003Ccode>redirect_uri\u003C\u002Fcode>, \u003Ccode>response_type\u003C\u002Fcode>, \u003Ccode>scope\u003C\u002Fcode>, \u003Ccode>state\u003C\u002Fcode>:\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Ch5>Parameterbeschreibung\u003C\u002Fh5>\n\u003Ctable>\n  \u003Cthead>\n    \u003Ctr>\n      \u003Cth>Parametername\u003C\u002Fth>\n      \u003Cth style=\"text-align:center\">Datentyp\u003C\u002Fth>\n      \u003Cth>Beschreibung\u003C\u002Fth>\n    \u003C\u002Ftr>\n  \u003C\u002Fthead>\n  \u003Ctbody>\n    \u003Ctr>\n      \u003Ctd>client_id\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>\u003Ccode>Client ID\u003C\u002Fcode>, der bei der Registrierung der Anwendung erhalten wurde\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>redirect_uri\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Adresse, an die der Client nach erfolgreicher Autorisierung weitergeleitet wird, muss mit der \u003Ccode>Redirect URL\u003C\u002Fcode> übereinstimmen, die Sie beim Hinzufügen der Anwendung angegeben haben.\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>response_type\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Verwenden Sie \u003Ccode>token\u003C\u002Fcode> als Wert\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>scope\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Zugriffsrechte, deren Genehmigung Ihre Anwendung vom Benutzer anfordert. Mögliche Optionen: \u003Ccode>sms-scope\u003C\u002Fcode>, \u003Ccode>rent-scope\u003C\u002Fcode>, \u003Ccode>free-scope\u003C\u002Fcode>. Mehrere Werte können angegeben werden\u003C\u002Ftd>\n    \u003C\u002Ftr>\n    \u003Ctr>\n      \u003Ctd>state\u003C\u002Ftd>\n      \u003Ctd style=\"text-align:center\">STRING\u003C\u002Ftd>\n      \u003Ctd>Zufällige Zeichenfolge zum Schutz vor CSRF (überprüfen Sie sie nach der Weiterleitung)\u003C\u002Ftd>\n    \u003C\u002Ftr>\n  \u003C\u002Ftbody>\n\u003C\u002Ftable>\n\u003Col start=\"2\">\n  \u003Cli>Nach der Anfrage an \u003Ccode>https:\u002F\u002Fonlinesim.io\u002Foauth\u002Fauthorize\u003C\u002Fcode> wird der Benutzer aus Ihrer Anwendung zur Autorisierungsseite weitergeleitet, wo er Benutzername und Passwort eingeben muss und bei Erfolg Ihre Anwendung für die Arbeit mit den Benutzerdaten im Onlinesim-Dienst autorisieren muss. Dazu muss er auf die Schaltfläche \u003Cem>\u003Ccode>Authorize\u003C\u002Fcode>\u003C\u002Fem> klicken:\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Cp>\u003Cimg src=\"\u002Fopenapi_docs\u002Fdocs\u002FOAuthRequest.png\" alt=\"OAuth-Anfrage\">\u003C\u002Fp>\n\u003Caside class=\"my-4 rounded-lg border p-4 text-sm leading-relaxed not-prose border-brand-200 bg-brand-50 text-brand-950\" role=\"note\">\u003Cdiv class=\"openapi-callout-body [&_p:last-child]:mb-0 [&_p]:mb-2\">Auf dieser Stufe können Sie den Parameter \u003Ccode>state\u003C\u002Fcode>\n überprüfen, um die sichere Interaktion mit dem Autorisierungsdienst zu bestätigen\u003C\u002Fdiv>\u003C\u002Faside>\u003Col start=\"3\">\n  \u003Cli>Bei erfolgreicher Autorisierung wird der Benutzer an die Adresse \u003Ccode>redirect_uri\u003C\u002Fcode> mit dem Parameter \u003Ccode>access_token\u003C\u002Fcode> weitergeleitet. Dies ist das erforderliche Token für die Autorisierung in der Onlinesim API.\u003C\u002Fli>\n\u003C\u002Fol>\n\u003Chr>\n\u003Ch3>\u003Cstrong>Autorisierung von Anfragen an die Onlinesim API\u003C\u002Fstrong>\u003C\u002Fh3>\n\u003Cp>Zu allen Anfragen an die API muss der Header \u003Cstrong>Authorization: Bearer \u003Cem>\u003Ccode>access_token\u003C\u002Fcode>\u003C\u002Fem>\u003C\u002Fstrong> hinzugefügt werden.\nWenn als Antwort auf Ihre Anfrage \u003Ccode>ERROR_WRONG_KEY\u003C\u002Fcode> kam, müssen Sie ein neues Token erhalten.\u003C\u002Fp>\n\u003Cpre language=\"json\">\u003Ccode class=\"language-json\">{\n  \"response\": \"ERROR_WRONG_KEY\"\n}\u003C\u002Fcode>\u003C\u002Fpre>",null,1789990228692]