com.lithic.api.services.async.AuthRuleServiceAsync.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of lithic-kotlin-core Show documentation
Show all versions of lithic-kotlin-core Show documentation
The Lithic Developer API is designed to provide a predictable programmatic
interface for accessing your Lithic account through an API and transaction
webhooks. Note that your API key is a secret and should be treated as such.
Don't share it with anyone, including us. We will never ask you for it.
// File generated from our OpenAPI spec by Stainless.
@file:Suppress("OVERLOADS_INTERFACE") // See https://youtrack.jetbrains.com/issue/KT-36102
package com.lithic.api.services.async
import com.lithic.api.core.RequestOptions
import com.lithic.api.models.AuthRule
import com.lithic.api.models.AuthRuleApplyParams
import com.lithic.api.models.AuthRuleCreateParams
import com.lithic.api.models.AuthRuleListPageAsync
import com.lithic.api.models.AuthRuleListParams
import com.lithic.api.models.AuthRuleRemoveParams
import com.lithic.api.models.AuthRuleRemoveResponse
import com.lithic.api.models.AuthRuleRetrieveParams
import com.lithic.api.models.AuthRuleRetrieveResponse
import com.lithic.api.models.AuthRuleUpdateParams
interface AuthRuleServiceAsync {
/**
* Creates an authorization rule (Auth Rule) and applies it at the program, account, or card
* level.
*/
suspend fun create(
params: AuthRuleCreateParams,
requestOptions: RequestOptions = RequestOptions.none()
): AuthRule
/**
* Detail the properties and entities (program, accounts, and cards) associated with an existing
* authorization rule (Auth Rule).
*/
suspend fun retrieve(
params: AuthRuleRetrieveParams,
requestOptions: RequestOptions = RequestOptions.none()
): AuthRuleRetrieveResponse
/** Update the properties associated with an existing authorization rule (Auth Rule). */
suspend fun update(
params: AuthRuleUpdateParams,
requestOptions: RequestOptions = RequestOptions.none()
): AuthRule
/** Return all of the Auth Rules under the program. */
suspend fun list(
params: AuthRuleListParams,
requestOptions: RequestOptions = RequestOptions.none()
): AuthRuleListPageAsync
/** Applies an existing authorization rule (Auth Rule) to an program, account, or card level. */
suspend fun apply(
params: AuthRuleApplyParams,
requestOptions: RequestOptions = RequestOptions.none()
): AuthRule
/**
* Remove an existing authorization rule (Auth Rule) from an program, account, or card-level.
*/
suspend fun remove(
params: AuthRuleRemoveParams,
requestOptions: RequestOptions = RequestOptions.none()
): AuthRuleRemoveResponse
}