StartBotRequest
Only users can use this method. See code examples.
---functions--- messages.startBot#e6df7378 bot:InputUser peer:InputPeer random_id:long start_param:string = Updates
Returns
| Updates | 
This type can be an instance of either:
| UpdateShort | UpdateShortChatMessage | 
| UpdateShortMessage | UpdateShortSentMessage | 
| Updates | UpdatesCombined | 
| UpdatesTooLong | 
Parameters
| bot | InputUser | Anything entity-like will work if the library can find its Inputversion (e.g., usernames,Peer,UserorChannelobjects, etc.). | 
| peer | InputPeer | Anything entity-like will work if the library can find its Inputversion (e.g., usernames,Peer,UserorChannelobjects, etc.). | 
| start_param | string | |
| random_id | long | If left unspecified, it will be inferred automatically. | 
Known RPC errors
This request can cause 4 known errors:
| BotInvalidError | This is not a valid bot. | 
| PeerIdInvalidError | An invalid Peer was used. Make sure to pass the right peer type and that the value is valid (for instance, bots cannot start conversations). | 
| StartParamEmptyError | The start parameter is empty. | 
| StartParamInvalidError | Start parameter invalid. | 
You can import these from telethon.errors.
Example
from telethon.sync import TelegramClient
from telethon import functions, types
with TelegramClient(name, api_id, api_hash) as client:
    result = client(functions.messages.StartBotRequest(
        bot='username',
        peer='username',
        start_param='some string here'
    ))
    print(result.stringify())