Elite NetworkElite SaaS · Docsv0.1
GitHubPainel

Properties API

Casas e apartamentos: listar, adicionar, remover, ler cofre e moradores.

Implementado em functions/properties.lua. Lê core_homes, core_residences, mtg_containers.
GET/elite-saas/properties/list🔒 auth

Catálogo: residências cadastradas que NÃO têm dono (livres para alocar). Até 1500 entradas.

json
{
  "properties": [
    {
      "propertyId": "ap-vinewood-001",
      "label": "Apartamento Vinewood 12B",
      "type": "apartment",
      "price": 250000,
      "image": "https://cdn.exemplo.com/properties/vinewood.png"
    }
  ]
}

GET/elite-saas/properties/<userId>🔒 auth

Propriedades de um jogador. Open-schema: residentes, cofre, IPTU, etc. aparecem dinamicamente.

json
{
  "userId": 4823,
  "properties": [
    {
      "propertyId": "ap-vinewood-001",
      "label": "Apartamento Vinewood 12B",
      "type": "apartment",
      "preco": 250000,
      "interior": "studio_a",
      "iptu": "em-dia",
      "residentes": [
        { "userId": 4823, "name": "João",  "role": "owner" },
        { "userId": 9012, "name": "Maria", "role": "resident" }
      ],
      "cofre": { "items": 8, "weight": 12500 }
    }
  ]
}

POST/elite-saas/properties/<userId>/add🔒 auth

Atribui uma propriedade ao usuário. Falha se a propriedade já tiver dono.

propertyId
stringrequired
ID da residência (igual ao retornado em /properties/list).
POST/elite-saas/properties/<userId>/remove🔒 auth

Remove o vínculo do usuário com a propriedade. Não apaga a residência do catálogo.

propertyId
stringrequired
ID que ele possui.

Cofre da propriedade

GET/elite-saas/properties/chest/<propertyId>🔒 auth

Items dentro do cofre da propriedade. Lê mtg_containers.

POST/elite-saas/properties/chest/<propertyId>/remove🔒 auth

Retira item do cofre. Mesma semântica de inventory/remove.

item
stringrequired
Identificador interno.
amount
integeroptional
Default 1.
slot
integeroptional
Slot específico.

Moradores

GET/elite-saas/properties/residents/<propertyId>🔒 auth

Owner + residentes da propriedade. Une dados de core_homes (owner) e mtg_home_residents (extras).

json
{
  "propertyId": "ap-vinewood-001",
  "residents": [
    { "userId": 4823, "name": "João Pereira",  "role": "owner" },
    { "userId": 9012, "name": "Maria Silva",   "role": "resident" }
  ]
}
POST/elite-saas/properties/residents/<propertyId>/remove🔒 auth

Tira morador da propriedade (não funciona com o owner — use /remove de propriedade pra mudar o dono).

userId
integerrequired
Morador a remover.

Tabelas envolvidas

  • core_homes — vínculo user ↔ propriedade. Pode ter residents como JSON/CSV inline.
  • core_residences — catálogo de residências.
  • mtg_containers — cofre, key = propertyId.
  • mtg_home_residents — moradores extra (opcional).
  • vrp_user_identities — pra resolver nomes dos moradores.
Elite Network — Command Center