[Intum](https://intum.pl/pomoc.md) / [Noe AI](https://intum.pl/pomoc/noe-ai.md)

# [Aplikacje Noe: Twoje własne narzędzia i ulepszenia w systemie](https://intum.pl/pomoc/noe-ai/aplikacje-noe.md) | [API](#api)

## Czym są aplikacje Noe?
Aplikacje Noe to interaktywne narzędzia i strony internetowe, które możesz tworzyć bezpośrednio w przeglądarce, bez konieczności budowania skomplikowanego zaplecza programistycznego (backendu).
Cały proces jest bajecznie prosty: edytujesz kod w Intum, a system natychmiast go przetwarza i uruchamia gotową aplikację pod jej własnym adresem URL lub automatycznie dodaje ją w wybranym miejscu w systemie.
## Trzy rodzaje aplikacji Noe
W zależności od potrzeb, Twoja aplikacja Noe może działać jako zupełnie niezależny program lub jako małe, sprytne ulepszenie systemu Intum. Do wyboru masz trzy warianty:

### 1. Samodzielne aplikacje
To klasyczne programy dostępne pod własnym, czytelnym adresem (według wzoru `/a/url_code`). Mogą to być różnego rodzaju kalkulatory, tablice wskaźników (dashboardy), mini-narzędzia, gry czy formularze.
- **Dla kogo?** Mogą być publiczne (dostępne dla każdego w internecie, bez logowania) lub prywatne (widoczne tylko dla zalogowanych użytkowników Twojego konta).
- **Przykłady:** kalkulator marży, generator bezpiecznych haseł, prosty system CRM stworzony na potrzeby konkretnego zespołu lub gra urozmaicająca firmowy event.

### 2. Aplikacje integracyjne Intum
To gotowe rozwiązania, które łączą Intum z zewnętrznymi programami i serwisami – na przykład z Fakturownią, KSeF, Allegro, sklepami internetowymi czy systemami bankowymi. Część z nich otrzymujesz prosto od Intum, a część możesz zbudować samodzielnie, korzystając z gotowych łączników (Moduły Connect / InConnector).
- **Jak to działa?** Taka aplikacja pobiera dane z zewnętrznego serwisu, wyświetla je w czytelny sposób w Intum i pozwala Ci na szybkie działanie - np. kliknięcie przycisku „importuj fakturę” lub „wyślij do JPK”. Bardzo często aplikacje te korzystają z podręcznej bazy danych Noe (`db_code`), w której zapisują swoje ustawienia oraz pamięć podręczną (cache).

### 3. Aplikacje wewnętrzne (osadzone bezpośrednio w Intum)
To niewielkie skrypty, które „wtapiają się” w konkretne strony systemu Intum, aby zmienić ich działanie lub dodać zupełnie nowe opcje.
- **Przykłady:** aplikacja może automatycznie podświetlać wiadomości od kluczowego klienta w Twojej skrzynce odbiorczej, dodać nowy, przydatny przycisk na karcie klienta lub zmienić wygląd listy zadań.
- O tym, w którym miejscu system wyświetli dane ulepszenie, decyduje proste pole `show_in_module`. Pełny opis tego rozwiązania oraz listę miejsc, w które możesz się wpiąć, znajdziesz w artykule: [*Aplikacje Noe Wewnętrzne*](https://intum.pl/pomoc/noe-ai/aplikacje-noe-wewnetrzne).

## Nowoczesne silniki renderowania (technologie)
Tworząc aplikację, możesz wybrać technologię, w której będzie ona wyświetlana. Dopasuj ją do swoich umiejętności lub potrzeb projektu:
- **Svelte 5** - bardzo nowoczesne, szybkie i płynne narzędzie (framework reaktywny), które system przetwarza bezpośrednio na serwerze.
- **Vue 3** - niezwykle popularny i lubiany framework z intuicyjnym podejściem Composition API.
- **React 19** - klasyczny, sprawdzony standard rynkowy korzystający z zapisu JSX.
- **JavaScript** - czysty, tradycyjny kod JS. Nie wymaga żadnego przetwarzania, dzięki czemu uruchamia się najszybciej.
- **HTML** - prosta, statyczna strona, którą możesz upiększyć własnym stylem CSS.
- **Kaboom / Phaser** - specjalne silniki stworzone do projektowania gier dwu- i trójwymiarowych (2D/3D).
Dodatkowo możesz zdecydować, jak chcesz ostylować swoją aplikację za pomocą języka CSS. Masz do wyboru: **tailwind_all** (szybkie ładowanie z sieci zewnętrznej za pomocą CDN), **tailwind** (wersja kompilowana przez system, która zajmuje mniej miejsca i działa wydajniej) lub opcję **none** (brak gotowych stylów).

## Najważniejsze funkcje i możliwości
Aplikacje Noe oferują zestaw narzędzi, które maksymalnie ułatwiają pracę:
- **Wbudowany edytor kodu** - wygodne okno do pisania programu, które automatycznie koloruje składnię, ułatwiając czytanie kodu.
- **Automatyczne wdrażanie** - Twój kod kompiluje (odświeża) się samoczynnie w momencie, gdy klikasz „zapisz”.
- **Kontrola prywatności** - sam decydujesz, czy aplikacja ma być publiczna dla całego świata, czy bezpieczna i zamknięta (prywatna).
- **Przyjazne linki** - zapomnij o skomplikowanych ciągach znaków (UUID). Możesz nadać aplikacji prostą nazwę w polu `url_code` (np. `/a/kalkulator`).
- **Szybkie klonowanie** - jednym kliknięciem stworzysz kopię zapasową lub nową wersję istniejącej aplikacji, aby na niej eksperymentować.
- **Dedykowana baza danych Noe** - wpisując kod bazy (`db_code`), podłączasz aplikację pod nowoczesną bazę dokumentową. Co ważne, kilka różnych aplikacji może korzystać z tej samej bazy i dzielić się informacjami.
- **Wsparcie Sztucznej Inteligencji (Prompt AI)** - do swojej aplikacji możesz dołączyć specjalne instrukcje systemowe dla AI, które pomogą jej działać inteligentniej.
- **Automatyzacja procesów (Flow)** - możesz uruchamiać zaawansowane procesy biznesowe (Flow) bezpośrednio z poziomu wyglądu (frontendu) swojej aplikacji.
- **Historia zmian** - system pamięta starsze wersje Twojego kodu. Jeśli popełnisz błąd, w każdej chwili możesz bezpiecznie przywrócić działającą wersję z przeszłości.

## Chcesz zobaczyć, jak to działa w praktyce?
Przygotowaliśmy dla Ciebie instrukcję krok po kroku wraz z gotowym, darmowym kodem JavaScript. Zobacz nasz poradnik: [*Jak dodać własną apkę Noe podświetlającą maile od konkretnego nadawcy*](https://intum.pl/pomoc/poradnik/jak-dodac-wlasna-apke-noe-podswietlajaca-maile-od-konkretnego-nadawcy), i przekonaj się, jak łatwo możesz dopasować system Intum do własnych nawyków!


---

## API

### Ogólne API

# Intum API

Dokumentacja API platformy [Intum](https://intum.pl) - system operacyjny firmy.

## Host

Host jest zawsze taki sam jak adres konta: `xxxx.intum.com` lub `xxx.intum.pl` (w zależności od ustawień konta)

## Autoryzacja

Wszystkie requesty API wymagają `api_token`:
- header: `Authorization: Bearer TOKEN`

Token możesz wygenerować w **Ustawienia Konta** → **Tokeny API**

# Aplikacje Noe — API

**Autoryzacja:** `Authorization: Bearer TOKEN`
**Content-Type:** `application/json`

## Endpoints

| Metoda | Ścieżka | Opis |
|--------|---------|------|
| GET | `/noe/apps.json` | Lista aplikacji |
| GET | `/noe/apps/:id.json` | Szczegóły aplikacji |
| POST | `/noe/apps.json` | Utworzenie aplikacji |
| PATCH | `/noe/apps/:id.json` | Aktualizacja aplikacji |
| DELETE | `/noe/apps/:id.json` | Usunięcie aplikacji |
| PATCH | `/noe/apps/:id/replace.json` | Częściowa edycja pola (replace API) |
| GET | `/noe/apps/:id/versions` | Historia wersji |
| POST | `/noe/apps/:id/restore_version` | Przywrócenie wersji |
| GET | `/a/:url_code` | Uruchomienie aplikacji (publiczny URL) |

## Pola

| Pole | Typ | Wymagane | Opis |
|------|-----|----------|------|
| `name` | string | tak | Nazwa aplikacji |
| `url_code` | string | nie | Przyjazny URL slug (np. `kalkulator` → `/a/kalkulator`) |
| `description` | text | nie | Opis aplikacji |
| `app_engine` | string | tak | Silnik: `svelte`, `vue`, `react`, `js`, `html` |
| `css_engine` | string | tak | CSS: `tailwind_all` (CDN), `tailwind` (kompilowany), `none` |
| `source_code` | text | tak | Kod źródłowy (max 200 000 znaków) |
| `public` | boolean | nie | Dostępna bez logowania (default: false) |
| `active` | boolean | nie | Czy aktywna (default: true) |
| `db_code` | string | nie | Kod bazy Noe::Db |
| `show_in_module` | string | nie | Osadzenie w module (np. `organize`, `tasks/show`) |
| `prompt` | text | nie | Prompt systemowy dla AI |

## POST — Utworzenie

```json
POST /noe/apps.json

{
  "app": {
    "name": "Kalkulator",
    "url_code": "kalkulator",
    "app_engine": "svelte",
    "css_engine": "tailwind_all",
    "public": true,
    "source_code": "<script>\n  let count = $state(0);\n</script>\n<button onclick={() => count++}>{count}</button>"
  }
}
```

## PATCH — Replace API

Częściowa edycja pola (np. podmiana fragmentu kodu):

```json
PATCH /noe/apps/:id/replace.json

{
  "field": "source_code",
  "old": "let count = $state(0)",
  "new": "let count = $state(10)"
}
```

---

## Powiązane

- [Aplikacje Noe Wewnętrzne](https://intum.pl/pomoc/noe-ai/aplikacje-noe-wewnetrzne.md)
- [Jak dodać własną aplikację Noe podświetlającą maile od konkretnego nadawcy](https://intum.pl/pomoc/poradnik/jak-dodac-wlasna-apke-noe-podswietlajaca-maile-od-konkretnego-nadawcy.md)
- [Noe AI w Intum: Twoja sztuczna inteligencja na wyciągnięcie ręki](https://intum.pl/pomoc/noe-ai/noe-ai.md)
