CLOUD PRIME API

Prime Storage

Prime Storage

Consulte seus buckets e gerencie as chaves de acesso S3. Os arquivos em si não passam por esta API: você emite um par de credenciais aqui e usa qualquer cliente S3 padrão — aws-cli, rclone, boto3, MinIO Client — apontando para o endpoint do bucket.

A criação de buckets acontece na contratação, não por aqui. Um bucket novo gera um item de serviço e entra na fatura, então o provisionamento fica no checkout.

Buckets

Listar buckets

GET /api/buckets

Lista os buckets da sua conta. Buckets com serviço suspenso continuam aparecendo, com o status em service.status — some da lista apenas o que não é seu.

Exemplo de resposta

{
    "data": [
        {
            "id": "9b1f4c2a-...",
            "name": "meus-backups",
            "status": "active",
            "region": "us-east-1",
            "connection": {
                "endpoint": "https://s3.cloudprime.cloud",
                "bucket": "meus-backups",
                "region": "us-east-1",
                "s3_url": "https://s3.cloudprime.cloud/meus-backups"
            },
            "settings": {
                "storage_class": "standard",
                "versioning_enabled": false,
                "public_access": false,
                "object_lock_enabled": false
            },
            "usage": {
                "storage_used_bytes": 2684354560,
                "storage_limit_bytes": 107374182400,
                "storage_percentage": 2.5,
                "storage_exceeded": false,
                "objects_count": 1420
            },
            "service": {
                "id": "0192aa...",
                "status": "active"
            },
            "created_at": "2026-06-29T12:00:00+00:00"
        }
    ]
}

Detalhar bucket

GET /api/buckets/{id}

Retorna um bucket específico, com dados de conexão, configurações e consumo.

Parâmetros de rota

Campo Tipo Descrição
id obrigatório uuid ID do bucket (precisa ser da sua conta).
Limites vêm em bytes e podem ser nullnull significa ilimitado, não zero.

Credenciais

Cada bucket aceita vários pares de credenciais, um por integração. Isso permite revogar o acesso de um sistema sem derrubar os outros.

Listar credenciais

GET /api/buckets/{id}/credentials

Lista as credenciais emitidas para o bucket. O secret_key não aparece aqui.

Exemplo de resposta

{
    "data": [
        {
            "id": "0192bb...",
            "label": "deploy-producao",
            "access_key": "AKIAEXAMPLE123456",
            "is_primary": false,
            "status": "active",
            "last_used_at": "2026-08-16T09:31:00+00:00",
            "revoked_at": null,
            "created_at": "2026-08-01T10:00:00+00:00"
        }
    ]
}

Emitir credencial

POST /api/buckets/{id}/credentials

Cria um novo par de chaves no provedor de storage e devolve as duas.

Corpo (JSON)

Campo Tipo Descrição
label string Nome para identificar o par (até 100 caracteres).

Exemplo de resposta

{
    "data": {
        "id": "0192bb...",
        "label": "deploy-producao",
        "access_key": "AKIAEXAMPLE123456",
        "secret_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
        "is_primary": false,
        "status": "active",
        "created_at": "2026-08-17T10:00:00+00:00"
    }
}
Esta é a única resposta que traz o secret_key. Guarde na hora — ele não é recuperável depois, nem por este endpoint nem pelo painel. Perdeu, emita outro par e revogue o antigo.

Responde 409 quando o serviço não permite emitir chaves, com o motivo em reason: service_suspended, overdue_invoices ou no_active_service. Ler o bucket continua funcionando nesses casos — o que fica bloqueado é criar um acesso novo, porque a chave sobreviveria à suspensão.

Revogar credencial

DELETE /api/buckets/{id}/credentials/{credentialId}

Revoga o par no provedor. O acesso para de funcionar imediatamente e a operação não tem volta.

Parâmetros de rota

Campo Tipo Descrição
id obrigatório uuid ID do bucket.
credentialId obrigatório uuid ID da credencial (precisa pertencer a este bucket).
A credencial primária não pode ser revogada (422): é com ela que a plataforma administra o bucket.

Usando as credenciais

Com o par em mãos, qualquer cliente S3 funciona. Exemplo com aws-cli:

Exemplo de resposta

aws configure set aws_access_key_id AKIAEXAMPLE123456
aws configure set aws_secret_access_key wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY

aws --endpoint-url https://s3.cloudprime.cloud s3 ls s3://meus-backups
aws --endpoint-url https://s3.cloudprime.cloud s3 cp ./dump.sql s3://meus-backups/

Limites

Os endpoints de leitura seguem o limite geral de 60 requisições por minuto. Emitir e revogar credenciais têm limite próprio de 10 por minuto, por conta.