## Get Sink Details `client.Pipelines.Sinks.Get(ctx, sinkID, query) (*SinkGetResponse, error)` **get** `/accounts/{account_id}/pipelines/v1/sinks/{sink_id}` Get Sink Details. ### Parameters - `sinkID string` Specifies the publid ID of the sink. - `query SinkGetParams` - `AccountID param.Field[string]` Specifies the public ID of the account. ### Returns - `type SinkGetResponse struct{…}` - `ID string` Indicates a unique identifier for this sink. - `CreatedAt Time` - `ModifiedAt Time` - `Name string` Defines the name of the Sink. - `Type SinkGetResponseType` Specifies the type of sink. - `const SinkGetResponseTypeR2 SinkGetResponseType = "r2"` - `const SinkGetResponseTypeR2DataCatalog SinkGetResponseType = "r2_data_catalog"` - `Config SinkGetResponseConfig` Defines the configuration of the R2 Sink. - `type SinkGetResponseConfigCloudflarePipelinesR2TablePublic struct{…}` R2 Sink public configuration. - `AccountID string` Cloudflare Account ID for the bucket - `Bucket string` R2 Bucket to write to - `FileNaming SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNaming` Controls filename prefix/suffix and strategy. - `Prefix string` The prefix to use in file name. i.e prefix-.parquet - `Strategy SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategy` Filename generation strategy. - `const SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategySerial SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategy = "serial"` - `const SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategyUUID SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategy = "uuid"` - `const SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategyUUIDV7 SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategy = "uuid_v7"` - `const SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategyUlid SinkGetResponseConfigCloudflarePipelinesR2TablePublicFileNamingStrategy = "ulid"` - `Suffix string` This will overwrite the default file suffix. i.e .parquet, use with caution - `Jurisdiction string` Jurisdiction this bucket is hosted in - `Partitioning SinkGetResponseConfigCloudflarePipelinesR2TablePublicPartitioning` Data-layout partitioning for sinks. - `TimePattern string` The pattern of the date string - `Path string` Subpath within the bucket to write to - `RollingPolicy SinkGetResponseConfigCloudflarePipelinesR2TablePublicRollingPolicy` Rolling policy for file sinks (when & why to close a file and open a new one). - `FileSizeBytes int64` Files will be rolled after reaching this number of bytes - `InactivitySeconds int64` Number of seconds of inactivity to wait before rolling over to a new file - `IntervalSeconds int64` Number of seconds to wait before rolling over to a new file - `type SinkGetResponseConfigCloudflarePipelinesR2DataCatalogTablePublic struct{…}` R2 Data Catalog Sink public configuration. - `AccountID string` Cloudflare Account ID - `Bucket string` The R2 Bucket that hosts this catalog - `TableName string` Table name - `Namespace string` Table namespace - `RollingPolicy SinkGetResponseConfigCloudflarePipelinesR2DataCatalogTablePublicRollingPolicy` Rolling policy for file sinks (when & why to close a file and open a new one). - `FileSizeBytes int64` Files will be rolled after reaching this number of bytes - `InactivitySeconds int64` Number of seconds of inactivity to wait before rolling over to a new file - `IntervalSeconds int64` Number of seconds to wait before rolling over to a new file - `Format SinkGetResponseFormat` - `type SinkGetResponseFormatJson struct{…}` - `Type SinkGetResponseFormatJsonType` - `const SinkGetResponseFormatJsonTypeJson SinkGetResponseFormatJsonType = "json"` - `DecimalEncoding SinkGetResponseFormatJsonDecimalEncoding` - `const SinkGetResponseFormatJsonDecimalEncodingNumber SinkGetResponseFormatJsonDecimalEncoding = "number"` - `const SinkGetResponseFormatJsonDecimalEncodingString SinkGetResponseFormatJsonDecimalEncoding = "string"` - `const SinkGetResponseFormatJsonDecimalEncodingBytes SinkGetResponseFormatJsonDecimalEncoding = "bytes"` - `TimestampFormat SinkGetResponseFormatJsonTimestampFormat` - `const SinkGetResponseFormatJsonTimestampFormatRfc3339 SinkGetResponseFormatJsonTimestampFormat = "rfc3339"` - `const SinkGetResponseFormatJsonTimestampFormatUnixMillis SinkGetResponseFormatJsonTimestampFormat = "unix_millis"` - `Unstructured bool` - `type SinkGetResponseFormatParquet struct{…}` - `Type SinkGetResponseFormatParquetType` - `const SinkGetResponseFormatParquetTypeParquet SinkGetResponseFormatParquetType = "parquet"` - `Compression SinkGetResponseFormatParquetCompression` - `const SinkGetResponseFormatParquetCompressionUncompressed SinkGetResponseFormatParquetCompression = "uncompressed"` - `const SinkGetResponseFormatParquetCompressionSnappy SinkGetResponseFormatParquetCompression = "snappy"` - `const SinkGetResponseFormatParquetCompressionGzip SinkGetResponseFormatParquetCompression = "gzip"` - `const SinkGetResponseFormatParquetCompressionZstd SinkGetResponseFormatParquetCompression = "zstd"` - `const SinkGetResponseFormatParquetCompressionLz4 SinkGetResponseFormatParquetCompression = "lz4"` - `RowGroupBytes int64` - `Schema SinkGetResponseSchema` - `Fields []SinkGetResponseSchemaField` - `type SinkGetResponseSchemaFieldsInt32 struct{…}` - `Type SinkGetResponseSchemaFieldsInt32Type` - `const SinkGetResponseSchemaFieldsInt32TypeInt32 SinkGetResponseSchemaFieldsInt32Type = "int32"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsInt64 struct{…}` - `Type SinkGetResponseSchemaFieldsInt64Type` - `const SinkGetResponseSchemaFieldsInt64TypeInt64 SinkGetResponseSchemaFieldsInt64Type = "int64"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsFloat32 struct{…}` - `Type SinkGetResponseSchemaFieldsFloat32Type` - `const SinkGetResponseSchemaFieldsFloat32TypeFloat32 SinkGetResponseSchemaFieldsFloat32Type = "float32"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsFloat64 struct{…}` - `Type SinkGetResponseSchemaFieldsFloat64Type` - `const SinkGetResponseSchemaFieldsFloat64TypeFloat64 SinkGetResponseSchemaFieldsFloat64Type = "float64"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsBool struct{…}` - `Type SinkGetResponseSchemaFieldsBoolType` - `const SinkGetResponseSchemaFieldsBoolTypeBool SinkGetResponseSchemaFieldsBoolType = "bool"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsString struct{…}` - `Type SinkGetResponseSchemaFieldsStringType` - `const SinkGetResponseSchemaFieldsStringTypeString SinkGetResponseSchemaFieldsStringType = "string"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsBinary struct{…}` - `Type SinkGetResponseSchemaFieldsBinaryType` - `const SinkGetResponseSchemaFieldsBinaryTypeBinary SinkGetResponseSchemaFieldsBinaryType = "binary"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsTimestamp struct{…}` - `Type SinkGetResponseSchemaFieldsTimestampType` - `const SinkGetResponseSchemaFieldsTimestampTypeTimestamp SinkGetResponseSchemaFieldsTimestampType = "timestamp"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `Unit SinkGetResponseSchemaFieldsTimestampUnit` - `const SinkGetResponseSchemaFieldsTimestampUnitSecond SinkGetResponseSchemaFieldsTimestampUnit = "second"` - `const SinkGetResponseSchemaFieldsTimestampUnitMillisecond SinkGetResponseSchemaFieldsTimestampUnit = "millisecond"` - `const SinkGetResponseSchemaFieldsTimestampUnitMicrosecond SinkGetResponseSchemaFieldsTimestampUnit = "microsecond"` - `const SinkGetResponseSchemaFieldsTimestampUnitNanosecond SinkGetResponseSchemaFieldsTimestampUnit = "nanosecond"` - `type SinkGetResponseSchemaFieldsJson struct{…}` - `Type SinkGetResponseSchemaFieldsJsonType` - `const SinkGetResponseSchemaFieldsJsonTypeJson SinkGetResponseSchemaFieldsJsonType = "json"` - `MetadataKey string` - `Name string` - `Required bool` - `SqlName string` - `type SinkGetResponseSchemaFieldsStruct struct{…}` - `type SinkGetResponseSchemaFieldsList struct{…}` - `Format SinkGetResponseSchemaFormat` - `type SinkGetResponseSchemaFormatJson struct{…}` - `Type SinkGetResponseSchemaFormatJsonType` - `const SinkGetResponseSchemaFormatJsonTypeJson SinkGetResponseSchemaFormatJsonType = "json"` - `DecimalEncoding SinkGetResponseSchemaFormatJsonDecimalEncoding` - `const SinkGetResponseSchemaFormatJsonDecimalEncodingNumber SinkGetResponseSchemaFormatJsonDecimalEncoding = "number"` - `const SinkGetResponseSchemaFormatJsonDecimalEncodingString SinkGetResponseSchemaFormatJsonDecimalEncoding = "string"` - `const SinkGetResponseSchemaFormatJsonDecimalEncodingBytes SinkGetResponseSchemaFormatJsonDecimalEncoding = "bytes"` - `TimestampFormat SinkGetResponseSchemaFormatJsonTimestampFormat` - `const SinkGetResponseSchemaFormatJsonTimestampFormatRfc3339 SinkGetResponseSchemaFormatJsonTimestampFormat = "rfc3339"` - `const SinkGetResponseSchemaFormatJsonTimestampFormatUnixMillis SinkGetResponseSchemaFormatJsonTimestampFormat = "unix_millis"` - `Unstructured bool` - `type SinkGetResponseSchemaFormatParquet struct{…}` - `Type SinkGetResponseSchemaFormatParquetType` - `const SinkGetResponseSchemaFormatParquetTypeParquet SinkGetResponseSchemaFormatParquetType = "parquet"` - `Compression SinkGetResponseSchemaFormatParquetCompression` - `const SinkGetResponseSchemaFormatParquetCompressionUncompressed SinkGetResponseSchemaFormatParquetCompression = "uncompressed"` - `const SinkGetResponseSchemaFormatParquetCompressionSnappy SinkGetResponseSchemaFormatParquetCompression = "snappy"` - `const SinkGetResponseSchemaFormatParquetCompressionGzip SinkGetResponseSchemaFormatParquetCompression = "gzip"` - `const SinkGetResponseSchemaFormatParquetCompressionZstd SinkGetResponseSchemaFormatParquetCompression = "zstd"` - `const SinkGetResponseSchemaFormatParquetCompressionLz4 SinkGetResponseSchemaFormatParquetCompression = "lz4"` - `RowGroupBytes int64` - `Inferred bool` ### Example ```go package main import ( "context" "fmt" "github.com/cloudflare/cloudflare-go" "github.com/cloudflare/cloudflare-go/option" "github.com/cloudflare/cloudflare-go/pipelines" ) func main() { client := cloudflare.NewClient( option.WithAPIToken("Sn3lZJTBX6kkg7OdcBUAxOO963GEIyGQqnFTOFYY"), ) sink, err := client.Pipelines.Sinks.Get( context.TODO(), "0223105f4ecef8ad9ca31a8372d0c353", pipelines.SinkGetParams{ AccountID: cloudflare.F("0123105f4ecef8ad9ca31a8372d0c353"), }, ) if err != nil { panic(err.Error()) } fmt.Printf("%+v\n", sink.ID) } ``` #### Response ```json { "result": { "id": "01234567890123457689012345678901", "created_at": "2019-12-27T18:11:19.117Z", "modified_at": "2019-12-27T18:11:19.117Z", "name": "my_sink", "type": "r2", "config": { "account_id": "account_id", "bucket": "bucket", "file_naming": { "prefix": "prefix", "strategy": "serial", "suffix": "suffix" }, "jurisdiction": "jurisdiction", "partitioning": { "time_pattern": "year=%Y/month=%m/day=%d/hour=%H" }, "path": "path", "rolling_policy": { "file_size_bytes": 0, "inactivity_seconds": 1, "interval_seconds": 1 } }, "format": { "type": "json", "decimal_encoding": "number", "timestamp_format": "rfc3339", "unstructured": true }, "schema": { "fields": [ { "type": "int32", "metadata_key": "metadata_key", "name": "name", "required": true, "sql_name": "sql_name" } ], "format": { "type": "json", "decimal_encoding": "number", "timestamp_format": "rfc3339", "unstructured": true }, "inferred": true } }, "success": true } ```