createDataset method

Future<CreateDatasetResponse> createDataset({
  1. required String datasetTitle,
  2. required DatasetKind kind,
  3. required PermissionGroupParams permissionGroupParams,
  4. String? alias,
  5. String? clientToken,
  6. String? datasetDescription,
  7. DatasetOwnerInfo? ownerInfo,
  8. SchemaUnion? schemaDefinition,
})

Creates a new FinSpace Dataset.

May throw AccessDeniedException. May throw ConflictException. May throw InternalServerException. May throw LimitExceededException. May throw ResourceNotFoundException. May throw ThrottlingException. May throw ValidationException.

Parameter datasetTitle : Display title for a FinSpace Dataset.

Parameter kind : The format in which Dataset data is structured.

  • TABULAR – Data is structured in a tabular format.
  • NON_TABULAR – Data is structured in a non-tabular format.

Parameter permissionGroupParams : Permission group parameters for Dataset permissions.

Parameter alias : The unique resource identifier for a Dataset.

Parameter clientToken : A token that ensures idempotency. This token expires in 10 minutes.

Parameter datasetDescription : Description of a Dataset.

Parameter ownerInfo : Contact information for a Dataset owner.

Parameter schemaDefinition : Definition for a schema on a tabular Dataset.

Implementation

Future<CreateDatasetResponse> createDataset({
  required String datasetTitle,
  required DatasetKind kind,
  required PermissionGroupParams permissionGroupParams,
  String? alias,
  String? clientToken,
  String? datasetDescription,
  DatasetOwnerInfo? ownerInfo,
  SchemaUnion? schemaDefinition,
}) async {
  final $payload = <String, dynamic>{
    'datasetTitle': datasetTitle,
    'kind': kind.value,
    'permissionGroupParams': permissionGroupParams,
    if (alias != null) 'alias': alias,
    'clientToken': clientToken ?? _s.generateIdempotencyToken(),
    if (datasetDescription != null) 'datasetDescription': datasetDescription,
    if (ownerInfo != null) 'ownerInfo': ownerInfo,
    if (schemaDefinition != null) 'schemaDefinition': schemaDefinition,
  };
  final response = await _protocol.send(
    payload: $payload,
    method: 'POST',
    requestUri: '/datasetsv2',
    exceptionFnMap: _exceptionFns,
  );
  return CreateDatasetResponse.fromJson(response);
}