MadelineProto/old_docs/API_docs_v46/methods/invokeWithLayer.md
Daniil Gentili 3152a8c466 docufix
2017-11-15 12:07:42 +00:00

90 lines
1.9 KiB
Markdown

---
title: invokeWithLayer
description: invokeWithLayer parameters, return type and example
---
## Method: invokeWithLayer
[Back to methods index](index.md)
### Parameters:
| Name | Type | Required |
|----------|---------------|----------|
|layer|[int](../types/int.md) | Yes|
|query|[!X](../types/!X.md) | Yes|
### Return type: [X](../types/X.md)
### Can bots use this method: **YES**
### Errors this method can return:
| Error | Description |
|----------|---------------|
|AUTH_BYTES_INVALID|The provided authorization is invalid|
|CDN_METHOD_INVALID|You can't call this method in a CDN DC|
|CONNECTION_API_ID_INVALID|The provided API id is invalid|
|CONNECTION_DEVICE_MODEL_EMPTY|Device model empty|
|CONNECTION_LANG_PACK_INVALID|Language pack invalid|
|CONNECTION_SYSTEM_EMPTY|Connection system empty|
|INPUT_LAYER_INVALID|The provided layer is invalid|
|INVITE_HASH_EXPIRED|The invite link has expired|
|CHAT_WRITE_FORBIDDEN|You can't write in this chat|
### Example:
```
$MadelineProto = new \danog\MadelineProto\API();
if (isset($token)) { // Login as a bot
$MadelineProto->bot_login($token);
}
if (isset($number)) { // Login as a user
$sentCode = $MadelineProto->phone_login($number);
echo 'Enter the code you received: ';
$code = '';
for ($x = 0; $x < $sentCode['type']['length']; $x++) {
$code .= fgetc(STDIN);
}
$MadelineProto->complete_phone_login($code);
}
$X = $MadelineProto->invokeWithLayer(['layer' => int, 'query' => !X, ]);
```
Or, if you're using the [PWRTelegram HTTP API](https://pwrtelegram.xyz):
### As a bot:
POST/GET to `https://api.pwrtelegram.xyz/botTOKEN/madeline`
Parameters:
* method - invokeWithLayer
* params - `{"layer": int, "query": !X, }`
### As a user:
POST/GET to `https://api.pwrtelegram.xyz/userTOKEN/invokeWithLayer`
Parameters:
layer - Json encoded int
query - Json encoded !X
Or, if you're into Lua:
```
X = invokeWithLayer({layer=int, query=!X, })
```