mirror of
https://codeberg.org/shroff/phylum.git
synced 2026-01-14 16:10:13 -06:00
30 lines
830 B
Dart
30 lines
830 B
Dart
import 'dart:typed_data';
|
|
|
|
import 'package:http/http.dart';
|
|
import 'package:offtheline/offtheline.dart';
|
|
import 'package:phylum/util/time.dart';
|
|
|
|
class GenerateApiKeyRequest extends ApiRequest {
|
|
final String description;
|
|
final DateTime? expires;
|
|
final List<String> scopes;
|
|
|
|
GenerateApiKeyRequest({required this.description, required this.expires, required this.scopes});
|
|
|
|
@override
|
|
BaseRequest createRequest(ApiClient api, {Uint8List? data}) {
|
|
final uri = api.createUriBuilder('/api/v1/user/keys/generate');
|
|
final request = Request('post', uri.build());
|
|
final fields = <String, String>{
|
|
'description': description,
|
|
'scopes': scopes.join(','),
|
|
};
|
|
if (expires != null) {
|
|
fields['expires'] = expires!.formatServer();
|
|
}
|
|
request.bodyFields = fields;
|
|
|
|
return request;
|
|
}
|
|
}
|