com.pubnub.api.services.AccessManagerService.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of pubnub-kotlin Show documentation
Show all versions of pubnub-kotlin Show documentation
PubNub is a cross-platform client-to-client (1:1 and 1:many) push service in the cloud, capable of
broadcasting real-time messages to millions of web and mobile clients simultaneously, in less than a quarter
second!
package com.pubnub.api.services
import com.pubnub.api.models.server.Envelope
import com.pubnub.api.models.server.access_manager.AccessManagerGrantPayload
import com.pubnub.api.models.server.access_manager.v3.GrantTokenResponse
import com.pubnub.api.models.server.access_manager.v3.RevokeTokenResponse
import retrofit2.Call
import retrofit2.http.Body
import retrofit2.http.DELETE
import retrofit2.http.GET
import retrofit2.http.POST
import retrofit2.http.Path
import retrofit2.http.QueryMap
internal interface AccessManagerService {
@GET("/v2/auth/grant/sub-key/{subKey}")
fun grant(
@Path("subKey") subKey: String,
@QueryMap options: Map
): Call>
@POST("/v3/pam/{subKey}/grant")
fun grantToken(
@Path("subKey") subKey: String?,
@Body body: Any?,
@QueryMap options: Map
): Call
@DELETE("/v3/pam/{subKey}/grant/{token}")
fun revokeToken(
@Path("subKey") subKey: String,
@Path("token", encoded = true) token: String,
@QueryMap queryParams: Map
): Call
}