SDK for PHP 3.x

Client: Aws\FinSpaceData\FinSpaceDataClient
Service ID: finspace-data
Version: 2020-07-13

This page describes the parameters and results for the operations of the FinSpace Public API (2020-07-13), and shows how to use the Aws\FinSpaceData\FinSpaceDataClient object to call the described operations. This documentation is specific to the 2020-07-13 API version of the service.

Operation Summary

Each of the following operations can be created from a client using $client->getCommand('CommandName'), where "CommandName" is the name of one of the following operations. Note: a command is a value that encapsulates an operation and the parameters used to create an HTTP request.

You can also create and send a command immediately using the magic methods available on a client object: $client->commandName(/* parameters */). You can send the command asynchronously (returning a promise) by appending the word "Async" to the operation name: $client->commandNameAsync(/* parameters */).

AssociateUserToPermissionGroup ( array $params = [] )
Adds a user to a permission group to grant permissions for actions a user can perform in FinSpace.
CreateChangeset ( array $params = [] )
Creates a new Changeset in a FinSpace Dataset.
CreateDataView ( array $params = [] )
Creates a Dataview for a Dataset.
CreateDataset ( array $params = [] )
Creates a new FinSpace Dataset.
CreatePermissionGroup ( array $params = [] )
Creates a group of permissions for various actions that a user can perform in FinSpace.
CreateUser ( array $params = [] )
Creates a new user in FinSpace.
DeleteDataset ( array $params = [] )
Deletes a FinSpace Dataset.
DeletePermissionGroup ( array $params = [] )
Deletes a permission group.
DisableUser ( array $params = [] )
Denies access to the FinSpace web application and API for the specified user.
DisassociateUserFromPermissionGroup ( array $params = [] )
Removes a user from a permission group.
EnableUser ( array $params = [] )
Allows the specified user to access the FinSpace web application and API.
GetChangeset ( array $params = [] )
Get information about a Changeset.
GetDataView ( array $params = [] )
Gets information about a Dataview.
GetDataset ( array $params = [] )
Returns information about a Dataset.
GetExternalDataViewAccessDetails ( array $params = [] )
Returns the credentials to access the external Dataview from an S3 location.
GetPermissionGroup ( array $params = [] )
Retrieves the details of a specific permission group.
GetProgrammaticAccessCredentials ( array $params = [] )
Request programmatic credentials to use with FinSpace SDK.
GetUser ( array $params = [] )
Retrieves details for a specific user.
GetWorkingLocation ( array $params = [] )
A temporary Amazon S3 location, where you can copy your files from a source location to stage or use as a scratch space in FinSpace notebook.
ListChangesets ( array $params = [] )
Lists the FinSpace Changesets for a Dataset.
ListDataViews ( array $params = [] )
Lists all available Dataviews for a Dataset.
ListDatasets ( array $params = [] )
Lists all of the active Datasets that a user has access to.
ListPermissionGroups ( array $params = [] )
Lists all available permission groups in FinSpace.
ListPermissionGroupsByUser ( array $params = [] )
Lists all the permission groups that are associated with a specific user.
ListUsers ( array $params = [] )
Lists all available users in FinSpace.
ListUsersByPermissionGroup ( array $params = [] )
Lists details of all the users in a specific permission group.
ResetUserPassword ( array $params = [] )
Resets the password for a specified user ID and generates a temporary one.
UpdateChangeset ( array $params = [] )
Updates a FinSpace Changeset.
UpdateDataset ( array $params = [] )
Updates a FinSpace Dataset.
UpdatePermissionGroup ( array $params = [] )
Modifies the details of a permission group.
UpdateUser ( array $params = [] )
Modifies the details of the specified user.

Paginators

Paginators handle automatically iterating over paginated API results. Paginators are associated with specific API operations, and they accept the parameters that the corresponding API operation accepts. You can get a paginator from a client class using getPaginator($paginatorName, $operationParameters). This client supports the following paginators:

ListChangesets
ListDataViews
ListDatasets
ListPermissionGroups
ListUsers

Operations

AssociateUserToPermissionGroup

$result = $client->associateUserToPermissionGroup([/* ... */]);
$promise = $client->associateUserToPermissionGroupAsync([/* ... */]);

Adds a user to a permission group to grant permissions for actions a user can perform in FinSpace.

Parameter Syntax

$result = $client->associateUserToPermissionGroup([
    'clientToken' => '<string>',
    'permissionGroupId' => '<string>', // REQUIRED
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

permissionGroupId
Required: Yes
Type: string

The unique identifier for the permission group.

userId
Required: Yes
Type: string

The unique identifier for the user.

Result Syntax

[
    'statusCode' => <integer>,
]

Result Details

Members
statusCode
Type: int

The returned status code of the response.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ConflictException:

The request conflicts with an existing resource.

CreateChangeset

$result = $client->createChangeset([/* ... */]);
$promise = $client->createChangesetAsync([/* ... */]);

Creates a new Changeset in a FinSpace Dataset.

Parameter Syntax

$result = $client->createChangeset([
    'changeType' => 'REPLACE|APPEND|MODIFY', // REQUIRED
    'clientToken' => '<string>',
    'datasetId' => '<string>', // REQUIRED
    'formatParams' => ['<string>', ...], // REQUIRED
    'sourceParams' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
changeType
Required: Yes
Type: string

The option to indicate how a Changeset will be applied to a Dataset.

  • REPLACE – Changeset will be considered as a replacement to all prior loaded Changesets.

  • APPEND – Changeset will be considered as an addition to the end of all prior loaded Changesets.

  • MODIFY – Changeset is considered as a replacement to a specific prior ingested Changeset.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

datasetId
Required: Yes
Type: string

The unique identifier for the FinSpace Dataset where the Changeset will be created.

formatParams
Required: Yes
Type: Associative array of custom strings keys (StringMapKey) to strings

Options that define the structure of the source file(s) including the format type (formatType), header row (withHeader), data separation character (separator) and the type of compression (compression).

formatType is a required attribute and can have the following values:

  • PARQUET – Parquet source file format.

  • CSV – CSV source file format.

  • JSON – JSON source file format.

  • XML – XML source file format.

Here is an example of how you could specify the formatParams:

"formatParams": { "formatType": "CSV", "withHeader": "true", "separator": ",", "compression":"None" }

Note that if you only provide formatType as CSV, the rest of the attributes will automatically default to CSV values as following:

{ "withHeader": "true", "separator": "," }

For more information about supported file formats, see Supported Data Types and File Formats in the FinSpace User Guide.

sourceParams
Required: Yes
Type: Associative array of custom strings keys (StringMapKey) to strings

Options that define the location of the data being ingested (s3SourcePath) and the source of the changeset (sourceType).

Both s3SourcePath and sourceType are required attributes.

Here is an example of how you could specify the sourceParams:

"sourceParams": { "s3SourcePath": "s3://finspace-landing-us-east-2-bk7gcfvitndqa6ebnvys4d/scratch/wr5hh8pwkpqqkxa4sxrmcw/ingestion/equity.csv", "sourceType": "S3" }

The S3 path that you specify must allow the FinSpace role access. To do that, you first need to configure the IAM policy on S3 bucket. For more information, see Loading data from an Amazon S3 Bucket using the FinSpace API section.

Result Syntax

[
    'changesetId' => '<string>',
    'datasetId' => '<string>',
]

Result Details

Members
changesetId
Type: string

The unique identifier of the Changeset that is created.

datasetId
Type: string

The unique identifier for the FinSpace Dataset where the Changeset is created.

Errors

ResourceNotFoundException:

One or more resources can't be found.

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

CreateDataView

$result = $client->createDataView([/* ... */]);
$promise = $client->createDataViewAsync([/* ... */]);

Creates a Dataview for a Dataset.

Parameter Syntax

$result = $client->createDataView([
    'asOfTimestamp' => <integer>,
    'autoUpdate' => true || false,
    'clientToken' => '<string>',
    'datasetId' => '<string>', // REQUIRED
    'destinationTypeParams' => [ // REQUIRED
        'destinationType' => '<string>', // REQUIRED
        's3DestinationExportFileFormat' => 'PARQUET|DELIMITED_TEXT',
        's3DestinationExportFileFormatOptions' => ['<string>', ...],
    ],
    'partitionColumns' => ['<string>', ...],
    'sortColumns' => ['<string>', ...],
]);

Parameter Details

Members
asOfTimestamp
Type: long (int|float)

Beginning time to use for the Dataview. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

autoUpdate
Type: boolean

Flag to indicate Dataview should be updated automatically.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

datasetId
Required: Yes
Type: string

The unique Dataset identifier that is used to create a Dataview.

destinationTypeParams
Required: Yes
Type: DataViewDestinationTypeParams structure

Options that define the destination type for the Dataview.

partitionColumns
Type: Array of strings

Ordered set of column names used to partition data.

sortColumns
Type: Array of strings

Columns to be used for sorting the data.

Result Syntax

[
    'dataViewId' => '<string>',
    'datasetId' => '<string>',
]

Result Details

Members
dataViewId
Type: string

The unique identifier for the created Dataview.

datasetId
Type: string

The unique identifier of the Dataset used for the Dataview.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ThrottlingException:

The request was denied due to request throttling.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

ResourceNotFoundException:

One or more resources can't be found.

CreateDataset

$result = $client->createDataset([/* ... */]);
$promise = $client->createDatasetAsync([/* ... */]);

Creates a new FinSpace Dataset.

Parameter Syntax

$result = $client->createDataset([
    'alias' => '<string>',
    'clientToken' => '<string>',
    'datasetDescription' => '<string>',
    'datasetTitle' => '<string>', // REQUIRED
    'kind' => 'TABULAR|NON_TABULAR', // REQUIRED
    'ownerInfo' => [
        'email' => '<string>',
        'name' => '<string>',
        'phoneNumber' => '<string>',
    ],
    'permissionGroupParams' => [ // REQUIRED
        'datasetPermissions' => [
            [
                'permission' => '<string>',
            ],
            // ...
        ],
        'permissionGroupId' => '<string>',
    ],
    'schemaDefinition' => [
        'tabularSchemaConfig' => [
            'columns' => [
                [
                    'columnDescription' => '<string>',
                    'columnName' => '<string>',
                    'dataType' => 'STRING|CHAR|INTEGER|TINYINT|SMALLINT|BIGINT|FLOAT|DOUBLE|DATE|DATETIME|BOOLEAN|BINARY',
                ],
                // ...
            ],
            'primaryKeyColumns' => ['<string>', ...],
        ],
    ],
]);

Parameter Details

Members
alias
Type: string

The unique resource identifier for a Dataset.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

datasetDescription
Type: string

Description of a Dataset.

datasetTitle
Required: Yes
Type: string

Display title for a FinSpace Dataset.

kind
Required: Yes
Type: string

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.

ownerInfo
Type: DatasetOwnerInfo structure

Contact information for a Dataset owner.

permissionGroupParams
Required: Yes
Type: PermissionGroupParams structure

Permission group parameters for Dataset permissions.

schemaDefinition
Type: SchemaUnion structure

Definition for a schema on a tabular Dataset.

Result Syntax

[
    'datasetId' => '<string>',
]

Result Details

Members
datasetId
Type: string

The unique identifier for the created Dataset.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

ResourceNotFoundException:

One or more resources can't be found.

CreatePermissionGroup

$result = $client->createPermissionGroup([/* ... */]);
$promise = $client->createPermissionGroupAsync([/* ... */]);

Creates a group of permissions for various actions that a user can perform in FinSpace.

Parameter Syntax

$result = $client->createPermissionGroup([
    'applicationPermissions' => ['<string>', ...], // REQUIRED
    'clientToken' => '<string>',
    'description' => '<string>',
    'name' => '<string>', // REQUIRED
]);

Parameter Details

Members
applicationPermissions
Required: Yes
Type: Array of strings

The option to indicate FinSpace application permissions that are granted to a specific group.

When assigning application permissions, be aware that the permission ManageUsersAndGroups allows users to grant themselves or others access to any functionality in their FinSpace environment's application. It should only be granted to trusted users.

  • CreateDataset – Group members can create new datasets.

  • ManageClusters – Group members can manage Apache Spark clusters from FinSpace notebooks.

  • ManageUsersAndGroups – Group members can manage users and permission groups. This is a privileged permission that allows users to grant themselves or others access to any functionality in the application. It should only be granted to trusted users.

  • ManageAttributeSets – Group members can manage attribute sets.

  • ViewAuditData – Group members can view audit data.

  • AccessNotebooks – Group members will have access to FinSpace notebooks.

  • GetTemporaryCredentials – Group members can get temporary API credentials.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

description
Type: string

A brief description for the permission group.

name
Required: Yes
Type: string

The name of the permission group.

Result Syntax

[
    'permissionGroupId' => '<string>',
]

Result Details

Members
permissionGroupId
Type: string

The unique identifier for the permission group.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

CreateUser

$result = $client->createUser([/* ... */]);
$promise = $client->createUserAsync([/* ... */]);

Creates a new user in FinSpace.

Parameter Syntax

$result = $client->createUser([
    'apiAccess' => 'ENABLED|DISABLED',
    'apiAccessPrincipalArn' => '<string>',
    'clientToken' => '<string>',
    'emailAddress' => '<string>', // REQUIRED
    'firstName' => '<string>',
    'lastName' => '<string>',
    'type' => 'SUPER_USER|APP_USER', // REQUIRED
]);

Parameter Details

Members
apiAccess
Type: string

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

apiAccessPrincipalArn
Type: string

The ARN identifier of an AWS user or role that is allowed to call the GetProgrammaticAccessCredentials API to obtain a credentials token for a specific FinSpace user. This must be an IAM role within your FinSpace account.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

emailAddress
Required: Yes
Type: string

The email address of the user that you want to register. The email address serves as a uniquer identifier for each user and cannot be changed after it's created.

firstName
Type: string

The first name of the user that you want to register.

lastName
Type: string

The last name of the user that you want to register.

type
Required: Yes
Type: string

The option to indicate the type of user. Use one of the following options to specify this parameter:

  • SUPER_USER – A user with permission to all the functionality and data in FinSpace.

  • APP_USER – A user with specific permissions in FinSpace. The users are assigned permissions by adding them to a permission group.

Result Syntax

[
    'userId' => '<string>',
]

Result Details

Members
userId
Type: string

The unique identifier for the user.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

DeleteDataset

$result = $client->deleteDataset([/* ... */]);
$promise = $client->deleteDatasetAsync([/* ... */]);

Deletes a FinSpace Dataset.

Parameter Syntax

$result = $client->deleteDataset([
    'clientToken' => '<string>',
    'datasetId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

datasetId
Required: Yes
Type: string

The unique identifier of the Dataset to be deleted.

Result Syntax

[
    'datasetId' => '<string>',
]

Result Details

Members
datasetId
Type: string

The unique identifier for the deleted Dataset.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

DeletePermissionGroup

$result = $client->deletePermissionGroup([/* ... */]);
$promise = $client->deletePermissionGroupAsync([/* ... */]);

Deletes a permission group. This action is irreversible.

Parameter Syntax

$result = $client->deletePermissionGroup([
    'clientToken' => '<string>',
    'permissionGroupId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

permissionGroupId
Required: Yes
Type: string

The unique identifier for the permission group that you want to delete.

Result Syntax

[
    'permissionGroupId' => '<string>',
]

Result Details

Members
permissionGroupId
Type: string

The unique identifier for the deleted permission group.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

DisableUser

$result = $client->disableUser([/* ... */]);
$promise = $client->disableUserAsync([/* ... */]);

Denies access to the FinSpace web application and API for the specified user.

Parameter Syntax

$result = $client->disableUser([
    'clientToken' => '<string>',
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

userId
Required: Yes
Type: string

The unique identifier for the user that you want to deactivate.

Result Syntax

[
    'userId' => '<string>',
]

Result Details

Members
userId
Type: string

The unique identifier for the deactivated user.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ConflictException:

The request conflicts with an existing resource.

DisassociateUserFromPermissionGroup

$result = $client->disassociateUserFromPermissionGroup([/* ... */]);
$promise = $client->disassociateUserFromPermissionGroupAsync([/* ... */]);

Removes a user from a permission group.

Parameter Syntax

$result = $client->disassociateUserFromPermissionGroup([
    'clientToken' => '<string>',
    'permissionGroupId' => '<string>', // REQUIRED
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

permissionGroupId
Required: Yes
Type: string

The unique identifier for the permission group.

userId
Required: Yes
Type: string

The unique identifier for the user.

Result Syntax

[
    'statusCode' => <integer>,
]

Result Details

Members
statusCode
Type: int

The returned status code of the response.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ConflictException:

The request conflicts with an existing resource.

EnableUser

$result = $client->enableUser([/* ... */]);
$promise = $client->enableUserAsync([/* ... */]);

Allows the specified user to access the FinSpace web application and API.

Parameter Syntax

$result = $client->enableUser([
    'clientToken' => '<string>',
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

userId
Required: Yes
Type: string

The unique identifier for the user that you want to activate.

Result Syntax

[
    'userId' => '<string>',
]

Result Details

Members
userId
Type: string

The unique identifier for the active user.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

LimitExceededException:

A limit has exceeded.

ConflictException:

The request conflicts with an existing resource.

GetChangeset

$result = $client->getChangeset([/* ... */]);
$promise = $client->getChangesetAsync([/* ... */]);

Get information about a Changeset.

Parameter Syntax

$result = $client->getChangeset([
    'changesetId' => '<string>', // REQUIRED
    'datasetId' => '<string>', // REQUIRED
]);

Parameter Details

Members
changesetId
Required: Yes
Type: string

The unique identifier of the Changeset for which to get data.

datasetId
Required: Yes
Type: string

The unique identifier for the FinSpace Dataset where the Changeset is created.

Result Syntax

[
    'activeFromTimestamp' => <integer>,
    'activeUntilTimestamp' => <integer>,
    'changeType' => 'REPLACE|APPEND|MODIFY',
    'changesetArn' => '<string>',
    'changesetId' => '<string>',
    'createTime' => <integer>,
    'datasetId' => '<string>',
    'errorInfo' => [
        'errorCategory' => 'VALIDATION|SERVICE_QUOTA_EXCEEDED|ACCESS_DENIED|RESOURCE_NOT_FOUND|THROTTLING|INTERNAL_SERVICE_EXCEPTION|CANCELLED|USER_RECOVERABLE',
        'errorMessage' => '<string>',
    ],
    'formatParams' => ['<string>', ...],
    'sourceParams' => ['<string>', ...],
    'status' => 'PENDING|FAILED|SUCCESS|RUNNING|STOP_REQUESTED',
    'updatedByChangesetId' => '<string>',
    'updatesChangesetId' => '<string>',
]

Result Details

Members
activeFromTimestamp
Type: long (int|float)

Beginning time from which the Changeset is active. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

activeUntilTimestamp
Type: long (int|float)

Time until which the Changeset is active. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

changeType
Type: string

Type that indicates how a Changeset is applied to a Dataset.

  • REPLACE – Changeset is considered as a replacement to all prior loaded Changesets.

  • APPEND – Changeset is considered as an addition to the end of all prior loaded Changesets.

  • MODIFY – Changeset is considered as a replacement to a specific prior ingested Changeset.

changesetArn
Type: string

The ARN identifier of the Changeset.

changesetId
Type: string

The unique identifier for a Changeset.

createTime
Type: long (int|float)

The timestamp at which the Changeset was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

datasetId
Type: string

The unique identifier for the FinSpace Dataset where the Changeset is created.

errorInfo
Type: ChangesetErrorInfo structure

The structure with error messages.

formatParams
Type: Associative array of custom strings keys (StringMapKey) to strings

Structure of the source file(s).

sourceParams
Type: Associative array of custom strings keys (StringMapKey) to strings

Options that define the location of the data being ingested.

status
Type: string

The status of Changeset creation operation.

updatedByChangesetId
Type: string

The unique identifier of the updated Changeset.

updatesChangesetId
Type: string

The unique identifier of the Changeset that is being updated.

Errors

ResourceNotFoundException:

One or more resources can't be found.

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ConflictException:

The request conflicts with an existing resource.

GetDataView

$result = $client->getDataView([/* ... */]);
$promise = $client->getDataViewAsync([/* ... */]);

Gets information about a Dataview.

Parameter Syntax

$result = $client->getDataView([
    'dataViewId' => '<string>', // REQUIRED
    'datasetId' => '<string>', // REQUIRED
]);

Parameter Details

Members
dataViewId
Required: Yes
Type: string

The unique identifier for the Dataview.

datasetId
Required: Yes
Type: string

The unique identifier for the Dataset used in the Dataview.

Result Syntax

[
    'asOfTimestamp' => <integer>,
    'autoUpdate' => true || false,
    'createTime' => <integer>,
    'dataViewArn' => '<string>',
    'dataViewId' => '<string>',
    'datasetId' => '<string>',
    'destinationTypeParams' => [
        'destinationType' => '<string>',
        's3DestinationExportFileFormat' => 'PARQUET|DELIMITED_TEXT',
        's3DestinationExportFileFormatOptions' => ['<string>', ...],
    ],
    'errorInfo' => [
        'errorCategory' => 'VALIDATION|SERVICE_QUOTA_EXCEEDED|ACCESS_DENIED|RESOURCE_NOT_FOUND|THROTTLING|INTERNAL_SERVICE_EXCEPTION|CANCELLED|USER_RECOVERABLE',
        'errorMessage' => '<string>',
    ],
    'lastModifiedTime' => <integer>,
    'partitionColumns' => ['<string>', ...],
    'sortColumns' => ['<string>', ...],
    'status' => 'RUNNING|STARTING|FAILED|CANCELLED|TIMEOUT|SUCCESS|PENDING|FAILED_CLEANUP_FAILED',
]

Result Details

Members
asOfTimestamp
Type: long (int|float)

Time range to use for the Dataview. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

autoUpdate
Type: boolean

Flag to indicate Dataview should be updated automatically.

createTime
Type: long (int|float)

The timestamp at which the Dataview was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

dataViewArn
Type: string

The ARN identifier of the Dataview.

dataViewId
Type: string

The unique identifier for the Dataview.

datasetId
Type: string

The unique identifier for the Dataset used in the Dataview.

destinationTypeParams

Options that define the destination type for the Dataview.

errorInfo
Type: DataViewErrorInfo structure

Information about an error that occurred for the Dataview.

lastModifiedTime
Type: long (int|float)

The last time that a Dataview was modified. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

partitionColumns
Type: Array of strings

Ordered set of column names used to partition data.

sortColumns
Type: Array of strings

Columns to be used for sorting the data.

status
Type: string

The status of a Dataview creation.

  • RUNNING – Dataview creation is running.

  • STARTING – Dataview creation is starting.

  • FAILED – Dataview creation has failed.

  • CANCELLED – Dataview creation has been cancelled.

  • TIMEOUT – Dataview creation has timed out.

  • SUCCESS – Dataview creation has succeeded.

  • PENDING – Dataview creation is pending.

  • FAILED_CLEANUP_FAILED – Dataview creation failed and resource cleanup failed.

Errors

ResourceNotFoundException:

One or more resources can't be found.

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ThrottlingException:

The request was denied due to request throttling.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ConflictException:

The request conflicts with an existing resource.

GetDataset

$result = $client->getDataset([/* ... */]);
$promise = $client->getDatasetAsync([/* ... */]);

Returns information about a Dataset.

Parameter Syntax

$result = $client->getDataset([
    'datasetId' => '<string>', // REQUIRED
]);

Parameter Details

Members
datasetId
Required: Yes
Type: string

The unique identifier for a Dataset.

Result Syntax

[
    'alias' => '<string>',
    'createTime' => <integer>,
    'datasetArn' => '<string>',
    'datasetDescription' => '<string>',
    'datasetId' => '<string>',
    'datasetTitle' => '<string>',
    'kind' => 'TABULAR|NON_TABULAR',
    'lastModifiedTime' => <integer>,
    'schemaDefinition' => [
        'tabularSchemaConfig' => [
            'columns' => [
                [
                    'columnDescription' => '<string>',
                    'columnName' => '<string>',
                    'dataType' => 'STRING|CHAR|INTEGER|TINYINT|SMALLINT|BIGINT|FLOAT|DOUBLE|DATE|DATETIME|BOOLEAN|BINARY',
                ],
                // ...
            ],
            'primaryKeyColumns' => ['<string>', ...],
        ],
    ],
    'status' => 'PENDING|FAILED|SUCCESS|RUNNING',
]

Result Details

Members
alias
Type: string

The unique resource identifier for a Dataset.

createTime
Type: long (int|float)

The timestamp at which the Dataset was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

datasetArn
Type: string

The ARN identifier of the Dataset.

datasetDescription
Type: string

A description of the Dataset.

datasetId
Type: string

The unique identifier for a Dataset.

datasetTitle
Type: string

Display title for a Dataset.

kind
Type: string

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.

lastModifiedTime
Type: long (int|float)

The last time that the Dataset was modified. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

schemaDefinition
Type: SchemaUnion structure

Definition for a schema on a tabular Dataset.

status
Type: string

Status of the Dataset creation.

  • PENDING – Dataset is pending creation.

  • FAILED – Dataset creation has failed.

  • SUCCESS – Dataset creation has succeeded.

  • RUNNING – Dataset creation is running.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ConflictException:

The request conflicts with an existing resource.

GetExternalDataViewAccessDetails

$result = $client->getExternalDataViewAccessDetails([/* ... */]);
$promise = $client->getExternalDataViewAccessDetailsAsync([/* ... */]);

Returns the credentials to access the external Dataview from an S3 location. To call this API:

  • You must retrieve the programmatic credentials.

  • You must be a member of a FinSpace user group, where the dataset that you want to access has Read Dataset Data permissions.

Parameter Syntax

$result = $client->getExternalDataViewAccessDetails([
    'dataViewId' => '<string>', // REQUIRED
    'datasetId' => '<string>', // REQUIRED
]);

Parameter Details

Members
dataViewId
Required: Yes
Type: string

The unique identifier for the Dataview that you want to access.

datasetId
Required: Yes
Type: string

The unique identifier for the Dataset.

Result Syntax

[
    'credentials' => [
        'accessKeyId' => '<string>',
        'expiration' => <integer>,
        'secretAccessKey' => '<string>',
        'sessionToken' => '<string>',
    ],
    's3Location' => [
        'bucket' => '<string>',
        'key' => '<string>',
    ],
]

Result Details

Members
credentials
Type: AwsCredentials structure

The credentials required to access the external Dataview from the S3 location.

s3Location
Type: S3Location structure

The location where the external Dataview is stored.

Errors

ResourceNotFoundException:

One or more resources can't be found.

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ThrottlingException:

The request was denied due to request throttling.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

AccessDeniedException:

You do not have sufficient access to perform this action.

GetPermissionGroup

$result = $client->getPermissionGroup([/* ... */]);
$promise = $client->getPermissionGroupAsync([/* ... */]);

Retrieves the details of a specific permission group.

Parameter Syntax

$result = $client->getPermissionGroup([
    'permissionGroupId' => '<string>', // REQUIRED
]);

Parameter Details

Members
permissionGroupId
Required: Yes
Type: string

The unique identifier for the permission group.

Result Syntax

[
    'permissionGroup' => [
        'applicationPermissions' => ['<string>', ...],
        'createTime' => <integer>,
        'description' => '<string>',
        'lastModifiedTime' => <integer>,
        'membershipStatus' => 'ADDITION_IN_PROGRESS|ADDITION_SUCCESS|REMOVAL_IN_PROGRESS',
        'name' => '<string>',
        'permissionGroupId' => '<string>',
    ],
]

Result Details

Members
permissionGroup
Type: PermissionGroup structure

The structure for a permission group.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

GetProgrammaticAccessCredentials

$result = $client->getProgrammaticAccessCredentials([/* ... */]);
$promise = $client->getProgrammaticAccessCredentialsAsync([/* ... */]);

Request programmatic credentials to use with FinSpace SDK. For more information, see Step 2. Access credentials programmatically using IAM access key id and secret access key.

Parameter Syntax

$result = $client->getProgrammaticAccessCredentials([
    'durationInMinutes' => <integer>,
    'environmentId' => '<string>', // REQUIRED
]);

Parameter Details

Members
durationInMinutes
Type: long (int|float)

The time duration in which the credentials remain valid.

environmentId
Required: Yes
Type: string

The FinSpace environment identifier.

Result Syntax

[
    'credentials' => [
        'accessKeyId' => '<string>',
        'secretAccessKey' => '<string>',
        'sessionToken' => '<string>',
    ],
    'durationInMinutes' => <integer>,
]

Result Details

Members
credentials
Type: Credentials structure

Returns the programmatic credentials.

durationInMinutes
Type: long (int|float)

Returns the duration in which the credentials will remain valid.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

GetUser

$result = $client->getUser([/* ... */]);
$promise = $client->getUserAsync([/* ... */]);

Retrieves details for a specific user.

Parameter Syntax

$result = $client->getUser([
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
userId
Required: Yes
Type: string

The unique identifier of the user to get data for.

Result Syntax

[
    'apiAccess' => 'ENABLED|DISABLED',
    'apiAccessPrincipalArn' => '<string>',
    'createTime' => <integer>,
    'emailAddress' => '<string>',
    'firstName' => '<string>',
    'lastDisabledTime' => <integer>,
    'lastEnabledTime' => <integer>,
    'lastLoginTime' => <integer>,
    'lastModifiedTime' => <integer>,
    'lastName' => '<string>',
    'status' => 'CREATING|ENABLED|DISABLED',
    'type' => 'SUPER_USER|APP_USER',
    'userId' => '<string>',
]

Result Details

Members
apiAccess
Type: string

Indicates whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

apiAccessPrincipalArn
Type: string

The ARN identifier of an AWS user or role that is allowed to call the GetProgrammaticAccessCredentials API to obtain a credentials token for a specific FinSpace user. This must be an IAM role within your FinSpace account.

createTime
Type: long (int|float)

The timestamp at which the user was created in FinSpace. The value is determined as epoch time in milliseconds.

emailAddress
Type: string

The email address that is associated with the user.

firstName
Type: string

The first name of the user.

lastDisabledTime
Type: long (int|float)

Describes the last time the user was deactivated. The value is determined as epoch time in milliseconds.

lastEnabledTime
Type: long (int|float)

Describes the last time the user was activated. The value is determined as epoch time in milliseconds.

lastLoginTime
Type: long (int|float)

Describes the last time that the user logged into their account. The value is determined as epoch time in milliseconds.

lastModifiedTime
Type: long (int|float)

Describes the last time the user details were updated. The value is determined as epoch time in milliseconds.

lastName
Type: string

The last name of the user.

status
Type: string

The current status of the user.

  • CREATING – The creation is in progress.

  • ENABLED – The user is created and is currently active.

  • DISABLED – The user is currently inactive.

type
Type: string

Indicates the type of user.

  • SUPER_USER – A user with permission to all the functionality and data in FinSpace.

  • APP_USER – A user with specific permissions in FinSpace. The users are assigned permissions by adding them to a permission group.

userId
Type: string

The unique identifier for the user that is retrieved.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

GetWorkingLocation

$result = $client->getWorkingLocation([/* ... */]);
$promise = $client->getWorkingLocationAsync([/* ... */]);

A temporary Amazon S3 location, where you can copy your files from a source location to stage or use as a scratch space in FinSpace notebook.

Parameter Syntax

$result = $client->getWorkingLocation([
    'locationType' => 'INGESTION|SAGEMAKER',
]);

Parameter Details

Members
locationType
Type: string

Specify the type of the working location.

  • SAGEMAKER – Use the Amazon S3 location as a temporary location to store data content when working with FinSpace Notebooks that run on SageMaker studio.

  • INGESTION – Use the Amazon S3 location as a staging location to copy your data content and then use the location with the Changeset creation operation.

Result Syntax

[
    's3Bucket' => '<string>',
    's3Path' => '<string>',
    's3Uri' => '<string>',
]

Result Details

Members
s3Bucket
Type: string

Returns the Amazon S3 bucket name for the working location.

s3Path
Type: string

Returns the Amazon S3 Path for the working location.

s3Uri
Type: string

Returns the Amazon S3 URI for the working location.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

AccessDeniedException:

You do not have sufficient access to perform this action.

ThrottlingException:

The request was denied due to request throttling.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ListChangesets

$result = $client->listChangesets([/* ... */]);
$promise = $client->listChangesetsAsync([/* ... */]);

Lists the FinSpace Changesets for a Dataset.

Parameter Syntax

$result = $client->listChangesets([
    'datasetId' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
datasetId
Required: Yes
Type: string

The unique identifier for the FinSpace Dataset to which the Changeset belongs.

maxResults
Type: int

The maximum number of results per page.

nextToken
Type: string

A token that indicates where a results page should begin.

Result Syntax

[
    'changesets' => [
        [
            'activeFromTimestamp' => <integer>,
            'activeUntilTimestamp' => <integer>,
            'changeType' => 'REPLACE|APPEND|MODIFY',
            'changesetArn' => '<string>',
            'changesetId' => '<string>',
            'createTime' => <integer>,
            'datasetId' => '<string>',
            'errorInfo' => [
                'errorCategory' => 'VALIDATION|SERVICE_QUOTA_EXCEEDED|ACCESS_DENIED|RESOURCE_NOT_FOUND|THROTTLING|INTERNAL_SERVICE_EXCEPTION|CANCELLED|USER_RECOVERABLE',
                'errorMessage' => '<string>',
            ],
            'formatParams' => ['<string>', ...],
            'sourceParams' => ['<string>', ...],
            'status' => 'PENDING|FAILED|SUCCESS|RUNNING|STOP_REQUESTED',
            'updatedByChangesetId' => '<string>',
            'updatesChangesetId' => '<string>',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
changesets
Type: Array of ChangesetSummary structures

List of Changesets found.

nextToken
Type: string

A token that indicates where a results page should begin.

Errors

ResourceNotFoundException:

One or more resources can't be found.

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ConflictException:

The request conflicts with an existing resource.

ListDataViews

$result = $client->listDataViews([/* ... */]);
$promise = $client->listDataViewsAsync([/* ... */]);

Lists all available Dataviews for a Dataset.

Parameter Syntax

$result = $client->listDataViews([
    'datasetId' => '<string>', // REQUIRED
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
datasetId
Required: Yes
Type: string

The unique identifier of the Dataset for which to retrieve Dataviews.

maxResults
Type: int

The maximum number of results per page.

nextToken
Type: string

A token that indicates where a results page should begin.

Result Syntax

[
    'dataViews' => [
        [
            'asOfTimestamp' => <integer>,
            'autoUpdate' => true || false,
            'createTime' => <integer>,
            'dataViewArn' => '<string>',
            'dataViewId' => '<string>',
            'datasetId' => '<string>',
            'destinationTypeProperties' => [
                'destinationType' => '<string>',
                's3DestinationExportFileFormat' => 'PARQUET|DELIMITED_TEXT',
                's3DestinationExportFileFormatOptions' => ['<string>', ...],
            ],
            'errorInfo' => [
                'errorCategory' => 'VALIDATION|SERVICE_QUOTA_EXCEEDED|ACCESS_DENIED|RESOURCE_NOT_FOUND|THROTTLING|INTERNAL_SERVICE_EXCEPTION|CANCELLED|USER_RECOVERABLE',
                'errorMessage' => '<string>',
            ],
            'lastModifiedTime' => <integer>,
            'partitionColumns' => ['<string>', ...],
            'sortColumns' => ['<string>', ...],
            'status' => 'RUNNING|STARTING|FAILED|CANCELLED|TIMEOUT|SUCCESS|PENDING|FAILED_CLEANUP_FAILED',
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
dataViews
Type: Array of DataViewSummary structures

A list of Dataviews.

nextToken
Type: string

A token that indicates where a results page should begin.

Errors

ResourceNotFoundException:

One or more resources can't be found.

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ThrottlingException:

The request was denied due to request throttling.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ConflictException:

The request conflicts with an existing resource.

ListDatasets

$result = $client->listDatasets([/* ... */]);
$promise = $client->listDatasetsAsync([/* ... */]);

Lists all of the active Datasets that a user has access to.

Parameter Syntax

$result = $client->listDatasets([
    'maxResults' => <integer>,
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Type: int

The maximum number of results per page.

nextToken
Type: string

A token that indicates where a results page should begin.

Result Syntax

[
    'datasets' => [
        [
            'alias' => '<string>',
            'createTime' => <integer>,
            'datasetArn' => '<string>',
            'datasetDescription' => '<string>',
            'datasetId' => '<string>',
            'datasetTitle' => '<string>',
            'kind' => 'TABULAR|NON_TABULAR',
            'lastModifiedTime' => <integer>,
            'ownerInfo' => [
                'email' => '<string>',
                'name' => '<string>',
                'phoneNumber' => '<string>',
            ],
            'schemaDefinition' => [
                'tabularSchemaConfig' => [
                    'columns' => [
                        [
                            'columnDescription' => '<string>',
                            'columnName' => '<string>',
                            'dataType' => 'STRING|CHAR|INTEGER|TINYINT|SMALLINT|BIGINT|FLOAT|DOUBLE|DATE|DATETIME|BOOLEAN|BINARY',
                        ],
                        // ...
                    ],
                    'primaryKeyColumns' => ['<string>', ...],
                ],
            ],
        ],
        // ...
    ],
    'nextToken' => '<string>',
]

Result Details

Members
datasets
Type: Array of Dataset structures

List of Datasets.

nextToken
Type: string

A token that indicates where a results page should begin.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ThrottlingException:

The request was denied due to request throttling.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ConflictException:

The request conflicts with an existing resource.

ResourceNotFoundException:

One or more resources can't be found.

ListPermissionGroups

$result = $client->listPermissionGroups([/* ... */]);
$promise = $client->listPermissionGroupsAsync([/* ... */]);

Lists all available permission groups in FinSpace.

Parameter Syntax

$result = $client->listPermissionGroups([
    'maxResults' => <integer>, // REQUIRED
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Required: Yes
Type: int

The maximum number of results per page.

nextToken
Type: string

A token that indicates where a results page should begin.

Result Syntax

[
    'nextToken' => '<string>',
    'permissionGroups' => [
        [
            'applicationPermissions' => ['<string>', ...],
            'createTime' => <integer>,
            'description' => '<string>',
            'lastModifiedTime' => <integer>,
            'membershipStatus' => 'ADDITION_IN_PROGRESS|ADDITION_SUCCESS|REMOVAL_IN_PROGRESS',
            'name' => '<string>',
            'permissionGroupId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

A token that indicates where a results page should begin.

permissionGroups
Type: Array of PermissionGroup structures

A list of all the permission groups.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ListPermissionGroupsByUser

$result = $client->listPermissionGroupsByUser([/* ... */]);
$promise = $client->listPermissionGroupsByUserAsync([/* ... */]);

Lists all the permission groups that are associated with a specific user.

Parameter Syntax

$result = $client->listPermissionGroupsByUser([
    'maxResults' => <integer>, // REQUIRED
    'nextToken' => '<string>',
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
maxResults
Required: Yes
Type: int

The maximum number of results per page.

nextToken
Type: string

A token that indicates where a results page should begin.

userId
Required: Yes
Type: string

The unique identifier for the user.

Result Syntax

[
    'nextToken' => '<string>',
    'permissionGroups' => [
        [
            'membershipStatus' => 'ADDITION_IN_PROGRESS|ADDITION_SUCCESS|REMOVAL_IN_PROGRESS',
            'name' => '<string>',
            'permissionGroupId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

A token that indicates where a results page should begin.

permissionGroups
Type: Array of PermissionGroupByUser structures

A list of returned permission groups.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ListUsers

$result = $client->listUsers([/* ... */]);
$promise = $client->listUsersAsync([/* ... */]);

Lists all available users in FinSpace.

Parameter Syntax

$result = $client->listUsers([
    'maxResults' => <integer>, // REQUIRED
    'nextToken' => '<string>',
]);

Parameter Details

Members
maxResults
Required: Yes
Type: int

The maximum number of results per page.

nextToken
Type: string

A token that indicates where a results page should begin.

Result Syntax

[
    'nextToken' => '<string>',
    'users' => [
        [
            'apiAccess' => 'ENABLED|DISABLED',
            'apiAccessPrincipalArn' => '<string>',
            'createTime' => <integer>,
            'emailAddress' => '<string>',
            'firstName' => '<string>',
            'lastDisabledTime' => <integer>,
            'lastEnabledTime' => <integer>,
            'lastLoginTime' => <integer>,
            'lastModifiedTime' => <integer>,
            'lastName' => '<string>',
            'status' => 'CREATING|ENABLED|DISABLED',
            'type' => 'SUPER_USER|APP_USER',
            'userId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

A token that indicates where a results page should begin.

users
Type: Array of User structures

A list of all the users.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ListUsersByPermissionGroup

$result = $client->listUsersByPermissionGroup([/* ... */]);
$promise = $client->listUsersByPermissionGroupAsync([/* ... */]);

Lists details of all the users in a specific permission group.

Parameter Syntax

$result = $client->listUsersByPermissionGroup([
    'maxResults' => <integer>, // REQUIRED
    'nextToken' => '<string>',
    'permissionGroupId' => '<string>', // REQUIRED
]);

Parameter Details

Members
maxResults
Required: Yes
Type: int

The maximum number of results per page.

nextToken
Type: string

A token that indicates where a results page should begin.

permissionGroupId
Required: Yes
Type: string

The unique identifier for the permission group.

Result Syntax

[
    'nextToken' => '<string>',
    'users' => [
        [
            'apiAccess' => 'ENABLED|DISABLED',
            'apiAccessPrincipalArn' => '<string>',
            'emailAddress' => '<string>',
            'firstName' => '<string>',
            'lastName' => '<string>',
            'membershipStatus' => 'ADDITION_IN_PROGRESS|ADDITION_SUCCESS|REMOVAL_IN_PROGRESS',
            'status' => 'CREATING|ENABLED|DISABLED',
            'type' => 'SUPER_USER|APP_USER',
            'userId' => '<string>',
        ],
        // ...
    ],
]

Result Details

Members
nextToken
Type: string

A token that indicates where a results page should begin.

users
Type: Array of UserByPermissionGroup structures

Lists details of all users in a specific permission group.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ResetUserPassword

$result = $client->resetUserPassword([/* ... */]);
$promise = $client->resetUserPasswordAsync([/* ... */]);

Resets the password for a specified user ID and generates a temporary one. Only a superuser can reset password for other users. Resetting the password immediately invalidates the previous password associated with the user.

Parameter Syntax

$result = $client->resetUserPassword([
    'clientToken' => '<string>',
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

userId
Required: Yes
Type: string

The unique identifier of the user that a temporary password is requested for.

Result Syntax

[
    'temporaryPassword' => '<string>',
    'userId' => '<string>',
]

Result Details

Members
temporaryPassword
Type: string

A randomly generated temporary password for the requested user. This password expires in 7 days.

userId
Type: string

The unique identifier of the user that a new password is generated for.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ConflictException:

The request conflicts with an existing resource.

UpdateChangeset

$result = $client->updateChangeset([/* ... */]);
$promise = $client->updateChangesetAsync([/* ... */]);

Updates a FinSpace Changeset.

Parameter Syntax

$result = $client->updateChangeset([
    'changesetId' => '<string>', // REQUIRED
    'clientToken' => '<string>',
    'datasetId' => '<string>', // REQUIRED
    'formatParams' => ['<string>', ...], // REQUIRED
    'sourceParams' => ['<string>', ...], // REQUIRED
]);

Parameter Details

Members
changesetId
Required: Yes
Type: string

The unique identifier for the Changeset to update.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

datasetId
Required: Yes
Type: string

The unique identifier for the FinSpace Dataset in which the Changeset is created.

formatParams
Required: Yes
Type: Associative array of custom strings keys (StringMapKey) to strings

Options that define the structure of the source file(s) including the format type (formatType), header row (withHeader), data separation character (separator) and the type of compression (compression).

formatType is a required attribute and can have the following values:

  • PARQUET – Parquet source file format.

  • CSV – CSV source file format.

  • JSON – JSON source file format.

  • XML – XML source file format.

Here is an example of how you could specify the formatParams:

"formatParams": { "formatType": "CSV", "withHeader": "true", "separator": ",", "compression":"None" }

Note that if you only provide formatType as CSV, the rest of the attributes will automatically default to CSV values as following:

{ "withHeader": "true", "separator": "," }

For more information about supported file formats, see Supported Data Types and File Formats in the FinSpace User Guide.

sourceParams
Required: Yes
Type: Associative array of custom strings keys (StringMapKey) to strings

Options that define the location of the data being ingested (s3SourcePath) and the source of the changeset (sourceType).

Both s3SourcePath and sourceType are required attributes.

Here is an example of how you could specify the sourceParams:

"sourceParams": { "s3SourcePath": "s3://finspace-landing-us-east-2-bk7gcfvitndqa6ebnvys4d/scratch/wr5hh8pwkpqqkxa4sxrmcw/ingestion/equity.csv", "sourceType": "S3" }

The S3 path that you specify must allow the FinSpace role access. To do that, you first need to configure the IAM policy on S3 bucket. For more information, see Loading data from an Amazon S3 Bucket using the FinSpace APIsection.

Result Syntax

[
    'changesetId' => '<string>',
    'datasetId' => '<string>',
]

Result Details

Members
changesetId
Type: string

The unique identifier for the Changeset to update.

datasetId
Type: string

The unique identifier for the FinSpace Dataset in which the Changeset is created.

Errors

ResourceNotFoundException:

One or more resources can't be found.

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ConflictException:

The request conflicts with an existing resource.

UpdateDataset

$result = $client->updateDataset([/* ... */]);
$promise = $client->updateDatasetAsync([/* ... */]);

Updates a FinSpace Dataset.

Parameter Syntax

$result = $client->updateDataset([
    'alias' => '<string>',
    'clientToken' => '<string>',
    'datasetDescription' => '<string>',
    'datasetId' => '<string>', // REQUIRED
    'datasetTitle' => '<string>', // REQUIRED
    'kind' => 'TABULAR|NON_TABULAR', // REQUIRED
    'schemaDefinition' => [
        'tabularSchemaConfig' => [
            'columns' => [
                [
                    'columnDescription' => '<string>',
                    'columnName' => '<string>',
                    'dataType' => 'STRING|CHAR|INTEGER|TINYINT|SMALLINT|BIGINT|FLOAT|DOUBLE|DATE|DATETIME|BOOLEAN|BINARY',
                ],
                // ...
            ],
            'primaryKeyColumns' => ['<string>', ...],
        ],
    ],
]);

Parameter Details

Members
alias
Type: string

The unique resource identifier for a Dataset.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

datasetDescription
Type: string

A description for the Dataset.

datasetId
Required: Yes
Type: string

The unique identifier for the Dataset to update.

datasetTitle
Required: Yes
Type: string

A display title for the Dataset.

kind
Required: Yes
Type: string

The format in which the Dataset data is structured.

  • TABULAR – Data is structured in a tabular format.

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

schemaDefinition
Type: SchemaUnion structure

Definition for a schema on a tabular Dataset.

Result Syntax

[
    'datasetId' => '<string>',
]

Result Details

Members
datasetId
Type: string

The unique identifier for updated Dataset.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ConflictException:

The request conflicts with an existing resource.

ResourceNotFoundException:

One or more resources can't be found.

UpdatePermissionGroup

$result = $client->updatePermissionGroup([/* ... */]);
$promise = $client->updatePermissionGroupAsync([/* ... */]);

Modifies the details of a permission group. You cannot modify a permissionGroupID.

Parameter Syntax

$result = $client->updatePermissionGroup([
    'applicationPermissions' => ['<string>', ...],
    'clientToken' => '<string>',
    'description' => '<string>',
    'name' => '<string>',
    'permissionGroupId' => '<string>', // REQUIRED
]);

Parameter Details

Members
applicationPermissions
Type: Array of strings

The permissions that are granted to a specific group for accessing the FinSpace application.

When assigning application permissions, be aware that the permission ManageUsersAndGroups allows users to grant themselves or others access to any functionality in their FinSpace environment's application. It should only be granted to trusted users.

  • CreateDataset – Group members can create new datasets.

  • ManageClusters – Group members can manage Apache Spark clusters from FinSpace notebooks.

  • ManageUsersAndGroups – Group members can manage users and permission groups. This is a privileged permission that allows users to grant themselves or others access to any functionality in the application. It should only be granted to trusted users.

  • ManageAttributeSets – Group members can manage attribute sets.

  • ViewAuditData – Group members can view audit data.

  • AccessNotebooks – Group members will have access to FinSpace notebooks.

  • GetTemporaryCredentials – Group members can get temporary API credentials.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

description
Type: string

A brief description for the permission group.

name
Type: string

The name of the permission group.

permissionGroupId
Required: Yes
Type: string

The unique identifier for the permission group to update.

Result Syntax

[
    'permissionGroupId' => '<string>',
]

Result Details

Members
permissionGroupId
Type: string

The unique identifier for the updated permission group.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ConflictException:

The request conflicts with an existing resource.

UpdateUser

$result = $client->updateUser([/* ... */]);
$promise = $client->updateUserAsync([/* ... */]);

Modifies the details of the specified user. You cannot update the userId for a user.

Parameter Syntax

$result = $client->updateUser([
    'apiAccess' => 'ENABLED|DISABLED',
    'apiAccessPrincipalArn' => '<string>',
    'clientToken' => '<string>',
    'firstName' => '<string>',
    'lastName' => '<string>',
    'type' => 'SUPER_USER|APP_USER',
    'userId' => '<string>', // REQUIRED
]);

Parameter Details

Members
apiAccess
Type: string

The option to indicate whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

apiAccessPrincipalArn
Type: string

The ARN identifier of an AWS user or role that is allowed to call the GetProgrammaticAccessCredentials API to obtain a credentials token for a specific FinSpace user. This must be an IAM role within your FinSpace account.

clientToken
Type: string

A token that ensures idempotency. This token expires in 10 minutes.

firstName
Type: string

The first name of the user.

lastName
Type: string

The last name of the user.

type
Type: string

The option to indicate the type of user.

  • SUPER_USER– A user with permission to all the functionality and data in FinSpace.

  • APP_USER – A user with specific permissions in FinSpace. The users are assigned permissions by adding them to a permission group.

userId
Required: Yes
Type: string

The unique identifier for the user that you want to update.

Result Syntax

[
    'userId' => '<string>',
]

Result Details

Members
userId
Type: string

The unique identifier of the updated user.

Errors

InternalServerException:

The request processing has failed because of an unknown error, exception or failure.

ValidationException:

The input fails to satisfy the constraints specified by an AWS service.

ThrottlingException:

The request was denied due to request throttling.

AccessDeniedException:

You do not have sufficient access to perform this action.

ResourceNotFoundException:

One or more resources can't be found.

ConflictException:

The request conflicts with an existing resource.

Shapes

AccessDeniedException

Description

You do not have sufficient access to perform this action.

Members
message
Type: string

AwsCredentials

Description

The credentials required to access the external Dataview from the S3 location.

Members
accessKeyId
Type: string

The unique identifier for the security credentials.

expiration
Type: long (int|float)

The Epoch time when the current credentials expire.

secretAccessKey
Type: string

The secret access key that can be used to sign requests.

sessionToken
Type: string

The token that users must pass to use the credentials.

ChangesetErrorInfo

Description

The structure with error messages.

Members
errorCategory
Type: string

The category of the error.

  • VALIDATION – The inputs to this request are invalid.

  • SERVICE_QUOTA_EXCEEDED – Service quotas have been exceeded. Please contact AWS support to increase quotas.

  • ACCESS_DENIED – Missing required permission to perform this request.

  • RESOURCE_NOT_FOUND – One or more inputs to this request were not found.

  • THROTTLING – The system temporarily lacks sufficient resources to process the request.

  • INTERNAL_SERVICE_EXCEPTION – An internal service error has occurred.

  • CANCELLED – Cancelled.

  • USER_RECOVERABLE – A user recoverable error has occurred.

errorMessage
Type: string

The text of the error message.

ChangesetSummary

Description

A Changeset is unit of data in a Dataset.

Members
activeFromTimestamp
Type: long (int|float)

Beginning time from which the Changeset is active. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

activeUntilTimestamp
Type: long (int|float)

Time until which the Changeset is active. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

changeType
Type: string

Type that indicates how a Changeset is applied to a Dataset.

  • REPLACE – Changeset is considered as a replacement to all prior loaded Changesets.

  • APPEND – Changeset is considered as an addition to the end of all prior loaded Changesets.

  • MODIFY – Changeset is considered as a replacement to a specific prior ingested Changeset.

changesetArn
Type: string

The ARN identifier of the Changeset.

changesetId
Type: string

The unique identifier for a Changeset.

createTime
Type: long (int|float)

The timestamp at which the Changeset was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

datasetId
Type: string

The unique identifier for the FinSpace Dataset in which the Changeset is created.

errorInfo
Type: ChangesetErrorInfo structure

The structure with error messages.

formatParams
Type: Associative array of custom strings keys (StringMapKey) to strings

Options that define the structure of the source file(s).

sourceParams
Type: Associative array of custom strings keys (StringMapKey) to strings

Options that define the location of the data being ingested.

status
Type: string

Status of the Changeset ingestion.

  • PENDING – Changeset is pending creation.

  • FAILED – Changeset creation has failed.

  • SUCCESS – Changeset creation has succeeded.

  • RUNNING – Changeset creation is running.

  • STOP_REQUESTED – User requested Changeset creation to stop.

updatedByChangesetId
Type: string

The unique identifier of the updated Changeset.

updatesChangesetId
Type: string

The unique identifier of the Changeset that is updated.

ColumnDefinition

Description

The definition of a column in a tabular Dataset.

Members
columnDescription
Type: string

Description for a column.

columnName
Type: string

The name of a column.

dataType
Type: string

Data type of a column.

  • STRING – A String data type.

    CHAR – A char data type.

    INTEGER – An integer data type.

    TINYINT – A tinyint data type.

    SMALLINT – A smallint data type.

    BIGINT – A bigint data type.

    FLOAT – A float data type.

    DOUBLE – A double data type.

    DATE – A date data type.

    DATETIME – A datetime data type.

    BOOLEAN – A boolean data type.

    BINARY – A binary data type.

ConflictException

Description

The request conflicts with an existing resource.

Members
message
Type: string
reason
Type: string

Credentials

Description

Short term API credentials.

Members
accessKeyId
Type: string

The access key identifier.

secretAccessKey
Type: string

The access key.

sessionToken
Type: string

The session token.

DataViewDestinationTypeParams

Description

Structure for the Dataview destination type parameters.

Members
destinationType
Required: Yes
Type: string

Destination type for a Dataview.

  • GLUE_TABLE – Glue table destination type.

  • S3 – S3 destination type.

s3DestinationExportFileFormat
Type: string

Dataview export file format.

  • PARQUET – Parquet export file format.

  • DELIMITED_TEXT – Delimited text export file format.

s3DestinationExportFileFormatOptions
Type: Associative array of custom strings keys (StringMapKey) to strings

Format Options for S3 Destination type.

Here is an example of how you could specify the s3DestinationExportFileFormatOptions

{ "header": "true", "delimiter": ",", "compression": "gzip" }

DataViewErrorInfo

Description

The structure with error messages.

Members
errorCategory
Type: string

The category of the error.

  • VALIDATION – The inputs to this request are invalid.

  • SERVICE_QUOTA_EXCEEDED – Service quotas have been exceeded. Please contact AWS support to increase quotas.

  • ACCESS_DENIED – Missing required permission to perform this request.

  • RESOURCE_NOT_FOUND – One or more inputs to this request were not found.

  • THROTTLING – The system temporarily lacks sufficient resources to process the request.

  • INTERNAL_SERVICE_EXCEPTION – An internal service error has occurred.

  • CANCELLED – Cancelled.

  • USER_RECOVERABLE – A user recoverable error has occurred.

errorMessage
Type: string

The text of the error message.

DataViewSummary

Description

Structure for the summary of a Dataview.

Members
asOfTimestamp
Type: long (int|float)

Time range to use for the Dataview. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

autoUpdate
Type: boolean

The flag to indicate Dataview should be updated automatically.

createTime
Type: long (int|float)

The timestamp at which the Dataview was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

dataViewArn
Type: string

The ARN identifier of the Dataview.

dataViewId
Type: string

The unique identifier for the Dataview.

datasetId
Type: string

Th unique identifier for the Dataview Dataset.

destinationTypeProperties

Information about the Dataview destination.

errorInfo
Type: DataViewErrorInfo structure

The structure with error messages.

lastModifiedTime
Type: long (int|float)

The last time that a Dataview was modified. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

partitionColumns
Type: Array of strings

Ordered set of column names used to partition data.

sortColumns
Type: Array of strings

Columns to be used for sorting the data.

status
Type: string

The status of a Dataview creation.

  • RUNNING – Dataview creation is running.

  • STARTING – Dataview creation is starting.

  • FAILED – Dataview creation has failed.

  • CANCELLED – Dataview creation has been cancelled.

  • TIMEOUT – Dataview creation has timed out.

  • SUCCESS – Dataview creation has succeeded.

  • PENDING – Dataview creation is pending.

  • FAILED_CLEANUP_FAILED – Dataview creation failed and resource cleanup failed.

Dataset

Description

The structure for a Dataset.

Members
alias
Type: string

The unique resource identifier for a Dataset.

createTime
Type: long (int|float)

The timestamp at which the Dataset was created in FinSpace. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

datasetArn
Type: string

The ARN identifier of the Dataset.

datasetDescription
Type: string

Description for a Dataset.

datasetId
Type: string

An identifier for a Dataset.

datasetTitle
Type: string

Display title for a Dataset.

kind
Type: string

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.

lastModifiedTime
Type: long (int|float)

The last time that the Dataset was modified. The value is determined as epoch time in milliseconds. For example, the value for Monday, November 1, 2021 12:00:00 PM UTC is specified as 1635768000000.

ownerInfo
Type: DatasetOwnerInfo structure

Contact information for a Dataset owner.

schemaDefinition
Type: SchemaUnion structure

Definition for a schema on a tabular Dataset.

DatasetOwnerInfo

Description

A structure for Dataset owner info.

Members
email
Type: string

Email address for the Dataset owner.

name
Type: string

The name of the Dataset owner.

phoneNumber
Type: string

Phone number for the Dataset owner.

InternalServerException

Description

The request processing has failed because of an unknown error, exception or failure.

Members
message
Type: string

LimitExceededException

Description

A limit has exceeded.

Members
message
Type: string

PermissionGroup

Description

The structure for a permission group.

Members
applicationPermissions
Type: Array of strings

Indicates the permissions that are granted to a specific group for accessing the FinSpace application.

When assigning application permissions, be aware that the permission ManageUsersAndGroups allows users to grant themselves or others access to any functionality in their FinSpace environment's application. It should only be granted to trusted users.

  • CreateDataset – Group members can create new datasets.

  • ManageClusters – Group members can manage Apache Spark clusters from FinSpace notebooks.

  • ManageUsersAndGroups – Group members can manage users and permission groups. This is a privileged permission that allows users to grant themselves or others access to any functionality in the application. It should only be granted to trusted users.

  • ManageAttributeSets – Group members can manage attribute sets.

  • ViewAuditData – Group members can view audit data.

  • AccessNotebooks – Group members will have access to FinSpace notebooks.

  • GetTemporaryCredentials – Group members can get temporary API credentials.

createTime
Type: long (int|float)

The timestamp at which the group was created in FinSpace. The value is determined as epoch time in milliseconds.

description
Type: string

A brief description for the permission group.

lastModifiedTime
Type: long (int|float)

Describes the last time the permission group was updated. The value is determined as epoch time in milliseconds.

membershipStatus
Type: string

Indicates the status of the user within a permission group.

  • ADDITION_IN_PROGRESS – The user is currently being added to the permission group.

  • ADDITION_SUCCESS – The user is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

name
Type: string

The name of the permission group.

permissionGroupId
Type: string

The unique identifier for the permission group.

PermissionGroupByUser

Description

The structure of a permission group associated with a user.

Members
membershipStatus
Type: string

Indicates the status of the user within a permission group.

  • ADDITION_IN_PROGRESS – The user is currently being added to the permission group.

  • ADDITION_SUCCESS – The user is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

name
Type: string

The name of the permission group.

permissionGroupId
Type: string

The unique identifier for the permission group.

PermissionGroupParams

Description

Permission group parameters for Dataset permissions.

Here is an example of how you could specify the PermissionGroupParams:

{ "permissionGroupId": "0r6fCRtSTUk4XPfXQe3M0g", "datasetPermissions": [ {"permission": "ViewDatasetDetails"}, {"permission": "AddDatasetData"}, {"permission": "EditDatasetMetadata"}, {"permission": "DeleteDataset"} ] }

Members
datasetPermissions
Type: Array of ResourcePermission structures

List of resource permissions.

permissionGroupId
Type: string

The unique identifier for the PermissionGroup.

ResourceNotFoundException

Description

One or more resources can't be found.

Members
message
Type: string
reason
Type: string

ResourcePermission

Description

Resource permission for a dataset. When you create a dataset, all the other members of the same user group inherit access to the dataset. You can only create a dataset if your user group has application permission for Create Datasets.

The following is a list of valid dataset permissions that you can apply:

  • ViewDatasetDetails

  • ReadDatasetDetails

  • AddDatasetData

  • CreateDataView

  • EditDatasetMetadata

  • DeleteDataset

For more information on the dataset permissions, see Supported Dataset Permissions in the FinSpace User Guide.

Members
permission
Type: string

Permission for a resource.

S3Location

Description

The location of an external Dataview in an S3 bucket.

Members
bucket
Required: Yes
Type: string

The name of the S3 bucket.

key
Required: Yes
Type: string

The path of the folder, within the S3 bucket that contains the Dataset.

SchemaDefinition

Description

Definition for a schema on a tabular Dataset.

Members
columns
Type: Array of ColumnDefinition structures

List of column definitions.

primaryKeyColumns
Type: Array of strings

List of column names used for primary key.

SchemaUnion

Description

A union of schema types.

Members
tabularSchemaConfig
Type: SchemaDefinition structure

The configuration for a schema on a tabular Dataset.

ThrottlingException

Description

The request was denied due to request throttling.

Members

User

Description

The details of the user.

Members
apiAccess
Type: string

Indicates whether the user can use the GetProgrammaticAccessCredentials API to obtain credentials that can then be used to access other FinSpace Data API operations.

  • ENABLED – The user has permissions to use the APIs.

  • DISABLED – The user does not have permissions to use any APIs.

apiAccessPrincipalArn
Type: string

The ARN identifier of an AWS user or role that is allowed to call the GetProgrammaticAccessCredentials API to obtain a credentials token for a specific FinSpace user. This must be an IAM role within your FinSpace account.

createTime
Type: long (int|float)

The timestamp at which the user was created in FinSpace. The value is determined as epoch time in milliseconds.

emailAddress
Type: string

The email address of the user. The email address serves as a uniquer identifier for each user and cannot be changed after it's created.

firstName
Type: string

The first name of the user.

lastDisabledTime
Type: long (int|float)

Describes the last time the user was deactivated. The value is determined as epoch time in milliseconds.

lastEnabledTime
Type: long (int|float)

Describes the last time the user was activated. The value is determined as epoch time in milliseconds.

lastLoginTime
Type: long (int|float)

Describes the last time that the user logged into their account. The value is determined as epoch time in milliseconds.

lastModifiedTime
Type: long (int|float)

Describes the last time the user was updated. The value is determined as epoch time in milliseconds.

lastName
Type: string

The last name of the user.

status
Type: string

The current status of the user.

  • CREATING – The user creation is in progress.

  • ENABLED – The user is created and is currently active.

  • DISABLED – The user is currently inactive.

type
Type: string

Indicates the type of user.

  • SUPER_USER – A user with permission to all the functionality and data in FinSpace.

  • APP_USER – A user with specific permissions in FinSpace. The users are assigned permissions by adding them to a permission group.

userId
Type: string

The unique identifier for the user.

UserByPermissionGroup

Description

The structure of a user associated with a permission group.

Members
apiAccess
Type: string

Indicates whether the user can access FinSpace API operations.

  • ENABLED – The user has permissions to use the API operations.

  • DISABLED – The user does not have permissions to use any API operations.

apiAccessPrincipalArn
Type: string

The IAM ARN identifier that is attached to FinSpace API calls.

emailAddress
Type: string

The email address of the user. The email address serves as a unique identifier for each user and cannot be changed after it's created.

firstName
Type: string

The first name of the user.

lastName
Type: string

The last name of the user.

membershipStatus
Type: string

Indicates the status of the user within a permission group.

  • ADDITION_IN_PROGRESS – The user is currently being added to the permission group.

  • ADDITION_SUCCESS – The user is successfully added to the permission group.

  • REMOVAL_IN_PROGRESS – The user is currently being removed from the permission group.

status
Type: string

The current status of the user.

  • CREATING – The user creation is in progress.

  • ENABLED – The user is created and is currently active.

  • DISABLED – The user is currently inactive.

type
Type: string

Indicates the type of user.

  • SUPER_USER – A user with permission to all the functionality and data in FinSpace.

  • APP_USER – A user with specific permissions in FinSpace. The users are assigned permissions by adding them to a permission group.

userId
Type: string

The unique identifier for the user.

ValidationException

Description

The input fails to satisfy the constraints specified by an AWS service.

Members
message
Type: string
reason
Type: string