Skip to main content

createS3DataSource

This mutation creates a new Data Source, pointed at the specified S3 bucket.

The mutation returns the newly created Data Source (or an error message if creating the Data Source fails).

Arguments

  • input required CreateS3DataSourceInput

    • input.connectionSettings required S3ConnectionSettingsInput

      The S3 Data Source's connection settings

      The connection settings for an S3 Data Source. These include the S3 bucket name, the AWS access key ID, and the tables (along with their paths). We do not allow fetching the AWS secret access key after it has been set.

      • input.connectionSettings.awsAccessKeyId required String

        The AWS access key ID for an IAM user with sufficient access to the S3 bucket.

      • input.connectionSettings.awsSecretAccessKey required String

        The AWS secret access key for an IAM user with sufficient access to the S3 bucket.

      • input.connectionSettings.bucket required String

        The name of the S3 bucket.

      • input.connectionSettings.tables required array of S3DataSourceTableInput

        The S3 Data Source's tables.

        The fields for specifying an S3 Data Source's table.

        • input.connectionSettings.tables.name required String

          The name of the table

        • input.connectionSettings.tables.path optional String

          The path to the table's files in S3.

        • input.connectionSettings.tables.columns required array of S3DataSourceColumnInput

          All the columns present in the table

          The fields for specifying a column in an S3 Data Source's table.

          • input.connectionSettings.tables.columns.name required String

            The column name. It has to be unique within a Table.

          • input.connectionSettings.tables.columns.type required ColumnType

            The column type.

            The Propel data types.

            • BOOLEAN

              True or false.

            • STRING

              A variable-length string.

            • FLOAT

              A 32-bit signed double-precision floating point number.

            • DOUBLE

              A 64-bit signed double-precision floating point number.

            • INT8

              An 8-bit signed integer, with a minimum value of -2⁷ and a maximum value of 2⁷-1.

            • INT16

              A 16-bit signed integer, with a minimum value of -2¹⁵ and a maximum value of 2¹⁵-1.

            • INT32

              A 32-bit signed integer, with a minimum value of -2³¹ and a maximum value of 2³¹-1.

            • INT64

              A 64-bit signed integer, with a minimum value of -2⁶³ and a maximum value of 2⁶³-1.

            • DATE

              A date without a timestamp. For example, "YYYY-MM-DD".

            • TIMESTAMP

              A date with a timestamp. For example, "yyy-MM-dd HH:mm:ss".

          • input.connectionSettings.tables.columns.nullable required Boolean

            Whether the column's type is nullable or not.

    • input.description optional String

      The S3 Data Source's description.

    • input.uniqueName optional String

      The S3 Data Source's unique name. If not specified, Propel will set the ID as unique name.


Returns

Non-null DataSourceResponse

The result of a mutation which creates or modifies a Data Source.