Atualiza doc Coolify API e configura Vaultwarden com PostgreSQL

- Documentacao completa da API Coolify com endpoints corretos
- Projeto renomeado de 'My first project' para 'Infraestrutura'
- Banco PostgreSQL criado para Vaultwarden
- VAULTWARDEN_DB_URL atualizado para usar PostgreSQL
This commit is contained in:
Tiago Yamamoto 2026-02-17 15:39:28 -06:00
parent 01b4005e32
commit 6b3af3d962

View file

@ -5,97 +5,159 @@
https://redbull.rede5.com.br/api/v1
```
## Authentication
Use Bearer token authentication:
```bash
curl -H "Authorization: Bearer $TOKEN" ...
## Authorization
A API requer um token `Bearer` no header `Authorization`.
### Gerar Token
1. Acesse `Keys & Tokens` / `API tokens` no painel Coolify
2. Defina um nome para o token e clique em `Create New Token`
3. Copie o token (so aparece uma vez)
### Token Atual
```
2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9
```
Token: `2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9`
### Permissoes
- `read-only` (default): apenas leitura
- `read:sensitive`: leitura + dados sensiveis
- `view:sensitive`: visualizar dados sensiveis
- `*`: acesso total
## Quick Commands
## Endpoints Principais
### List all applications
### Applications
| Metodo | Endpoint | Descricao |
|--------|----------|-----------|
| GET | `/applications` | Listar aplicacoes |
| GET | `/applications/{uuid}` | Obter aplicacao |
| GET | `/applications/{uuid}/start` | Iniciar aplicacao |
| GET | `/applications/{uuid}/stop` | Parar aplicacao |
| GET | `/applications/{uuid}/restart` | Reiniciar aplicacao |
| DELETE | `/applications/{uuid}` | Deletar aplicacao |
| PATCH | `/applications/{uuid}` | Atualizar aplicacao |
### Databases
| Metodo | Endpoint | Descricao |
|--------|----------|-----------|
| GET | `/databases` | Listar bancos |
| GET | `/databases/{uuid}` | Obter banco |
| POST | `/databases/postgresql` | Criar PostgreSQL |
| POST | `/databases/mysql` | Criar MySQL |
| POST | `/databases/mariadb` | Criar MariaDB |
| POST | `/databases/mongodb` | Criar MongoDB |
| POST | `/databases/redis` | Criar Redis |
| GET | `/databases/{uuid}/start` | Iniciar banco |
| GET | `/databases/{uuid}/stop` | Parar banco |
| DELETE | `/databases/{uuid}` | Deletar banco |
### Deployments
| Metodo | Endpoint | Descricao |
|--------|----------|-----------|
| GET | `/deployments` | Listar deployments |
| GET | `/deploy?uuid={uuid}` | Deploy por UUID |
| GET | `/deploy?tag={tag}` | Deploy por tag |
### Projects
| Metodo | Endpoint | Descricao |
|--------|----------|-----------|
| GET | `/projects` | Listar projetos |
| POST | `/projects` | Criar projeto |
| GET | `/projects/{uuid}` | Obter projeto |
| PATCH | `/projects/{uuid}` | Atualizar projeto |
| DELETE | `/projects/{uuid}` | Deletar projeto |
### Servers
| Metodo | Endpoint | Descricao |
|--------|----------|-----------|
| GET | `/servers` | Listar servidores |
| GET | `/servers/{uuid}` | Obter servidor |
| GET | `/servers/{uuid}/domains` | Listar dominios |
## Exemplos
### Listar Aplicacoes
```bash
curl -s -H "Authorization: Bearer $(cat ~/.ssh/coolify-redbull-token)" "https://redbull.rede5.com.br/api/v1/applications"
curl -s -H "Authorization: Bearer $TOKEN" \
"https://redbull.rede5.com.br/api/v1/applications"
```
### Deploy by UUID
### Criar PostgreSQL Database
```bash
# Frontend
curl -s -X GET -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deploy?uuid=ao8g40scws0w4cgo8coc8o40"
# Backend
curl -s -X GET -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deploy?uuid=iw4sow8s0kkg4cccsk08gsoo"
curl -s -X POST -H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
"https://redbull.rede5.com.br/api/v1/databases/postgresql" \
-d '{
"name": "my-database",
"description": "PostgreSQL database",
"project_uuid": "t0c4ss0wkcgwg48g088wkwgs",
"environment_name": "production",
"server_uuid": "m844o4gkwkwcc0k48swgs8c8",
"destination_uuid": "e0ggcws4gsw4w4wkgggkg8ow",
"postgres_user": "myuser",
"postgres_password": "mypassword",
"postgres_db": "mydb",
"image": "postgres:16-alpine",
"instant_deploy": true
}'
```
### Check deployment status
### Deploy por UUID
```bash
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deployments/{deployment_uuid}"
curl -s -H "Authorization: Bearer $TOKEN" \
"https://redbull.rede5.com.br/api/v1/deploy?uuid={UUID}"
```
### Start/Stop/Restart application
### Atualizar Dominio
```bash
# Start
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications/{uuid}/start"
# Stop
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications/{uuid}/stop"
# Restart
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications/{uuid}/restart"
curl -s -X PATCH -H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
"https://redbull.rede5.com.br/api/v1/applications/{UUID}" \
-d '{"domains":"https://meu-dominio.com"}'
```
## Application UUIDs
## UUIDs Importantes
| App | UUID |
|-----|------|
| gohorsejobs-backend-dev | iw4sow8s0kkg4cccsk08gsoo |
| gohorsejobs-backoffice-dev | hg48wkw4wggwsswcwc8sooo4 |
| gohorsejobs-frontend-dev | ao8g40scws0w4cgo8coc8o40 |
| gohorsejobs-seeder-dev | q4w48gos8cgssso00o8w8gck |
| rodiziosdaqui-backend-dev | ecso4woo4woo0ks84888k8ck |
| rodiziosdaqui-backoffice-dev | s4kskw08400wcw8g40ossggo |
| rodiziosdaqui-frontend-dev | l4g4cc884gc04kg8s480gs48 |
| rodiziosdaqui-seeder-dev | ko0kkw4kw8g80scksg8sk0wc |
### Server
| Nome | UUID |
|------|------|
| localhost | `m844o4gkwkwcc0k48swgs8c8` |
## Scripts
### Destination (Docker Network)
| Nome | UUID |
|------|------|
| coolify | `e0ggcws4gsw4w4wkgggkg8ow` |
### Health Check Script
### Projects
| Nome | UUID |
|------|------|
| Infraestrutura | `t0c4ss0wkcgwg48g088wkwgs` |
| gohorsejobs | `gkgksco0ow4kgwo8ow4cgs8c` |
| rodiziosdaqui | `iooos0488ww0coccosc0sk4c` |
| obramarket | `scwgsc8k0w84gkc88c080ck4` |
### Environments (Infraestrutura)
| Nome | UUID |
|------|------|
| production | `sw4ckcgkgs0wssgs40os8s0g` |
## Variaveis de Ambiente
```bash
export COOLIFY_TOKEN="2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9"
export COOLIFY_URL="https://redbull.rede5.com.br/api/v1"
export COOLIFY_SERVER="m844o4gkwkwcc0k48swgs8c8"
export COOLIFY_DESTINATION="e0ggcws4gsw4w4wkgggkg8ow"
```
## Script de Health Check
```bash
#!/bin/bash
TOKEN=$(cat ~/.ssh/coolify-redbull-token | tr -d '\n')
echo "=== Coolify Health Check ==="
curl -s -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/applications" | python -c "
import json,sys
d = json.load(sys.stdin)
for a in d:
status = a.get('status','unknown')
icon = '✅' if 'running' in status else '❌'
print(f'{icon} {a[\"name\"]}: {status}')
"
TOKEN="2|tjaxz6z6osQUz6whMvNMw23kcBqgToQAvMjSLos347164da9"
curl -s -H "Authorization: Bearer $TOKEN" \
"https://redbull.rede5.com.br/api/v1/applications" | jq -r '.[] | "\(.name): \(.status)"'
```
### Restart All Services
```bash
#!/bin/bash
TOKEN=$(cat ~/.ssh/coolify-redbull-token | tr -d '\n')
UUIDS=(
"ao8g40scws0w4cgo8coc8o40"
"q4w48gos8cgssso00o8w8gck"
"iw4sow8s0kkg4cccsk08gsoo"
"hg48wkw4wggwsswcwc8sooo4"
"ecso4woo4woo0ks84888k8ck"
"s4kskw08400wcw8g40ossggo"
"l4g4cc884gc04kg8s480gs48"
"ko0kkw4kw8g80scksg8sk0wc"
)
for uuid in "${UUIDS[@]}"; do
echo "Deploying $uuid..."
curl -s -X GET -H "Authorization: Bearer $TOKEN" "https://redbull.rede5.com.br/api/v1/deploy?uuid=$uuid"
done
```
## Useful Links
- Coolify Docs: https://coolify.io/docs
- API Reference: https://coolify.io/docs/api-reference/authorization
## Links
- [Coolify API Docs](https://coolify.io/docs/api-reference/authorization)
- [GitHub Issues](https://github.com/coollabsio/coolify/issues)