createNewContact method
Creates new contact for inbox with inboxIdentifier
and passes user
body to be linked to created contact
Implementation
@override
Future<SolevatoContact> createNewContact(
String inboxIdentifier, SolevatoUser? user) async {
try {
CancelToken cancelToken = CancelToken();
final createResponse = await _dio.post(
"/public/api/v1/inboxes/$inboxIdentifier/contacts",
data: user?.toJson(),
cancelToken: cancelToken);
if ((createResponse.statusCode ?? 0).isBetween(199, 300)) {
//creating contact successful continue with request
final contact = SolevatoContact.fromJson(createResponse.data);
debugPrint(
'solevato-client-service: contact created: $contact - $createResponse');
return contact;
} else {
throw SolevatoClientException(
createResponse.statusMessage ?? "unknown error",
SolevatoClientExceptionType.CREATE_CONTACT_FAILED);
}
} on DioError catch (e) {
debugPrint('Error creating contact: ${e.message} - ${e.requestOptions.uri}');
throw SolevatoClientException(
e.message, SolevatoClientExceptionType.CREATE_CONTACT_FAILED);
}
}