outgoingWebhookUpdate method
Future<Response<V0AppWebhookResponseModel> >
outgoingWebhookUpdate({
- required String appSlug,
- required String appWebhookSlug,
- required V0AppWebhookUpdateParams appWebhookUpdateParams,
- CancelToken? cancelToken,
- Map<
String, dynamic> ? headers, - Map<
String, dynamic> ? extra, - ValidateStatus? validateStatus,
- ProgressCallback? onSendProgress,
- ProgressCallback? onReceiveProgress,
Update an outgoing webhook of an app
Update an existing outgoing webhook (URL, events, secrets and headers) for a specified Bitrise app. Even if you do not want to change one of the parameters, you still have to provide that parameter as well: simply use its existing value.
Implementation
Future<Response<V0AppWebhookResponseModel>> outgoingWebhookUpdate({
required String appSlug,
required String appWebhookSlug,
required V0AppWebhookUpdateParams appWebhookUpdateParams,
CancelToken? cancelToken,
Map<String, dynamic>? headers,
Map<String, dynamic>? extra,
ValidateStatus? validateStatus,
ProgressCallback? onSendProgress,
ProgressCallback? onReceiveProgress,
}) async {
final _path = r'/apps/{app-slug}/outgoing-webhooks/{app-webhook-slug}'.replaceAll('{' r'app-slug' '}', appSlug.toString()).replaceAll('{' r'app-webhook-slug' '}', appWebhookSlug.toString());
final _options = Options(
method: r'PUT',
headers: <String, dynamic>{
...?headers,
},
extra: <String, dynamic>{
'secure': <Map<String, String>>[
{
'type': 'apiKey',
'name': 'PersonalAccessToken',
'keyName': 'Authorization',
'where': 'header',
},
],
...?extra,
},
contentType: [
'application/json',
].first,
validateStatus: validateStatus,
);
final _queryParameters = <String, dynamic>{
};
dynamic _bodyData;
try {
const _type = FullType(V0AppWebhookUpdateParams);
_bodyData = _serializers.serialize(appWebhookUpdateParams, specifiedType: _type);
} catch(error) {
throw DioError(
requestOptions: _options.compose(
_dio.options,
_path,
queryParameters: _queryParameters,
),
type: DioErrorType.other,
error: error,
);
}
final _response = await _dio.request<Object>(
_path,
data: _bodyData,
options: _options,
queryParameters: _queryParameters,
cancelToken: cancelToken,
onSendProgress: onSendProgress,
onReceiveProgress: onReceiveProgress,
);
V0AppWebhookResponseModel _responseData;
try {
const _responseType = FullType(V0AppWebhookResponseModel);
_responseData = _serializers.deserialize(
_response.data!,
specifiedType: _responseType,
) as V0AppWebhookResponseModel;
} catch (error) {
throw DioError(
requestOptions: _response.requestOptions,
response: _response,
type: DioErrorType.other,
error: error,
);
}
return Response<V0AppWebhookResponseModel>(
data: _responseData,
headers: _response.headers,
isRedirect: _response.isRedirect,
requestOptions: _response.requestOptions,
redirects: _response.redirects,
statusCode: _response.statusCode,
statusMessage: _response.statusMessage,
extra: _response.extra,
);
}