Skip to end of metadata
Go to start of metadata

auth.login

Login using user name and password and returns session information. Application is not authorized to use this method by default.

Important

Login by HTTP protocol is deprecated. In order to secure user credentials transmission, all applications (as far as possible) must use or must switch to HTTPS protocol for current method.

Parameters
Name Required Type Description
user_name Y String User name
password Y String Password
gen_token N boolean Default : false. Generate permanent authentication token, which can be used with REST API - auth.loginByToken. Authentication token allows implementing Rememeber Me functionality without storing password in application. Token expires, when user changes password in the portal.
captcha_id N
String
The ID of captcha. The value for this parameter is returned as part of error 402. See section "Captcha support" below.
captcha_text
N
String
The text entered by human after he interprets captcha. See section "Captcha support" below.
Authorization
  • Must be invoked without session
Result

Result contains:

  • uid - logged user ID
  • session_key - public key of created session
  • session_secret_key - secret key for the created session
  • api_server - URL of the API server for the future calls
  • auth_token - authentication token for the future authentication without password. Expires, when password changes.
  • auth_sig - An MD5 hash of the user+session_key+application_secret_key. It can be used for the simplified verification of the logged in user by your application server (From 25.08.2010)
  • activated_profile - The profile of user is activated on portal (From 04.04.2012)
Captcha support

Sometimes login can be failed due to concerns that login is not performed by human. In this case following error is returned:

XML

Application when it receives this error should either:

  • to show error message from this response to user
  • or to process captcha:
    • show to the human user an image that is accessible by URL returned in parameter capcha_image_url
    • request the text interpretation from human user
    • call method auth.login again, passing both parameters - captcha_id and captcha_image_url.
Examples

Request : /auth/login?application_key=[Application Key]&sig=[Signature]&user_name=test&password=test_pwd&gen_token=true

XML
JSON
Labels:
None
Enter labels to add to this page:
Please wait 
Looking for a label? Just start typing.
  1. Jun 21, 2010

    Hi,

    I have a problem with logging in, it always throws 101 error (PARAM_API_KEY : Application not exist). I have registered application in sandbox and i use it's application key. My url is as following (username and pass aren't valid in this example):

    http://api.odnoklassniki.ru/api/auth/login?application_key=cbaqpfabababababa&sig=5adef8471f8756e803439a6439c5257c&user_name=testuser&password=testuserpass

    What could be wrong? Shall I use different api server for applications from sandbox? Did I misscalcullate signature (I tried it as it was given in Authentication and Authorization chapter)?

    Regards,

    Dawid.

    1. Jun 30, 2010

      Application registered in sandbox can call API methods on sandbox server only, while http://api.odnoklassniki.ru - is a production. Use http://api-sandbox.odnoklassniki.ru:8088

  2. Jul 26, 2010

    Добрый день. Интересует вопрос - как долго действует токен и будет ли он доступен в XML версии ответа на /auth/login?

    1. Aug 12, 2010

      Действует пока пользователь не сменит пароль. В XML он есть, дока исправлена

  3. Oct 05, 2010

    Добрый день. Для поддержки специальных символов в логине и пароле(.!#$%^&*()_-+) решили передавать параметры через POST-транзакцию. В результате получаем ошибку неверной сигнатуры.

    Линка запроса:

    POST буфер:

    Ответ:

    При этом приложение считает сигнатуру по строчке application_key=CBABGCABABABABABAmethod=auth.loginpassword=met6Dev6Rebuser_name=tesk_terrusAPPLICATION_SECRET

    1. Oct 06, 2010

      Там похоже перевод строки пришел

      1. Oct 07, 2010

        Спасибо, POST-транзакция заработала. Но логин со специальными символами не работает. Пользователю "q .!#$%^&*()_-+q" всё время возвращает AUTH_LOGIN : INVALID_CREDENTIALS. Логин/пароль сервер принимает правильно - проверили это имитацией ошибки сигнатуры.

        1. Oct 11, 2010

          По крайней мере для двух мобильных приложений auth_login с использованием спец-символов работает корректно. Проверьте пожалуйста encoding.

          1. Oct 12, 2010

            Спасибо, всё заработало.

  4. Feb 01, 2011

    При попытке авторизировать пользователя, выдает

    <ns2:error_response>
    <error_code>401</error_code>
    <error_msg>AUTH_LOGIN : Invalid user name or password</error_msg>
    </ns2:error_response>

    Хотя запрос правильные, делаем в песочницу. http://api-sandbox.odnoklassniki.ru:8088/api/auth/login?application_key=CBAQMIABABABABABA&sig=f406ed21b2e3dfec48d6f5ac50c20420&user_name=логин&password=пароль&gen_token=true

    1. Feb 02, 2011

      проверьте пожалуйста на наличие спецсимволов в логине. Возможно проблема с encoding.

      1. Feb 02, 2011

        GET запрос, все символы в логине и пароле - латиница.

  5. Apr 19, 2011

    Добрый день,

    При использовании продакшн сервера получаю ошибку с кодом 401, сообщение "AUTH_LOGIN : Application with ID [148480] not authorized to perform login". С sandbox никаких проблем.

    Спасибо, Павел

    1. Apr 21, 2011

      Вопрос закрыт. Решение - запрос в jira.

  6. Sep 19, 2011

    Метод валится с ошибкой 100 "PARAM : Missed required parameter: access_token"

    В "песочнице" авторизация проходит на ура.

    Параметр нигде не описан  и вообще не понятно, зачем он нужен при авторизации.

    Запрос вида https://api.odnoklassniki.ru/fb.do?format=json&application_key=GABBAGABBAHEY&sig=1234565&password=skipped&user_name=skipped&method=auth.login

    1. Sep 19, 2011

      данный application_key - неверный.

      1. Sep 19, 2011

        Он покоцаный, так же как и пароль с именем пользователя :) 

        Если важно,  вот запрос с AppKey 

        https://api.odnoklassniki.ru/fb.do?format=json&application_key=CBAOPBEBABABABABA&sig=skipped&password=skipped&user_name=skipped&method=auth.login

        Если задаю невалидный AppKey, то получаю ожидаемый  "App does not exist"

        Кто такой этот мифический access_token? По названию похоже это из OAuth и компании.

        ЗЫ http://en.wikipedia.org/wiki/Gabba_Gabba_Hey

        1. Sep 19, 2011

          вы для приложения с типом EXTERNAL (которое нужно создавать для Oauth) пытаетесь вызвать этот метод. Обьясните пожалуйста, зачем вам auth.login?

          1. Sep 19, 2011

            Из документации не очевидно, что для приложений EXTЕRNAL auth.login не работает ;-)

            OAuth для нужд моего приложения подходит горазду лучше, спасибо за наводку.

  7. Sep 24, 2011

    Как долго можно используя session_key выполнять запросы?

  8. Dec 02, 2011

    Как нужно зарегистрировать приложение, чтобы была доступна эта функция?

    И еще вопрос, при многократных попытках авторизации (например, 16 попыток подряд) будет ли это принято за брутфорс и выполнена какая-либо блокировка? Что нужно сделать, чтобы избежать этого (временные интервалы и т.п.)?

  9. Mar 10, 2012

    Как и где в одноклассниках правильно создавать приложения что бы получить наконец application_key=[Application Key] этот параметр?

    1. Mar 12, 2012

      Причём application_key в методе auth.login?

      Application_key = Public key, который приходит на емайл при создании приложения. Права разработчика выдаются после заполнения формы http://dev.odnoklassniki.ru/wiki/pages/viewpage.action?pageId=13992188, если речь идёт про OAuth.

  10. Mar 15, 2012

    Скажите, пожалуйста, uid пользователя в игре (logged user ID) является уникальным в рамках только игры, или он уникальный в целом в Одноклассниках по всем приложениям и играм? Мы столкнулись с тем, что в двух наших разных приложениях у двух разных пользователей одинаковый uid. Хотим понять это нормально, или какой-то баг.

    1. Mar 15, 2012

      отпишите пожалуйста shortname этих игр, и id пользователей.

      1. Mar 15, 2012

        Shortname  profile no. в Одноклассниках

        astrochat         40773928344 

        sovmest           43687727229 

        обоим пользователям оба приложения возвращают один uid 14322308581

  11. Apr 02, 2012

    Здравствуйте! Я зарегистрировал приложение, получил необходимые ключи. Но воспользоваться REST API не удается. Все время AUTH_LOGIN : Application with ID [61651456] not authorized to perform login независимо от типа приложения. Application ID: 61651456

    1. Apr 02, 2012

      в ближайшее время мы будем отказыватся от этого метода. Используйте пожалуйста авторизацию через OAuth - http://dev.odnoklassniki.ru/wiki/pages/viewpage.action?pageId=12878032

      1. Apr 24, 2012

        То есть OAuth будет основным (и единственным) методом авторизации? Очень хорошо.

        Как я понял, OAuth сейчас работает только с EXTERNAL приложениями. Скажите, пожалуйста, есть надежда, что будут показываться аваторки во внешних приложениях при авторизации по OAuth? Или пока даунгрейдиться на auth.login?

        1. Apr 24, 2012

          занимаемся решением этой проблемы, единственное не могу пока сказать точную дату когда именно это будет реализовано