create method

Future<AuthScimConnectionCreation> create({
  1. required String organizationId,
  2. required String name,
  3. required String provisioningDomainId,
  4. required Iterable<AuthScimScope> scopes,
  5. required String credentialName,
  6. required String idempotencyKey,
  7. DateTime? expiresAt,
})

Creates a managed SCIM connection and returns its one-time credential.

Implementation

Future<AuthScimConnectionCreation> create({
  required String organizationId,
  required String name,
  required String provisioningDomainId,
  required Iterable<AuthScimScope> scopes,
  required String credentialName,
  required String idempotencyKey,
  DateTime? expiresAt,
}) async => AuthScimConnectionCreation.fromJson(
  await _post(
    const AuthRoutePath('/scim/connections/create'),
    <String, dynamic>{
      'organizationId': organizationId,
      'name': name,
      'provisioningDomainId': provisioningDomainId,
      'scopes': scopes.map((value) => value.name).toList(growable: false),
      'credentialName': credentialName,
      'idempotencyKey': idempotencyKey,
      if (expiresAt != null) 'expiresAt': expiresAt.toUtc().toIso8601String(),
    },
  ),
);