MadelineProto/old_docs/API_docs_v73/methods/auth_bindTempAuthKey.md
Daniil Gentili e4a326e552
Http refactor (#307)
* refactor

* Apply fixes from StyleCI

* Implement https and http transport, add support for new req_pq_multi, send pending acks and objects in containers along with the next method call, remove dependency on the socket extension.

* Apply fixes from StyleCI

* Make types with empty constructors optional, fix phar archives (fixes #217)

* Apply fixes from StyleCI

* Update to layer 75

* Update github pages gemfile.lock
2018-02-18 14:18:18 +01:00

2.1 KiB

title description
auth.bindTempAuthKey auth.bindTempAuthKey parameters, return type and example

Method: auth.bindTempAuthKey

Back to methods index

Parameters:

Name Type Required
perm_auth_key_id long Yes
nonce long Yes
expires_at int Yes
encrypted_message bytes Yes

Return type: Bool

Can bots use this method: YES

Errors this method can return:

Error Description
ENCRYPTED_MESSAGE_INVALID Encrypted message invalid
INPUT_REQUEST_TOO_LONG The request is too big
TEMP_AUTH_KEY_EMPTY No temporary auth key provided
Timeout A timeout occurred while fetching data from the bot

Example:

$MadelineProto = new \danog\MadelineProto\API();
$MadelineProto->session = 'mySession.madeline';
if (isset($token)) { // Login as a bot
    $MadelineProto->bot_login($token);
}
if (isset($number)) { // Login as a user
    $MadelineProto->phone_login($number);
    $code = readline('Enter the code you received: '); // Or do this in two separate steps in an HTTP API
    $MadelineProto->complete_phone_login($code);
}

$Bool = $MadelineProto->auth->bindTempAuthKey(['perm_auth_key_id' => long, 'nonce' => long, 'expires_at' => int, 'encrypted_message' => 'bytes', ]);

Or, if you're using the PWRTelegram HTTP API:

As a bot:

POST/GET to https://api.pwrtelegram.xyz/botTOKEN/madeline

Parameters:

  • method - auth.bindTempAuthKey
  • params - {"perm_auth_key_id": long, "nonce": long, "expires_at": int, "encrypted_message": "bytes", }

As a user:

POST/GET to https://api.pwrtelegram.xyz/userTOKEN/auth.bindTempAuthKey

Parameters:

perm_auth_key_id - Json encoded long

nonce - Json encoded long

expires_at - Json encoded int

encrypted_message - Json encoded bytes

Or, if you're into Lua:

Bool = auth.bindTempAuthKey({perm_auth_key_id=long, nonce=long, expires_at=int, encrypted_message='bytes', })