---
metadata:
  - name: generator
    content: Diplodoc Platform v5.44.0
alternate:
  - https://yandex.com/dev/id/doc/en/mobileauthsdk/ios/sdk-ios-main.md
  - https://yandex.com/dev/id/doc/ru/mobileauthsdk/ios/sdk-ios-main.md
---
> **Documentation Index:** Fetch the complete configuration index at https://yandex.com/dev/id/doc/ru/llms.txt


# LoginSDK для iOS

Чтобы настроить в вашем сервисе авторизацию при помощи LoginSDK, выполните шаги:

1. [Зарегистрируйте](https://yandex.com/dev/id/doc/ru/register-client.md) приложение в сервисе [Яндекс OAuth](https://oauth.yandex.ru/).

   В разделе **Платформы** выберите **iOS-приложение** и укажите параметры вашего сервиса:
         
   * **iOS App ID**. Точный идентификатор iOS-приложения, например `A1B2C3D4E5.com.domain.application`. Состоит из Prefix и Bundle ID. Подробнее про идентификаторы iOS-приложений читайте в [документации Apple](https://developer.apple.com/library/content/documentation/General/Conceptual/DevPedia-CocoaCore/AppID.html).

   * **iOS AppStore URL**. Ссылка на приложение в AppStore.

   Для настройки LoginSDK вам понадобится [параметр **Client ID**](https://yandex.com/dev/id/doc/ru/register-client.md#app-params) приложения.

1. [Подключите](https://yandex.com/dev/id/doc/ru/mobileauthsdk/ios/archive/3.0.0/sdk-ios-install.md) библиотеку YandexLoginSDK и настройте конфигурационные файлы.

1. [Настройте](https://yandex.com/dev/id/doc/ru/mobileauthsdk/ios/archive/3.0.0/sdk-ios-use.md) ваш сервис для работы с токенами.

1. Получите [информацию о пользователе](https://yandex.com/dev/id/doc/ru/user-information.md).

{% note info %}

LoginSDK для iOS позволяет сохранять токены в хранилище устройства. При вызове LoginSDK проверяет наличие сохраненных токенов и отправляет запрос авторизации только в том случае, если токенов нет.

{% endnote %}


Схема работы LoginSDK для iOS:

```mermaid
flowchart TD
    A[Начало авторизации] --> B[Существуют ли токены в хранилище?]
    B -->|Нет|D[Какая выбрана стратегия авторизации?]
    D -->|.default|E[Есть ли на устройстве приложения Яндекса, поддерживающие авторизацию?]
    D -->|.webOnly|F[Открывается SafariViewController]
    E -->|Да|G[Авторизация в приложении Яндекса]
    E -->|Нет|F
    F --> H[Подтверждает ли пользователь авторизацию?]
    G --> H
    H -->|Нет|I[LoginSDK сообщает приложению о возникшей ошибке]
    B -->|Да|C[Приложение получает OAuth-токен и JSON Web Token]
    H -->|Да|C

    linkStyle 1,5,8 stroke:#ff3333,stroke-width:2px;
    linkStyle 4,9,10 stroke:#33ff33,stroke-width:2px;
```

