Skip to content

Commit 2afdc43

Browse files
committed
feat: add a new endpoint for deleting subscription by type
1 parent 2a8809c commit 2afdc43

2 files changed

Lines changed: 27 additions & 0 deletions

File tree

OneSignalSDK/onesignal/core/src/main/java/com/onesignal/user/internal/backend/ISubscriptionBackendService.kt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package com.onesignal.user.internal.backend
22

33
import com.onesignal.common.consistency.RywData
44
import com.onesignal.common.exceptions.BackendException
5+
import com.onesignal.user.internal.subscriptions.SubscriptionType
56

67
interface ISubscriptionBackendService {
78
/**
@@ -50,6 +51,20 @@ interface ISubscriptionBackendService {
5051
jwt: String? = null,
5152
)
5253

54+
/**
55+
* Delete an existing subscription by type
56+
*
57+
* @param appId The ID of the OneSignal application this subscription exists under.
58+
* @param subscriptionId The ID of the subscription to delete.
59+
* @param subscriptionType The type (Email or SMS) of the subscription to delete.
60+
*/
61+
suspend fun deleteSubscription(
62+
appId: String,
63+
subscriptionId: String,
64+
subscriptionType: SubscriptionType,
65+
jwt: String? = null,
66+
)
67+
5368
/**
5469
* Transfer an existing subscription to the user specified.
5570
*

OneSignalSDK/onesignal/core/src/main/java/com/onesignal/user/internal/backend/impl/SubscriptionBackendService.kt

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import com.onesignal.core.internal.http.IHttpClient
1010
import com.onesignal.core.internal.http.impl.OptionalHeaders
1111
import com.onesignal.user.internal.backend.ISubscriptionBackendService
1212
import com.onesignal.user.internal.backend.SubscriptionObject
13+
import com.onesignal.user.internal.subscriptions.SubscriptionType
1314
import org.json.JSONObject
1415

1516
internal class SubscriptionBackendService(
@@ -97,6 +98,17 @@ internal class SubscriptionBackendService(
9798
}
9899
}
99100

101+
override suspend fun deleteSubscription(
102+
appId: String,
103+
subscriptionId: String,
104+
subscriptionType: SubscriptionType,
105+
jwt: String?
106+
) {
107+
TODO("Not yet implemented")
108+
// the endpoint is DELETE /by/type/:type/token/:token/subscriptions
109+
110+
}
111+
100112
override suspend fun transferSubscription(
101113
appId: String,
102114
subscriptionId: String,

0 commit comments

Comments
 (0)