class TargetAthena(Target): """Sample target for Athena.""" name = "target-athena" config_jsonschema = th.PropertiesList( th.Property("s3_bucket", th.StringType, required=True), th.Property("athena_database", th.StringType, required=True), th.Property("aws_region", th.StringType, required=True), th.Property("aws_access_key_id", th.StringType), th.Property("aws_secret_access_key", th.StringType), th.Property("aws_session_token", th.StringType), th.Property("aws_profile", th.StringType), th.Property("s3_key_prefix", th.StringType), th.Property("naming_convention", th.StringType), th.Property("object_format", th.StringType, default='jsonl'), th.Property("compression", th.StringType, default='gzip'), th.Property("encryption_type", th.StringType), th.Property("encryption_key", th.StringType), th.Property("add_record_metadata", th.BooleanType, default=False), th.Property("flatten_records", th.BooleanType, default=False), th.Property("delimiter", th.StringType, default=","), th.Property("quotechar", th.StringType, default='"'), th.Property("temp_dir", th.StringType), th.Property("stream_maps", th.ObjectType()), th.Property("stream_map_config", th.ObjectType()), ).to_dict() default_sink_class = AthenaSink
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("id", th.IntegerType), th.Property("iamid", th.StringType), th.Property("name", th.StringType), th.Property("gid", th.StringType), th.Property("email", th.StringType), th.Property( "authorizations", th.ObjectType(th.Property("name", th.StringType), ), ), th.Property("description", th.StringType), th.Property("createdAt", th.StringType), th.Property("updatedAt", th.StringType), ).to_dict()
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("project_id", th.IntegerType), th.Property("profile", th.IntegerType), th.Property("name", th.StringType), th.Property("iamid", th.StringType), th.Property("userid", th.StringType), th.Property("email", th.StringType), th.Property("type", th.StringType), th.Property("approved", th.BooleanType), th.Property("state", th.StringType), th.Property("systemGenerated", th.BooleanType), th.Property("lastExternalRefresh", th.StringType), th.Property("subscriptionId", th.IntegerType), th.Property("createdAt", th.StringType), th.Property("updatedAt", th.StringType), th.Property("approvals", th.ArrayType(th.StringType)), th.Property("currentUserCanApprove", th.BooleanType), th.Property( "compliance", th.ObjectType( th.Property("isMissingPurposeAcknowledgement", th.BooleanType), th.Property("validationFrequencyExceeded", th.BooleanType), th.Property("isMissingEntitlements", th.BooleanType), th.Property("invalidSubscriptions", th.ArrayType(th.StringType)), th.Property("missingDataSources", th.ArrayType(th.StringType)), ), ), ).to_dict()
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("id", th.StringType), th.Property("name", th.StringType), th.Property("email", th.StringType), th.Property("profilePicture", th.StringType), th.Property("activeWorkspace", th.StringType), th.Property("defaultWorkspace", th.StringType), th.Property("status", th.StringType), th.Property( "memberships", th.ArrayType( th.ObjectType( th.Property("userId", th.StringType), th.Property( "hourlyRate", th.ObjectType( th.Property("amount", th.NumberType), th.Property("currency", th.StringType), ), ), th.Property("targetId", th.StringType), th.Property("membershipType", th.StringType), th.Property("membershipStatus", th.StringType), )), ), ).to_dict()
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("project_id", th.IntegerType), th.Property("addedBy", th.StringType), th.Property("dataSourceName", th.StringType), th.Property("policyHandlerType", th.StringType), th.Property("addedOn", th.StringType), th.Property("dataSourceId", th.IntegerType), th.Property("addedByProfile", th.IntegerType), th.Property("comment", th.StringType), th.Property("deleted", th.BooleanType), th.Property("subscriptionType", th.StringType), th.Property("subscriptionStatus", th.StringType), th.Property("subscriptionPolicy", th.ObjectType()), th.Property("connectionString", th.StringType), th.Property("blobHandlerType", th.StringType), th.Property("derivedInThisProject", th.BooleanType), ).to_dict()
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("id", th.StringType), th.Property("started_at", th.DateTimeType), th.Property("userId", th.StringType), th.Property("projectId", th.StringType), th.Property("taskId", th.StringType), th.Property("workspaceId", th.StringType), th.Property("billable", th.BooleanType), th.Property("description", th.StringType), th.Property("isLocked", th.BooleanType), th.Property("customFieldValues", th.ArrayType(th.StringType)), th.Property("tagIds", th.ArrayType(th.StringType)), th.Property( "timeInterval", th.ObjectType( th.Property("duration", th.StringType), th.Property("end", th.StringType), th.Property("start", th.StringType), ), ), ).to_dict()
th.Property("id", th.IntegerType), th.Property("name", th.StringType), th.Property("type", th.StringType), th.Property("template", th.BooleanType), th.Property("staged", th.BooleanType), th.Property("systemGenerated", th.BooleanType), th.Property("deleted", th.BooleanType), th.Property("createdBy", th.IntegerType), th.Property("createdByName", th.StringType), th.Property("createdAt", th.StringType), th.Property("updatedAt", th.StringType), th.Property( "certification", th.ObjectType( th.Property("text", th.StringType), th.Property("label", th.StringType), th.Property("tags", th.ArrayType(th.StringType)), ), ), th.Property( "actions", th.ArrayType( th.ObjectType( th.Property("type", th.StringType), th.Property( "rules", th.ObjectType(th.Property("type", th.StringType), ), ), th.Property("description", th.StringType), )), ),
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("id", th.StringType), th.Property("name", th.StringType), th.Property("imageUrl", th.StringType), th.Property( "hourlyRate", th.ObjectType( th.Property("amount", th.IntegerType), th.Property("currency", th.StringType), ), ), th.Property( "workspaceSettings", th.ObjectType( th.Property("adminOnlyPages", th.ArrayType(th.StringType)), th.Property( "automaticLock", th.ObjectType( th.Property("changeDay", th.StringType), th.Property("dayOfMonth", th.IntegerType), th.Property("firstDay", th.StringType), th.Property("olderThanPeriod", th.StringType), th.Property("olderThanValue", th.IntegerType), th.Property("type", th.StringType), ), ), th.Property("canSeeTimeSheet", th.BooleanType), th.Property("canSeeTimeTracker", th.BooleanType), th.Property("defaultBillableProjects", th.BooleanType),
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("dataSource", th.IntegerType), th.Property("types", th.ArrayType(th.StringType)), th.Property("id", th.IntegerType), th.Property("createdAt", th.StringType), th.Property("updatedAt", th.StringType), th.Property( "metadata", th.ArrayType( th.ObjectType( th.Property("name", th.StringType), th.Property("dataType", th.StringType), th.Property("nullable", th.BooleanType), th.Property("remoteType", th.StringType), th.Property( "tags", th.ArrayType( th.ObjectType( th.Property("name", th.StringType), th.Property("source", th.StringType), th.Property("deleted", th.BooleanType), )), ), )), ), ).to_dict()
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("id", th.StringType), th.Property("name", th.StringType), th.Property("clientId", th.StringType), th.Property("workspaceId", th.StringType), th.Property("billable", th.BooleanType), th.Property("archived", th.BooleanType), th.Property("duration", th.StringType), th.Property("clientName", th.StringType), th.Property("note", th.StringType), th.Property("template", th.BooleanType), th.Property("public", th.BooleanType), th.Property("color", th.StringType), th.Property( "estimate", th.ObjectType( th.Property("estimate", th.StringType), th.Property("type", th.StringType), ), ), th.Property( "hourlyRate", th.ObjectType( th.Property("amount", th.NumberType), th.Property("currency", th.StringType), ), ), ).to_dict()
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("authentication", th.IntegerType), th.Property("createdAt", th.StringType), th.Property("disabled", th.BooleanType), th.Property("iamid", th.StringType), th.Property("id", th.IntegerType), th.Property("lastExternalRefresh", th.StringType), th.Property("systemGenerated", th.BooleanType), th.Property("updatedAt", th.StringType), th.Property("userid", th.StringType), th.Property("permissions", th.ArrayType(th.StringType)), th.Property( "profile", th.ObjectType( th.Property("createdAt", th.StringType), th.Property("email", th.StringType), th.Property("id", th.IntegerType), th.Property("name", th.StringType), th.Property("systemGenerated", th.BooleanType), th.Property("updatedAt", th.StringType), ), ), ).to_dict()
from singer_sdk import typing as th schema = th.PropertiesList( th.Property("name", th.StringType), th.Property("recordFormat", th.StringType), th.Property("description", th.StringType), th.Property("policyHandler", th.ObjectType()), th.Property("sqlSchemaName", th.StringType), th.Property("sqlTableName", th.StringType), th.Property("blobHandler", th.ObjectType()), th.Property("createdBy", th.IntegerType), th.Property("deleted", th.BooleanType), th.Property("type", th.StringType), th.Property("recordCount", th.IntegerType), th.Property("rowCount", th.IntegerType), th.Property("documentation", th.StringType), th.Property("statsExpiration", th.StringType), th.Property("id", th.IntegerType), th.Property("blobHandlerType", th.StringType), th.Property("policyHandlerType", th.StringType), th.Property("subscriptionType", th.StringType), th.Property("subscriptionPolicy", th.ObjectType()), th.Property("globalPolicies", th.ArrayType(th.ObjectType())), th.Property("status", th.StringType), th.Property("statusInfo", th.ObjectType()), th.Property("expiration", th.StringType), th.Property("catalogMetadata", th.StringType), th.Property("workspace", th.StringType), th.Property("seeded", th.BooleanType), th.Property("schemaEvolutionId", th.IntegerType), th.Property("connectionString", th.StringType),