# AWS S3 API

## GET /aws/s3/buckets

> Get S3 buckets

```json
{"openapi":"3.0.3","info":{"title":"AWS S3 API","version":"1.0.0"},"servers":[{"url":"https://api.metadata.demo-001.teleskope.ai/v1"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"S3BucketsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/S3Bucket"}},"total_count":{"type":"integer"}}},"S3Bucket":{"type":"object","properties":{"id":{"type":"integer"},"aws_account_id":{"type":"integer"},"aws_account_identifier":{"type":"string"},"bucket_name":{"type":"string"},"region":{"type":"string"},"versioning":{"type":"boolean"},"server_side_encryption":{"type":"boolean"},"data_elements":{"type":"array","items":{"type":"string"}},"personas":{"type":"array","items":{"type":"string"}}}}}},"paths":{"/aws/s3/buckets":{"get":{"summary":"Get S3 buckets","operationId":"getS3Buckets","parameters":[{"in":"query","name":"s3_bucket_ids","schema":{"type":"string"}},{"in":"query","name":"s3_bucket_names","schema":{"type":"string"}},{"in":"query","name":"aws_account_ids","schema":{"type":"string"}},{"in":"query","name":"data_elements","schema":{"type":"string"}},{"in":"query","name":"data_categories","schema":{"type":"string"}},{"in":"query","name":"last_accessed","schema":{"type":"string"}},{"in":"query","name":"last_modified","schema":{"type":"string"}},{"in":"query","name":"created_at","schema":{"type":"string"}},{"in":"query","name":"limit","schema":{"type":"integer"}},{"in":"query","name":"offset","schema":{"type":"integer"}}],"responses":{"200":{"description":"List of S3 buckets","content":{"application/json":{"schema":{"$ref":"#/components/schemas/S3BucketsResponse"}}}}}}}}}
```

## GET /aws/s3/buckets/{id}

> Get S3 bucket by ID

```json
{"openapi":"3.0.3","info":{"title":"AWS S3 API","version":"1.0.0"},"servers":[{"url":"https://api.metadata.demo-001.teleskope.ai/v1"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"S3Bucket":{"type":"object","properties":{"id":{"type":"integer"},"aws_account_id":{"type":"integer"},"aws_account_identifier":{"type":"string"},"bucket_name":{"type":"string"},"region":{"type":"string"},"versioning":{"type":"boolean"},"server_side_encryption":{"type":"boolean"},"data_elements":{"type":"array","items":{"type":"string"}},"personas":{"type":"array","items":{"type":"string"}}}}}},"paths":{"/aws/s3/buckets/{id}":{"get":{"summary":"Get S3 bucket by ID","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"S3 bucket object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/S3Bucket"}}}}}}}}}
```

## GET /aws/s3/objects

> Get S3 objects

```json
{"openapi":"3.0.3","info":{"title":"AWS S3 API","version":"1.0.0"},"servers":[{"url":"https://api.metadata.demo-001.teleskope.ai/v1"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"S3ObjectsResponse":{"type":"object","properties":{"data":{"type":"array","items":{"$ref":"#/components/schemas/S3Object"}}}},"S3Object":{"type":"object","properties":{"id":{"type":"integer"},"key":{"type":"string"},"size":{"type":"integer"},"mime_type":{"type":"string"},"file_type":{"type":"string"},"storage_class":{"type":"string"},"last_modified":{"type":"string","format":"date-time"},"aws_account_id":{"type":"integer"},"s3_bucket_id":{"type":"integer"},"s3_bucket_name":{"type":"string"},"data_elements":{"type":"array","items":{"type":"string"}},"personas":{"type":"array","items":{"type":"string"}}}}}},"paths":{"/aws/s3/objects":{"get":{"summary":"Get S3 objects","operationId":"getS3Objects","parameters":[{"in":"query","name":"s3_object_ids","schema":{"type":"string"}},{"in":"query","name":"s3_object_keys","schema":{"type":"string"}},{"in":"query","name":"s3_bucket_ids","schema":{"type":"string"}},{"in":"query","name":"s3_bucket_names","schema":{"type":"string"}},{"in":"query","name":"aws_account_ids","schema":{"type":"string"}},{"in":"query","name":"data_elements","schema":{"type":"string"}},{"in":"query","name":"data_categories","schema":{"type":"string"}},{"in":"query","name":"data_subject","schema":{"type":"string"}},{"in":"query","name":"last_accessed","schema":{"type":"string"}},{"in":"query","name":"last_modified","schema":{"type":"string"}},{"in":"query","name":"created_at","schema":{"type":"string"}},{"in":"query","name":"limit","schema":{"type":"integer"}},{"in":"query","name":"offset","schema":{"type":"integer"}}],"responses":{"200":{"description":"List of S3 objects","content":{"application/json":{"schema":{"$ref":"#/components/schemas/S3ObjectsResponse"}}}}}}}}}
```

## GET /aws/s3/objects/{id}

> Get S3 object by ID

```json
{"openapi":"3.0.3","info":{"title":"AWS S3 API","version":"1.0.0"},"servers":[{"url":"https://api.metadata.demo-001.teleskope.ai/v1"}],"security":[{"ApiKeyAuth":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"S3Object":{"type":"object","properties":{"id":{"type":"integer"},"key":{"type":"string"},"size":{"type":"integer"},"mime_type":{"type":"string"},"file_type":{"type":"string"},"storage_class":{"type":"string"},"last_modified":{"type":"string","format":"date-time"},"aws_account_id":{"type":"integer"},"s3_bucket_id":{"type":"integer"},"s3_bucket_name":{"type":"string"},"data_elements":{"type":"array","items":{"type":"string"}},"personas":{"type":"array","items":{"type":"string"}}}}}},"paths":{"/aws/s3/objects/{id}":{"get":{"summary":"Get S3 object by ID","parameters":[{"name":"id","in":"path","required":true,"schema":{"type":"integer"}}],"responses":{"200":{"description":"S3 object","content":{"application/json":{"schema":{"$ref":"#/components/schemas/S3Object"}}}}}}}}}
```
