searchSubscription method
Future<SubscriptionResponse>
searchSubscription({
- required SearchSubscriptionRequest request,
- String? authToken,
Searches for subscriptions. Results are ordered chronologically by subscription creation date. If the request specifies more than one location ID, the endpoint orders the result by location ID, and then by creation date within each location. If no locations are given in the query, all locations are searched.
You can also optionally specify customer_ids to search by customer. If left unset, all customers associated with the specified locations are returned. If the request specifies customer IDs, the endpoint orders results first by location, within location by customer ID, and within customer by subscription creation date.
Implementation
Future<SubscriptionResponse> searchSubscription({
required SearchSubscriptionRequest request,
String? authToken,
}) async {
authToken ??= authenticationService.getCachedToken()?.accessToken;
Map<String, String> headers = {
"Authorization": "Bearer ${authToken ?? ""}",
'Content-Type': 'application/json; charset=UTF-8',
'Accept': 'application/json',
};
Uri endpoint = Uri.https(
baseUrl, "/v2/subscriptions/search");
//print (endpoint.toString());
var response = await
http.post(endpoint, body: jsonEncode(request.toJson()), headers: headers);
if (response.statusCode == 200) {
print (jsonDecode(response.body));
return SubscriptionResponse.fromJson(jsonDecode(response.body));
}
else {
print (response.body);
throw SubscriptionException(statusCode: response.statusCode, message: SubscriptionResponse.fromJson(jsonDecode(response.body)).errors?[0].detail?.toString());
}
}