diff --git a/lib/logic/api_maps/rest_maps/server_providers/hetzner/hetzner_api.dart b/lib/logic/api_maps/rest_maps/server_providers/hetzner/hetzner_api.dart index 9b8fd30b..f0f87bce 100644 --- a/lib/logic/api_maps/rest_maps/server_providers/hetzner/hetzner_api.dart +++ b/lib/logic/api_maps/rest_maps/server_providers/hetzner/hetzner_api.dart @@ -343,7 +343,7 @@ class HetznerApi extends ServerProviderApi with VolumeProviderApi { ); } - Future createServer({ + Future> createServer({ required final String dnsApiToken, required final String dnsProviderType, required final String serverApiToken, @@ -357,6 +357,7 @@ class HetznerApi extends ServerProviderApi with VolumeProviderApi { }) async { final String stagingAcme = StagingOptions.stagingAcme ? 'true' : 'false'; Response? serverCreateResponse; + HetznerServerInfo? serverInfo; DioError? hetznerError; bool success = false; @@ -383,6 +384,9 @@ class HetznerApi extends ServerProviderApi with VolumeProviderApi { print('Decoded data: $data'); serverCreateResponse = await client.post('/servers', data: data); + serverInfo = HetznerServerInfo.fromJson( + serverCreateResponse.data['server'], + ); success = true; } on DioError catch (e) { print(e); @@ -400,7 +404,7 @@ class HetznerApi extends ServerProviderApi with VolumeProviderApi { } return GenericResult( - data: serverCreateResponse?.data, + data: serverInfo, success: success && hetznerError == null, code: serverCreateResponse?.statusCode ?? hetznerError?.response?.statusCode, diff --git a/lib/logic/providers/server_providers/hetzner.dart b/lib/logic/providers/server_providers/hetzner.dart index b9a3bbc8..c74b83cc 100644 --- a/lib/logic/providers/server_providers/hetzner.dart +++ b/lib/logic/providers/server_providers/hetzner.dart @@ -526,8 +526,8 @@ class HetznerServerProvider extends ServerProvider { } final serverDetails = ServerHostingDetails( - id: serverResult.data['server']['id'], - ip4: serverResult.data['server']['public_net']['ipv4']['ip'], + id: serverResult.data!.id, + ip4: serverResult.data!.publicNet.ipv4!.ip, createTime: DateTime.now(), volume: ServerVolume( id: volume.id,