35 lines
1.0 KiB
Kotlin
35 lines
1.0 KiB
Kotlin
package api
|
|
|
|
import model.CloudflareResult
|
|
import model.verifyToken.VerifyTokenResult
|
|
import model.zones.UpdateDnsBody
|
|
import model.zones.DnsResult
|
|
import model.zones.ZonesResult
|
|
import retrofit2.http.*
|
|
|
|
interface CloudflareApiService {
|
|
|
|
@GET("/client/v4/user/tokens/verify")
|
|
suspend fun getVerifyToken(
|
|
@Header("Authorization") token: String
|
|
): CloudflareResult<VerifyTokenResult>
|
|
|
|
@GET("/client/v4/zones")
|
|
suspend fun getZones(
|
|
@Header("Authorization") token: String
|
|
): CloudflareResult<ZonesResult>
|
|
|
|
@GET("/client/v4/zones/{ZONE_ID}/dns_records")
|
|
suspend fun getZoneDnsRecords(
|
|
@Header("Authorization") token: String,
|
|
@Path("ZONE_ID") zoneId: String
|
|
): CloudflareResult<List<DnsResult>>
|
|
|
|
@PUT("/client/v4/zones/{ZONE_ID}/dns_records/{RECORD_ID}")
|
|
suspend fun updateZoneDnsRecords(
|
|
@Header("Authorization") token: String,
|
|
@Path("ZONE_ID") zoneId: String,
|
|
@Path("RECORD_ID") recordId: String,
|
|
@Body body: UpdateDnsBody
|
|
): CloudflareResult<DnsResult>
|
|
} |