generateAppleClientSecret method

Future<void> generateAppleClientSecret(
  1. String clientId,
  2. String teamId,
  3. String keyId,
  4. String privateKey,
  5. int duration, {
  6. Map<String, dynamic> body = const {},
  7. Map<String, dynamic> query = const {},
  8. Map<String, String> headers = const {},
})

Generates a new Apple OAuth2 client secret.

Implementation

Future<void> generateAppleClientSecret(
  String clientId,
  String teamId,
  String keyId,
  String privateKey,
  int duration, {
  Map<String, dynamic> body = const {},
  Map<String, dynamic> query = const {},
  Map<String, String> headers = const {},
}) {
  final enrichedBody = Map<String, dynamic>.of(body);
  enrichedBody["clientId"] ??= clientId;
  enrichedBody["teamId"] ??= teamId;
  enrichedBody["keyId"] ??= keyId;
  enrichedBody["privateKey"] ??= privateKey;
  enrichedBody["duration"] ??= duration;

  return client
      .send(
        "/api/settings/apple/generate-client-secret",
        method: "POST",
        body: enrichedBody,
        query: query,
        headers: headers,
      )
      .then((data) =>
          AppleClientSecret.fromJson(data as Map<String, dynamic>? ?? {}));
}