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

# [Prompty AI](https://intum.fr/aide/noe-ai/prompty-ai.md) | [API](#api)

## Prompty AI

Prompty to instrukcje definiujące zachowanie modeli AI w różnych kontekstach — np. jak AI ma odpowiadać na pytania, w jakim tonie pisać, jakie dane uwzględniać.

## Rodzaje promptów

- **Chat** — prompty używane w rozmowach z AI (definiują osobowość i zachowanie asystenta)
- **Agent** — prompty używane do automatyzacji zadań (agent wykonuje akcje przez API)

## Kaskadowe wyszukiwanie

System szuka promptu w następującej kolejności:

1. **Użytkownik** — prompt ustawiony dla konkretnego użytkownika
2. **Zespół** — prompt ustawiony dla zespołu
3. **Departament** — prompt ustawiony dla departamentu
4. **Konto** — prompt ustawiony na poziomie całego konta
5. **Systemowy** — domyślny prompt z pliku systemowego

Dzięki temu różni użytkownicy mogą mieć różne zachowanie AI.

## Zmienne Liquid

Prompty obsługują zmienne w formacie Liquid (`{{ zmienna }}`), które są automatycznie wypełniane kontekstem — np. nazwą użytkownika, danymi zadania, tokenem API.

## Zarządzanie

Prompty można tworzyć i edytować w ustawieniach Noe AI. Każdy prompt ma:
- **Kod** — unikalny identyfikator (np. `task_new`)
- **Zawartość** — treść instrukcji
- **Typ** — chat lub agent
- **Scope** — poziom (użytkownik, zespół, departament, konto)

---

## 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**

# Prompty AI — API

**Autoryzacja:** `Authorization: Bearer TOKEN`
**Content-Type:** `application/json`

## Endpoints

| Metoda | Ścieżka | Opis |
|--------|---------|------|
| GET | `/noe/prompts.json` | Lista promptów |
| GET | `/noe/prompts/:id.json` | Szczegóły prompta |
| POST | `/noe/prompts.json` | Tworzenie prompta |
| PATCH | `/noe/prompts/:id.json` | Aktualizacja prompta |
| DELETE | `/noe/prompts/:id.json` | Usunięcie prompta |
| GET | `/noe/prompt/:code` | Pobranie prompta po kodzie (resolved — uwzględnia kaskadę) |
| GET | `/noe/prompts/system/:code` | Pobranie systemowego prompta |

## Pola

| Pole | Typ | Wymagane | Opis |
|------|-----|----------|------|
| `name` | string | tak | Nazwa prompta |
| `code` | string | tak | Kod unikalny (per scope) |
| `kind` | string | tak | Rodzaj: `chat`, `agent` |
| `content` | text | tak | Treść prompta (markdown) |
| `scope` | string | nie | Zakres: `user`, `team`, `department`, `account` |
| `scope_id` | integer | nie | ID obiektu zakresu |

## Kaskadowe wyszukiwanie

Endpoint `/noe/prompt/:code` szuka prompta w kolejności:
1. Użytkownik (`scope: user`)
2. Zespół (`scope: team`)
3. Departament (`scope: department`)
4. Konto (`scope: account`)
5. Plik systemowy (`app/src/noe/prompts/:code.md`)

## POST — Tworzenie prompta

```json
POST /noe/prompts.json

{
  "prompt": {
    "name": "Redaktor treści",
    "code": "content_editor",
    "kind": "agent",
    "scope": "account",
    "content": "Jesteś doświadczonym redaktorem. Poprawiaj styl i gramatykę."
  }
}
```

## Zmienne Liquid

Prompty obsługują zmienne `{{ zmienna }}` wypełniane kontekstem:
- `{{ api_token }}` — token API
- `{{ host }}` — adres hosta
- `{{ desk_name }}`, `{{ desk_id }}` — kontekstowe zmienne
- `{{ "code" | prompt_url }}` — URL do innego prompta

---

## Powiązane

- [Noe AI w Intum](https://intum.fr/aide/noe-ai/noe-ai.md)
