Přeskočit na hlavní obsah

Vytvořte s Siesta AI

Vytvářejte produkční integrace tím, že svému kódovacímu agentovi poskytnete kompletní manifest Siesta AI. Manifest je soubor JSON, který popisuje rozhraní API Siesta AI, autentizační hlavičky, požadované parametry, vlastní kontextová pole, účely koncových bodů, záměr automatizace a pravidla implementace, která musí agent dodržovat.

Cíl je jednoduchý: vygenerujte nebo stáhněte jeden soubor JSON, přidejte ho do svého vlastního agenta nebo pracovního postupu kódování a začněte budovat s již definovaným kontextem integrace.

Vstupní body pro vývojáře

Developer surface

Pick the integration path, then hand your agent the manifest.

Start with the API surface that matches the experience: backend calls, realtime sessions, embedded web chat, or a generated implementation contract for your coding agent.

{
  "siestaAi": {
    "apiBaseUrl": "https://api.siesta.ai",
    "requiredHeaders": ["X-Api-Key", "X-Org-Id"],
    "operations": [
      "POST /api/v1/Agent/{agentId}/response",
      "POST /api/v1/Agent/{agentId}/realtime-session"
    ]
  }
}
Live example

cmd.siesta.ai

A live use case built on top of Siesta AI. Use it as a reference for how an agent-powered workflow can feel when the integration is already wired.

Open live build

Vygenerujte manifest agenta

Použijte tento nástroj k vytvoření siesta-agent-manifest.json pro váš případ použití. Vyberte jeden integrační režim, přidejte ID a pole, která váš agent potřebuje, a poté zkopírujte nebo stáhněte vygenerovaný JSON a dejte ho svému kódovacímu agentovi. Každý režim produkuje svůj vlastní tvar manifestu; smlouvy pro externí API, realtime API a webové pluginy nejsou smíchány.

Additional assistantsOptional targets the generated app can select or hand off to.
Add another assistant only when the generated app should switch targets, compare specialists, or hand off between Siesta AI agents.
Written into the manifest as the build intent for this mode.
Siesta AI API operationsExternal API manifest includes only this endpoints set.
17
GET/api/v1/Agent

List or search available agents before choosing the implementation target.

X-Api-Key, X-Org-Id
POST/api/v1/Agent

Create an agent from a backend, setup wizard, or customer portal flow.

X-Api-Key, X-Org-Id, CreateAgentRequest
POST/api/v1/Agent/{agentId}/response

Send a message or structured request to a specific agent and receive the response.

X-Api-Key, X-Org-Id, agentId, CreateAgentResponseRequest
POST/api/v1/File

Upload files as multipart/form-data before attaching file context to an agent flow.

X-Api-Key, X-Org-Id, file
GET/api/v1/File/{id}

Download a file previously uploaded or returned through an External API flow.

X-Api-Key, X-Org-Id, id
GET/api/v1/DataSourceCollection

List persistent data source collections that can provide durable knowledge to agents.

X-Api-Key, X-Org-Id
POST/api/v1/DataSourceCollection

Create a persistent data source collection for reusable agent knowledge.

X-Api-Key, X-Org-Id, CreateDataSourceCollectionRequest
GET/api/v1/DataSourceCollection/{id}

Read one data source collection before attaching or updating knowledge context.

X-Api-Key, X-Org-Id, id
PUT/api/v1/DataSourceCollection/{id}

Update a data source collection after a governed change to reusable knowledge.

X-Api-Key, X-Org-Id, id, UpdateDataSourceCollectionRequest
GET/api/v1/Task

Search tasks by workspace, status, source agent, paging, and sort parameters.

X-Api-Key, X-Org-Id
GET/api/v1/Task/{id}

Read task details for follow-up, review, or synchronization back to another system.

X-Api-Key, X-Org-Id, id
POST/api/v1/Task

Create a task from an approved agent outcome.

X-Api-Key, X-Org-Id, CreateTaskRequest
PUT/api/v1/Task/{id}

Update an existing task when an external workflow changes status, owner, or review context.

X-Api-Key, X-Org-Id, id, UpdateTaskRequest
GET/api/v1/Connection

Read configured connections that the integration can reference.

X-Api-Key, X-Org-Id
GET/api/v1/Workspace

Resolve workspaces for task routing and workspace-scoped operations.

X-Api-Key, X-Org-Id
GET/api/v1/AuditLog

Search audit records for compliance review, incident investigation, or synchronization logs.

X-Api-Key, X-Org-Id
GET/api/v1/AuditLog/{id}

Read one audit record with detailed changed properties and correlation context.

X-Api-Key, X-Org-Id, id
Values this manifest gives to the coding agentRequired values must be available before the implementation can run. Optional values add useful context when your product has them.
3
How to use this

Keep the Siesta fields that are already listed here. Add a custom field only when your own product has an ID, URL, status, customer record, or other value the agent needs to build the integration correctly.

Included for External APIThese are written into requiredContextFields in the JSON preview.
agentIdRequired · uuid

Siesta AI agent that should handle the integration flow.

organizationIdRequired · uuid

Siesta AI organization sent as X-Org-Id.

workspaceIdOptional · uuid

Workspace used when creating or filtering tasks.

Add one value from your product

Examples: customerId for a CRM record, ticketId for a support case, siteUrl for a website preview, or workspaceSlug for tenant routing.

Send X-Api-Key and X-Org-Id on server-side Siesta API requests. Keep API keys out of browser code and prompts.
Show generated manifest JSONHidden by default so the page keeps one primary manifest example visible below.
siesta-agent-manifest.jsonExternal API · 17 endpoints
{
  "manifestVersion": "1.0",
  "manifestType": "siesta-external-api",
  "name": "customer-support-copilot-on-siesta-ai",
  "useCase": "Customer support copilot on Siesta AI",
  "inputs": {
    "baseUrl": "https://api.siesta.ai",
    "organizationId": "<siesta-organization-id>",
    "agentId": "<siesta-agent-id>",
    "assistants": [
      {
        "role": "primary",
        "label": "Primary assistant",
        "agentId": "<siesta-agent-id>",
        "purpose": "Default Siesta AI assistant used for endpoint paths, realtime sessions, or widget mounting."
      }
    ],
    "integrationMode": "external-api",
    "requiredContextFieldCount": 3,
    "operationCount": 17
  },
  "integration": {
    "mode": "external-api",
    "intent": "Use Siesta AI API v1 from a trusted backend to call the selected agent, upload files when the user provides attachments, and create tasks only after human approval."
  },
  "requiredContextFields": [
    {
      "name": "agentId",
      "type": "uuid",
      "required": true,
      "description": "Siesta AI agent that should handle the integration flow."
    },
    {
      "name": "organizationId",
      "type": "uuid",
      "required": true,
      "description": "Siesta AI organization sent as X-Org-Id."
    },
    {
      "name": "workspaceId",
      "type": "uuid",
      "required": false,
      "description": "Workspace used when creating or filtering tasks."
    }
  ],
  "openApiSource": "https://api.siesta.ai/swagger/v1/swagger.json",
  "apiReference": "https://api.siesta.ai/swagger/index.html?urls.primaryName=Public+API+v1",
  "objective": "Give a coding agent only the External API v1 contract needed to call Siesta AI from a trusted backend.",
  "siestaAi": {
    "apiBaseUrl": "https://api.siesta.ai",
    "assistants": [
      {
        "role": "primary",
        "label": "Primary assistant",
        "agentId": "<siesta-agent-id>",
        "purpose": "Default Siesta AI assistant used for endpoint paths, realtime sessions, or widget mounting."
      }
    ],
    "docs": {
      "externalApi": "https://docs.siesta.ai/external-api",
      "apiReference": "https://api.siesta.ai/swagger/index.html?urls.primaryName=Public+API+v1"
    },
    "requiredHeaders": {
      "X-Api-Key": "<siesta-api-key>",
      "X-Org-Id": "<siesta-organization-id>"
    },
    "requiredPathParameters": {
      "agentId": "<siesta-agent-id>"
    }
  },
  "siestaApiOperations": [
    {
      "method": "GET",
      "path": "/api/v1/Agent",
      "purpose": "List or search available agents before choosing the implementation target.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/Agent",
      "purpose": "Create an agent from a backend, setup wizard, or customer portal flow.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "CreateAgentRequest"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/Agent/{agentId}/response",
      "purpose": "Send a message or structured request to a specific agent and receive the response.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "agentId",
        "CreateAgentResponseRequest"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/File",
      "purpose": "Upload files as multipart/form-data before attaching file context to an agent flow.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "file"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/File/{id}",
      "purpose": "Download a file previously uploaded or returned through an External API flow.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "id"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/DataSourceCollection",
      "purpose": "List persistent data source collections that can provide durable knowledge to agents.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/DataSourceCollection",
      "purpose": "Create a persistent data source collection for reusable agent knowledge.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "CreateDataSourceCollectionRequest"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/DataSourceCollection/{id}",
      "purpose": "Read one data source collection before attaching or updating knowledge context.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "id"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/DataSourceCollection/{id}",
      "purpose": "Update a data source collection after a governed change to reusable knowledge.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "id",
        "UpdateDataSourceCollectionRequest"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/Task",
      "purpose": "Search tasks by workspace, status, source agent, paging, and sort parameters.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/Task/{id}",
      "purpose": "Read task details for follow-up, review, or synchronization back to another system.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "id"
      ]
    },
    {
      "method": "POST",
      "path": "/api/v1/Task",
      "purpose": "Create a task from an approved agent outcome.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "CreateTaskRequest"
      ]
    },
    {
      "method": "PUT",
      "path": "/api/v1/Task/{id}",
      "purpose": "Update an existing task when an external workflow changes status, owner, or review context.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "id",
        "UpdateTaskRequest"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/Connection",
      "purpose": "Read configured connections that the integration can reference.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/Workspace",
      "purpose": "Resolve workspaces for task routing and workspace-scoped operations.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/AuditLog",
      "purpose": "Search audit records for compliance review, incident investigation, or synchronization logs.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id"
      ]
    },
    {
      "method": "GET",
      "path": "/api/v1/AuditLog/{id}",
      "purpose": "Read one audit record with detailed changed properties and correlation context.",
      "requiredInputs": [
        "X-Api-Key",
        "X-Org-Id",
        "id"
      ]
    }
  ],
  "assistants": [
    {
      "role": "primary",
      "label": "Primary assistant",
      "agentId": "<siesta-agent-id>",
      "purpose": "Default Siesta AI assistant used for endpoint paths, realtime sessions, or widget mounting."
    }
  ],
  "automation": {
    "intent": "Use Siesta AI API v1 from a trusted backend to call the selected agent, upload files when the user provides attachments, and create tasks only after human approval.",
    "approvalPolicy": "Ask for human approval before creating tasks, uploading user files, calling external tools, or performing any write operation that changes platform state.",
    "outputContract": {
      "summary": "Short user-facing result.",
      "actionsTaken": "Array of executed or proposed actions.",
      "siestaRecordIds": "IDs created, uploaded, or updated through Siesta AI API.",
      "followUpQuestions": "Questions the agent must ask if required fields are missing."
    }
  },
  "implementationSteps": [
    "Read the Public API v1 reference before coding request and response types.",
    "Create a server-side Siesta API client with X-Api-Key and X-Org-Id headers.",
    "Resolve or configure agentId before calling agent response endpoints.",
    "Use POST /api/v1/Agent/{agentId}/response for standard backend calls.",
    "Use POST /api/v1/File for attachments and keep uploaded file IDs in the request context.",
    "Use POST /api/v1/Task only after the user or backend policy approves task creation."
  ],
  "codingAgentInstructions": [
    "Implement only siestaApiOperations.",
    "Validate requiredContextFields before calling write endpoints.",
    "Generate typed request helpers from the OpenAPI reference or mirror the documented schema names in code.",
    "Do not add realtime WebSocket or widget runtime behavior unless the manifest mode changes."
  ]
}

Vygenerovaný JSON by měl agentovi říct:

  • s jakým produktem nebo repozitářem se integruje,
  • kde se nachází API Siesta AI,
  • jak jsou předávány X-Api-Key a X-Org-Id,
  • které koncové body a dokumentace Siesta AI jsou relevantní,
  • která ID a vlastní pole jsou požadována před provedením,
  • které vybrané operace API nebo widgetu jsou v rozsahu,
  • co má automatizace dělat,
  • jaké výstupní smlouvy a pravidla schválení musí implementace dodržovat.

Tvar manifestu

Použijte tento základ externího API, pokud chcete psát JSON ručně. Pro realtime API nebo webový plugin použijte nástroj, aby manifest obsahoval pouze tuto smlouvu.

{
"openApiSource": "https://api.siesta.ai/swagger/v1/swagger.json",
"apiReference": "https://api.siesta.ai/swagger/index.html?urls.primaryName=Public+API+v1",
"manifestVersion": "1.0",
"name": "customer-support-copilot",
"useCase": "Asistent zákaznické podpory na Siesta AI",
"objective": "Poskytnout kódovacímu agentovi vše, co potřebuje k implementaci této integrace Siesta AI, aniž by znovu objevoval smlouvy koncových bodů, autentizaci, požadovaná pole nebo záměr automatizace.",
"siestaAi": {
"apiBaseUrl": "https://api.siesta.ai",
"docs": {
"externalApi": "https://docs.siesta.ai/external-api",
"apiReference": "https://api.siesta.ai/swagger/index.html?urls.primaryName=Public+API+v1"
},
"requiredHeaders": {
"X-Api-Key": "<siesta-api-key>",
"X-Org-Id": "<siesta-organization-id>"
},
"requiredPathParameters": {
"agentId": "<siesta-agent-id>"
}
},
"integration": {
"mode": "external-api",
"intent": "Použít Siesta AI k volání vybraného agenta, nahrát soubory, když uživatel poskytne přílohy, a vytvořit úkol po schválení člověkem.",
"secretHandling": "Uložte X-Api-Key na serverové straně v tajném správci nebo proměnné prostředí."
},
"requiredContextFields": [
{
"name": "agentId",
"type": "uuid",
"required": true,
"description": "Agent Siesta AI, který by měl řídit tok integrace."
}
],
"siestaApiOperations": [
{
"method": "GET",
"path": "/api/v1/Agent",
"purpose": "Seznam nebo vyhledávání dostupných agentů před výběrem cíle implementace.",
"requiredInputs": ["X-Api-Key", "X-Org-Id"]
},
{
"method": "POST",
"path": "/api/v1/Agent/{agentId}/response",
"purpose": "Odeslat zprávu nebo strukturovaný požadavek konkrétnímu agentovi a přijmout odpověď.",
"requiredInputs": ["X-Api-Key", "X-Org-Id", "agentId", "CreateAgentResponseRequest"]
},
{
"method": "POST",
"path": "/api/v1/File",
"purpose": "Nahrát soubory jako multipart/form-data před připojením kontextu souboru k toku agenta.",
"requiredInputs": ["X-Api-Key", "X-Org-Id", "file"]
},
{
"method": "POST",
"path": "/api/v1/Task",
"purpose": "Vytvořit úkol z výsledku schváleného agenta.",
"requiredInputs": ["X-Api-Key", "X-Org-Id", "CreateTaskRequest"]
}
],
"automation": {
"intent": "Použít Siesta AI k volání vybraného agenta, nahrát soubory, když je to potřeba, a vytvořit úkol po schválení.",
"approvalPolicy": "Žádat o schválení člověka před vytvořením úkolů, nahráním uživatelských souborů, voláním externích nástrojů nebo prováděním jakékoli operace zápisu, která mění stav platformy.",
"outputContract": {
"summary": "Krátký výsledek pro uživatele.",
"actionsTaken": "Pole provedených nebo navržených akcí.",
"siestaRecordIds": "ID vytvořená, nahraná nebo aktualizovaná prostřednictvím API Siesta AI.",
"followUpQuestions": "Otázky, které musí agent položit, pokud chybí požadovaná pole."
}
},
"implementationSteps": [
"Přečtěte si referenci Public API v1 před kódováním typů požadavků a odpovědí.",
"Vytvořte serverového klienta Siesta API s hlavičkami X-Api-Key a X-Org-Id.",
"Použijte POST /api/v1/Agent/{agentId}/response pro standardní backendové volání.",
"Použijte POST /api/v1/File pro přílohy a uchovávejte ID nahraných souborů v kontextu požadavku."
],
"codingAgentInstructions": [
"Přečtěte si tento manifest před psaním kódu.",
"Implementujte pouze operace externího API uvedené v siestaApiOperations.",
"Ověřte requiredContextFields před voláním koncových bodů pro zápis.",
"Generujte typované pomocníky pro požadavky z OpenAPI reference nebo zrcadlete dokumentovaná jména schémat v kódu.",
"Vraťte stručný plán implementace, požadované proměnné prostředí a testovací případy před změnou produkčního kódu."
]
}

Co vytvořit jako první

  • Použijte Externí API, když jiný systém potřebuje vytvářet agenty, volat agenta, nahrávat soubory, spravovat úkoly nebo číst data platformy.
  • Použijte Realtime API, když uživatelský zážitek potřebuje živý audio, streamované odpovědi, vlastní klientské nástroje nebo zpracování událostí v reálném čase.
  • Použijte Webový plugin, když by měl být agent dostupný na webových stránkách, zákaznickém portálu, dokumentačním webu nebo interní aplikaci s otestovaným embed skriptem.
  • Použijte tok řízený manifestem, když integrace závisí na známé struktuře repozitáře, vlastních polích nebo mapě koncových bodů, která by měla být znovu použitelná napříč prostředími.