pushRaw method
- @experimental
- required String token,
Receive notifications from 3rd parties.
This method and the response it returns is experimental. The API might change without a major version bump.
Returns a Future containing a DynamiteRawResponse with the raw HttpClientResponse and serialization helpers. Throws a DynamiteApiException if the API call does not return an expected status code.
Status codes:
- 201: Notification pushed successfully
See:
- push for an operation that returns a DynamiteResponse with a stable API.
Implementation
@experimental
DynamiteRawResponse<PushResponseApplicationJson, void> pushRaw({required String token}) {
final _parameters = <String, dynamic>{};
final _headers = <String, String>{
'Accept': 'application/json',
};
// coverage:ignore-start
final authentication = authentications.firstWhereOrNull(
(auth) => switch (auth) {
DynamiteHttpBasicAuthentication() => true,
_ => false,
},
);
if (authentication != null) {
_headers.addAll(
authentication.headers,
);
} else {
throw Exception('Missing authentication for basic_auth');
}
// coverage:ignore-end
final $token = jsonSerializers.serialize(token, specifiedType: const FullType(String));
_parameters['token'] = $token;
final _path = UriTemplate('/index.php/apps/uppush/push/{token}').expand(_parameters);
return DynamiteRawResponse<PushResponseApplicationJson, void>(
response: executeRequest(
'post',
_path,
_headers,
null,
const {201},
),
bodyType: const FullType(PushResponseApplicationJson),
headersType: null,
serializers: jsonSerializers,
);
}