Autional Autional
API Reference GitHub autional.com →

GET /internal/storage/files

Internal API: Get file list by user ID and tenant ID (for compliance, audit, and inter-service calls), supports pagination and MIME type filtering, sorted by creation time descending. Reference: GDPR Art 32 (Security of Processing).

Storage Service - Internal API None application/json

Request Parameters

NameInTypeRequiredDefaultExampleConstraintsDescription
X-API-Key header string Yes Internal API Key
X-Tenant-ID header string Yes Tenant ID
user_id query string Yes User ID
mime_type query string No MIME type filter (e.g., image/png)
page query integer No Page number (default 1)
page_size query integer No Items per page (default 20)

Responses

StatusDescriptionSchema
200User file list and pagination infodto.FileListResponse
400Parameter validation faileddto.Problem
500Internal server errordto.Problem

Referenced Schemas

dto.FieldViolation

FieldTypeRequiredExampleConstraintsDescription
code string No Code is the error code (optional). Used for programmatic identification of error types, e.g., "required", "format", "range"
description string No Description is a human-readable error description. Should explain what rule was violated, e.g., "Must be a valid email address"
field string No Field is the path to the error field. Uses dot notation for nested fields, e.g., "user.email" or "addresses[0].city"
value object No Value is the value that caused the error (optional, used in development mode). May not be returned in production to avoid leaking sensitive information.

dto.FileListResponse

FieldTypeRequiredExampleConstraintsDescription
code integer No
items array of

See dto.FileMetadataResponse

No Unified use items
message string No
pagination object No Pagination info (nested object)
timestamp string No
total integer No Total count (flattened for easy reading)

dto.FileMetadataResponse

File metadata information

FieldTypeRequiredExampleConstraintsDescription
bucket string No avatars Storage bucket
created_at string No 2026-04-15T10:00:00Z Creation time
etag string No "abc123def456" ETag
file_id string No file_abc123 File ID
is_public boolean No False Visibility?
mime_type string No image/jpeg MIME type
name string No avatar.jpg File name
object_name string No 2026/04/file_abc123.jpg Object name?
original_name string No avatar.jpg Original name
owner_id string No usr_abc123 All IDs
parent_id string No folder_001 Parent folder
size integer No 102400 File size
storage_class string No standard Storage class
tenant_id string No tnt_xyz789 Tenant ID
updated_at string No 2026-04-15T10:30:00Z Update time

dto.Problem

FieldTypeRequiredExampleConstraintsDescription
code integer No Code is the business error code. Used for programmatic handling of specific error scenarios. Example: 30101001
detail string No Detail is a human-readable explanation for this specific error instance. May contain specific error details, e.g., "Field 'email' is required"
errors array of

See dto.FieldViolation

No Errors is a list of field-level validation errors (extension field). Follows Web API standard practice, each error contains field name and error message.
i18n_args object No I18nArgs are internationalization parameters. Used for dynamically filling translation templates.
i18n_key string No I18nKey is the internationalization key. Used for client-side localization of error messages. Example: "error.user_not_found"
instance string No Instance is the specific URI reference where the problem occurred. Usually the request URL, may include query parameters. Example: "/api/v1/users?limit=invalid"
request_id string No RequestID is the unique request identifier. Used for log correlation and issue tracking. Example: "req_550e8400-e29b-41d4-a716-446655440000"
retry_after integer No RetryAfter is used for 429 Too Many Requests responses. Indicates how many seconds the client should wait before retrying (RFC 6585).
service string No Service is the service name. Used in microservice architecture to locate the error source. Example: "auth-service"
span_id string No SpanID is the current span identifier. Used for precise location of the current node in a distributed trace.
status integer No Status is the HTTP status code produced. Used by clients to distinguish problem types, does not change with Accept-Language. Example: 400, 401, 403, 404, 500
timestamp string No Timestamp is the error occurrence time. ISO 8601 format. Example: "2026-04-03T12:00:00Z"
title string No Title is a short, human-readable summary of the problem type. The same Type should always have the same Title (does not vary by instance). Example: "Invalid Request Parameters"
trace_id string No TraceID is the distributed trace identifier. Follows W3C Trace Context standard. Example: "00-0af7651916cd43dd8448eb211c80319c-b7ad6b7169203331-01"
type string No Type is a URI reference that identifies the problem type. When dereferenced, it should provide human-readable documentation. Example: "https://api.example.com/errors/invalid-request"

gitee_com_linmes_authms_base_dto.PageInfo

FieldTypeRequiredExampleConstraintsDescription
has_next boolean No HasNext indicates whether there is a next page
has_prev boolean No HasPrev indicates whether there is a previous page
page integer No Page is the current page number (1-based)
page_size integer No PageSize is the number of items per page
total integer No Total is the total number of items across all pages
total_pages integer No TotalPages is the total number of pages