Přeskočit na obsah

API dokumentace

Domee.app poskytuje kompletní REST API pro integraci s externími systémy a automatizaci procesů správy SVJ.

Přehled API

Základní informace

  • Base URL: https://api.domee.cz/v1
  • Autentizace: Bearer token
  • Formát: JSON
  • Rate limiting: 1000 požadavků/hodinu

Verze API

  • v1 - Aktuální stabilní verze
  • v2 - Beta verze (experimentální)
  • Deprecated - Označené pro odstranění

Autentizace

Získání API klíče

  1. Přihlaste se do administrace
  2. Přejděte do sekce API
  3. Vytvořte nový API klíč
  4. Nastavte oprávnění a limity

Použití API klíče

bash
curl -H "Authorization: Bearer YOUR_API_KEY" \
     https://api.domee.cz/v1/properties

Endpointy

Vlastnosti (Properties)

  • GET /properties - Seznam všech nemovitostí
  • GET /properties/{id} - Detail konkrétní nemovitosti
  • POST /properties - Vytvoření nové nemovitosti
  • PUT /properties/{id} - Aktualizace nemovitosti
  • DELETE /properties/{id} - Smazání nemovitosti

Uživatelé (Users)

  • GET /users - Seznam uživatelů
  • GET /users/{id} - Detail uživatele
  • POST /users - Vytvoření nového uživatele
  • PUT /users/{id} - Aktualizace uživatele
  • DELETE /users/{id} - Smazání uživatele

Poruchy (Issues)

  • GET /issues - Seznam poruch
  • GET /issues/{id} - Detail poruchy
  • POST /issues - Nahlášení nové poruchy
  • PUT /issues/{id} - Aktualizace poruchy
  • DELETE /issues/{id} - Smazání poruchy

Hlasování (Voting)

  • GET /voting - Seznam hlasování
  • GET /voting/{id} - Detail hlasování
  • POST /voting - Vytvoření nového hlasování
  • PUT /voting/{id} - Aktualizace hlasování
  • POST /voting/{id}/vote - Odevzdání hlasu

Dokumenty (Documents)

  • GET /documents - Seznam dokumentů
  • GET /documents/{id} - Detail dokumentu
  • POST /documents - Nahrání nového dokumentu
  • PUT /documents/{id} - Aktualizace dokumentu
  • DELETE /documents/{id} - Smazání dokumentu

Příklady použití

JavaScript/Node.js

javascript
const axios = require('axios');

const api = axios.create({
  baseURL: 'https://api.domee.cz/v1',
  headers: {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
  }
});

// Získání seznamu nemovitostí
const properties = await api.get('/properties');

// Vytvoření nové poruchy
const newIssue = await api.post('/issues', {
  title: 'Porucha výtahu',
  description: 'Výtah nefunguje',
  category: 'technical',
  priority: 'high'
});

Python

python
import requests

headers = {
    'Authorization': 'Bearer YOUR_API_KEY',
    'Content-Type': 'application/json'
}

# Získání seznamu uživatelů
response = requests.get(
    'https://api.domee.cz/v1/users',
    headers=headers
)

users = response.json()

# Aktualizace uživatele
update_data = {
    'email': 'new@email.com',
    'phone': '+420123456789'
}

response = requests.put(
    f'https://api.domee.cz/v1/users/{user_id}',
    headers=headers,
    json=update_data
)

PHP

php
<?php
$apiKey = 'YOUR_API_KEY';
$baseUrl = 'https://api.domee.cz/v1';

// Získání dokumentů
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $baseUrl . '/documents');
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Authorization: Bearer ' . $apiKey,
    'Content-Type: application/json'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
$documents = json_decode($response, true);
curl_close($ch);
?>

Chybové kódy

HTTP status kódy

  • 200 - Úspěch
  • 201 - Vytvořeno
  • 400 - Chybný požadavek
  • 401 - Neautorizováno
  • 403 - Zakázáno
  • 404 - Nenalezeno
  • 429 - Příliš mnoho požadavků
  • 500 - Chyba serveru

Formát chybové odpovědi

json
{
  "error": {
    "code": "VALIDATION_ERROR",
    "message": "Chybná validace dat",
    "details": {
      "field": "email",
      "reason": "Neplatný formát emailu"
    }
  }
}

Rate limiting

Limity

  • Standardní účet: 1000 požadavků/hodinu
  • Premium účet: 10000 požadavků/hodinu
  • Enterprise: Neomezeno

Headers

X-RateLimit-Limit: 1000
X-RateLimit-Remaining: 999
X-RateLimit-Reset: 1640995200

Webhooks

Nastavení webhooků

  1. Přejděte do API sekce
  2. Vytvořte nový webhook
  3. Nastavte URL endpoint
  4. Vyberte události pro sledování

Podporované události

  • user.created - Nový uživatel
  • issue.reported - Nahlášená porucha
  • vote.cast - Odevzdaný hlas
  • document.uploaded - Nahraný dokument

Formát webhook payload

json
{
  "event": "issue.reported",
  "timestamp": "2023-01-01T12:00:00Z",
  "data": {
    "id": "123",
    "title": "Porucha výtahu",
    "user_id": "456"
  }
}

SDK a knihovny

Oficiální SDK

  • JavaScript/Node.js - npm install domee-api
  • Python - pip install domee-api
  • PHP - composer require domee/api-client

Community knihovny

  • Go - go get github.com/domee/go-api
  • Ruby - gem install domee-api
  • Java - Maven dependency

Podpora

Dokumentace

  • API Reference - Kompletní dokumentace
  • Postman Collection - Import do Postman
  • OpenAPI Spec - Swagger dokumentace

Kontakt