TelegramApi

sealed class TelegramApi<R : Any>(source)

A Telegram Method.

All methods in the Bot API are case-insensitive. We support GET and POST HTTP methods. Use either URL query string or application/json or application/x-www-form-urlencoded or multipart/form-data for passing parameters in Bot API requests. On successful call, a JSON-object containing the result will be returned.

Use requestRaw to request an API with method.

Author

ForteScarlet

See also

Inheritors

Constructors

Link copied to clipboard
protected constructor()

Properties

Link copied to clipboard
abstract val body: Any?

The request body (or null).

Link copied to clipboard

A special deserialization for body. If it is null, then try to 'guess' the body serializer. This is usually overridden when the body is not null and you need to customize its serializer.

Link copied to clipboard
open val headers: Headers

Headers for request. Default is Headers.Empty.

Link copied to clipboard
abstract val name: String

The method name.

Link copied to clipboard

The result's DeserializationStrategy of this Method.

Inherited functions

Link copied to clipboard
suspend fun <R : Any> TelegramApi<R>.requestData(client: HttpClient, token: String, server: Url?): R
suspend fun <R : Any> TelegramApi<R>.requestData(client: HttpClient, token: String, server: String? = null): R

Request the TelegramApi by client with token.

Link copied to clipboard
suspend fun TelegramApi<*>.requestRaw(client: HttpClient, token: String, server: Url?): HttpResponse
suspend fun TelegramApi<*>.requestRaw(client: HttpClient, token: String, server: String? = null): HttpResponse

Request the TelegramApi by client with token.

Link copied to clipboard
suspend fun <R : Any> TelegramApi<R>.requestResult(client: HttpClient, token: String, server: Url?): TelegramApiResult<R>
suspend fun <R : Any> TelegramApi<R>.requestResult(client: HttpClient, token: String, server: String? = null): TelegramApiResult<R>

Request the TelegramApi by client with token.