createApiKey function
Create and store an API key.
Implementation
Future<String?> createApiKey({
required String accessToken,
HttpClient? httpClient,
}) async {
final config = getOauthConfig();
final client = httpClient ?? HttpClient();
try {
final request = await client.postUrl(Uri.parse(config.apiKeyUrl));
request.headers.set('Authorization', 'Bearer $accessToken');
request.headers.contentLength = 0;
final response = await request.close().timeout(const Duration(seconds: 15));
final responseBody = await response.transform(utf8.decoder).join();
final data = jsonDecode(responseBody) as Map<String, dynamic>;
return data['raw_key'] as String?;
} finally {
if (httpClient == null) client.close();
}
}