ligbox-ops-platform/specs/028-openpanel-ce-ligbox-reengineering/contracts/foss-bridge-api.md
Ligbox Spec Hub 2d2b74fad8 docs(spec-043): mapa activação cliente e ligações cruzadas
Documenta Wizard→Desk→FOSS→OpenPanel→Odoo com contratos, rollback e
registo SPEC-REGISTRY antes da implementação das fases de activação.

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-07-01 15:06:19 +00:00

57 lines
1.4 KiB
Markdown

# Contrato — Bridge FOSS ↔ OpenPanel (Ligbox v2)
**Mapa campos completo:** [Spec 043 activation-field-mapping.md](../../043-desk-client-activation-sync/contracts/activation-field-mapping.md)
**Base URL:** `http://10.10.10.123:18087`
**Auth:** Bearer token (obtido via POST `/api` com credenciais OpenAdmin)
## POST /api — login
**Request:**
```json
{"username": "ligboxadmin", "password": "LbOpen805353"}
```
**Response 200:**
```json
{"access_token": "ligbox-community-bridge-token"}
```
## POST /api/users — provisionar
**Headers:** `Authorization: Bearer <token>`
**Request:**
```json
{
"username": "string [a-z][a-z0-9]{2,15}",
"password": "string",
"email": "string",
"plan_name": "ligbox-site-cms",
"domain": "string (opcional mas recomendado)"
}
```
**Response 200:**
```json
{
"success": true,
"response": {
"message": "Successfully added user ...\nDomain ... added successfully",
"username": "cliente1",
"domain": "cliente1.com"
}
}
```
## Compatibilidade FOSSBilling OpenPanel.php
O módulo oficial envia `username`, `password`, `email`, `plan_name`.
Patch Ligbox adiciona `domain` via `$account->getDomain()`.
FOSS considera sucesso se `success: true` OU mensagem contém `Successfully added user`.
## SLA operacional
- Timeout recomendado: **180s** por request (provisionamento Docker)
- Retry: não automático — idempotência parcial (user exists → erro)