fetchFeatureRequests

suspend fun fetchFeatureRequests(userToken: String, limit: Int = 50, offset: Int = 0, versionId: String? = null, query: String? = null): ListFeatureRequestsResult(source)

Fetches a paginated list of public feature requests from GET /api/v1/feature-requests.

Each returned FeatureRequestItem is annotated with the caller's vote status (FeatureRequestItem.hasVoted) and creator status (FeatureRequestItem.isOwnRequest), derived from the provided userToken.

Return

ListFeatureRequestsResult containing the list of requests and total match count.

Parameters

userToken

Stable anonymous user token from UserTokenStore.

limit

Maximum number of requests to return per page; default is 50.

offset

Number of requests to skip for pagination; default is 0.

versionId

Optional AppVersion.id to restrict results to a specific release target.

query

Optional free-text search query matching against titles and descriptions.

Throws

on network failure or parsing errors.

Example:

val result = client.fetchFeatureRequests(
userToken = userToken,
query = "dark mode",
limit = 20
)
println("Found ${result.total} matching requests")
result.requests.forEach { item ->
println("${item.title} (${item.voteCount} votes)")
}