> For the complete documentation index, see [llms.txt](https://docs.allganize.ai/api-reference/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.allganize.ai/api-reference/korean/app-market.md).

# App Market

Knowledge base related APIs

## List Apps

> Get a list of apps. The apps are sorted by weight in descending order by default.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}},"schemas":{"AppsResponse":{"description":"Response for listing apps.","properties":{"apps":{"description":"List of apps","items":{"$ref":"#/components/schemas/App"},"title":"Apps","type":"array"},"cursor":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Cursor for pagination","title":"Cursor"}},"required":["apps"],"title":"AppsResponse","type":"object"},"App":{"description":"App information.","properties":{"id":{"description":"Unique ID of the app","title":"Id","type":"string"},"name":{"description":"Name of the app","title":"Name","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Description of the app","title":"Description"},"type":{"description":"Type of the app","title":"Type","type":"string"},"category":{"description":"Category of the app","title":"Category","type":"string"},"published":{"description":"Whether the app is published","title":"Published","type":"boolean"},"agentPermission":{"$ref":"#/components/schemas/AgentPermissionResponse","description":"Agent permission"},"userPermission":{"$ref":"#/components/schemas/UserPermissionResponse","description":"User permission"}},"required":["id","name","type","category","published","agentPermission","userPermission"],"title":"App","type":"object"},"AgentPermissionResponse":{"description":"Response model for agent permission.","properties":{"accessAgents":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessAgent"},"type":"array"},{"type":"null"}],"title":"Accessagents"},"accessPermissionGroups":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessPermissionGroupResponse"},"type":"array"},{"type":"null"}],"title":"Accesspermissiongroups"},"viewAccessToAgent":{"title":"Viewaccesstoagent","type":"boolean"}},"required":["viewAccessToAgent"],"title":"AgentPermissionResponse","type":"object"},"AccessAgent":{"properties":{"agentId":{"description":"액세스 에이전트의 에이전트 ID","title":"Agentid","type":"string"},"accessType":{"$ref":"#/components/schemas/ObjectAccessType","description":"액세스 에이전트의 액세스 유형"}},"required":["agentId","accessType"],"title":"AccessAgent","type":"object"},"ObjectAccessType":{"enum":["order_1_editor","order_2_reader"],"title":"ObjectAccessType","type":"string"},"AccessPermissionGroupResponse":{"description":"Response model for access permission group with name included.","properties":{"permissionGroupId":{"description":"The permission group ID","title":"Permissiongroupid","type":"string"},"permissionGroupName":{"description":"The permission group name","title":"Permissiongroupname","type":"string"},"accessType":{"$ref":"#/components/schemas/ObjectAccessType","description":"The access type"}},"required":["permissionGroupId","permissionGroupName","accessType"],"title":"AccessPermissionGroupResponse","type":"object"},"UserPermissionResponse":{"properties":{"ownUserIds":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Ownuserids"},"customerGroups":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Customergroups"},"viewAccessToUser":{"title":"Viewaccesstouser","type":"boolean"}},"required":["viewAccessToUser"],"title":"UserPermissionResponse","type":"object"}}},"paths":{"/webapi/v2/apps":{"get":{"operationId":"django_server_llm_app_views_rest_apps_api_get_list_apps","summary":"List Apps","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"in":"query","name":"searchTerm","schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Search term for app name or description","title":"Searchterm"},"required":false,"description":"Search term for app name or description"},{"in":"query","name":"categories","schema":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"description":"Filter by app categories","title":"Categories"},"required":false,"description":"Filter by app categories"},{"in":"query","name":"type","schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Filter by app type","title":"Type"},"required":false,"description":"Filter by app type"},{"in":"query","name":"published","schema":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Filter by published status","title":"Published"},"required":false,"description":"Filter by published status"},{"in":"query","name":"pageSize","schema":{"default":50,"description":"Number of apps per page","maximum":100,"minimum":1,"title":"Pagesize","type":"integer"},"required":false,"description":"Number of apps per page"},{"in":"query","name":"cursor","schema":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Cursor for pagination","title":"Cursor"},"required":false,"description":"Cursor for pagination"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/AppsResponse"}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"description":"Get a list of apps. The apps are sorted by weight in descending order by default.","tags":["App Market"]}}}}
```

## Get App

> Get a specific app by ID.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}},"schemas":{"App":{"description":"App information.","properties":{"id":{"description":"Unique ID of the app","title":"Id","type":"string"},"name":{"description":"Name of the app","title":"Name","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Description of the app","title":"Description"},"type":{"description":"Type of the app","title":"Type","type":"string"},"category":{"description":"Category of the app","title":"Category","type":"string"},"published":{"description":"Whether the app is published","title":"Published","type":"boolean"},"agentPermission":{"$ref":"#/components/schemas/AgentPermissionResponse","description":"Agent permission"},"userPermission":{"$ref":"#/components/schemas/UserPermissionResponse","description":"User permission"}},"required":["id","name","type","category","published","agentPermission","userPermission"],"title":"App","type":"object"},"AgentPermissionResponse":{"description":"Response model for agent permission.","properties":{"accessAgents":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessAgent"},"type":"array"},{"type":"null"}],"title":"Accessagents"},"accessPermissionGroups":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessPermissionGroupResponse"},"type":"array"},{"type":"null"}],"title":"Accesspermissiongroups"},"viewAccessToAgent":{"title":"Viewaccesstoagent","type":"boolean"}},"required":["viewAccessToAgent"],"title":"AgentPermissionResponse","type":"object"},"AccessAgent":{"properties":{"agentId":{"description":"액세스 에이전트의 에이전트 ID","title":"Agentid","type":"string"},"accessType":{"$ref":"#/components/schemas/ObjectAccessType","description":"액세스 에이전트의 액세스 유형"}},"required":["agentId","accessType"],"title":"AccessAgent","type":"object"},"ObjectAccessType":{"enum":["order_1_editor","order_2_reader"],"title":"ObjectAccessType","type":"string"},"AccessPermissionGroupResponse":{"description":"Response model for access permission group with name included.","properties":{"permissionGroupId":{"description":"The permission group ID","title":"Permissiongroupid","type":"string"},"permissionGroupName":{"description":"The permission group name","title":"Permissiongroupname","type":"string"},"accessType":{"$ref":"#/components/schemas/ObjectAccessType","description":"The access type"}},"required":["permissionGroupId","permissionGroupName","accessType"],"title":"AccessPermissionGroupResponse","type":"object"},"UserPermissionResponse":{"properties":{"ownUserIds":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Ownuserids"},"customerGroups":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Customergroups"},"viewAccessToUser":{"title":"Viewaccesstouser","type":"boolean"}},"required":["viewAccessToUser"],"title":"UserPermissionResponse","type":"object"}}},"paths":{"/webapi/v2/apps/{app_id}":{"get":{"operationId":"django_server_llm_app_views_rest_apps_api_get_app_by_id","summary":"Get App","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"in":"path","name":"app_id","schema":{"title":"App Id","type":"string"},"required":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/App"}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"description":"Get a specific app by ID.","tags":["App Market"]}}}}
```

## Update App

> Update an app.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}},"schemas":{"App":{"description":"App information.","properties":{"id":{"description":"Unique ID of the app","title":"Id","type":"string"},"name":{"description":"Name of the app","title":"Name","type":"string"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Description of the app","title":"Description"},"type":{"description":"Type of the app","title":"Type","type":"string"},"category":{"description":"Category of the app","title":"Category","type":"string"},"published":{"description":"Whether the app is published","title":"Published","type":"boolean"},"agentPermission":{"$ref":"#/components/schemas/AgentPermissionResponse","description":"Agent permission"},"userPermission":{"$ref":"#/components/schemas/UserPermissionResponse","description":"User permission"}},"required":["id","name","type","category","published","agentPermission","userPermission"],"title":"App","type":"object"},"AgentPermissionResponse":{"description":"Response model for agent permission.","properties":{"accessAgents":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessAgent"},"type":"array"},{"type":"null"}],"title":"Accessagents"},"accessPermissionGroups":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessPermissionGroupResponse"},"type":"array"},{"type":"null"}],"title":"Accesspermissiongroups"},"viewAccessToAgent":{"title":"Viewaccesstoagent","type":"boolean"}},"required":["viewAccessToAgent"],"title":"AgentPermissionResponse","type":"object"},"AccessAgent":{"properties":{"agentId":{"description":"액세스 에이전트의 에이전트 ID","title":"Agentid","type":"string"},"accessType":{"$ref":"#/components/schemas/ObjectAccessType","description":"액세스 에이전트의 액세스 유형"}},"required":["agentId","accessType"],"title":"AccessAgent","type":"object"},"ObjectAccessType":{"enum":["order_1_editor","order_2_reader"],"title":"ObjectAccessType","type":"string"},"AccessPermissionGroupResponse":{"description":"Response model for access permission group with name included.","properties":{"permissionGroupId":{"description":"The permission group ID","title":"Permissiongroupid","type":"string"},"permissionGroupName":{"description":"The permission group name","title":"Permissiongroupname","type":"string"},"accessType":{"$ref":"#/components/schemas/ObjectAccessType","description":"The access type"}},"required":["permissionGroupId","permissionGroupName","accessType"],"title":"AccessPermissionGroupResponse","type":"object"},"UserPermissionResponse":{"properties":{"ownUserIds":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Ownuserids"},"customerGroups":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Customergroups"},"viewAccessToUser":{"title":"Viewaccesstouser","type":"boolean"}},"required":["viewAccessToUser"],"title":"UserPermissionResponse","type":"object"},"UpdateAppRequest":{"description":"Request schema for updating an app.","properties":{"name":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Name of the app","title":"Name"},"description":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Description of the app","title":"Description"},"category":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Category of the app","title":"Category"},"published":{"anyOf":[{"type":"boolean"},{"type":"null"}],"description":"Whether the app is published","title":"Published"},"agentPermission":{"anyOf":[{"$ref":"#/components/schemas/AgentPermission"},{"type":"null"}],"description":"Agent permission"},"userPermission":{"anyOf":[{"$ref":"#/components/schemas/UserPermission"},{"type":"null"}],"description":"User permission"}},"title":"UpdateAppRequest","type":"object"},"AgentPermission":{"properties":{"accessAgents":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessAgent"},"type":"array"},{"type":"null"}],"title":"Accessagents"},"accessPermissionGroups":{"anyOf":[{"items":{"$ref":"#/components/schemas/AccessPermissionGroup"},"type":"array"},{"type":"null"}],"title":"Accesspermissiongroups"},"viewAccessToAgent":{"title":"Viewaccesstoagent","type":"boolean"}},"required":["viewAccessToAgent"],"title":"AgentPermission","type":"object"},"AccessPermissionGroup":{"properties":{"permissionGroupId":{"description":"액세스 권한 그룹의 권한 그룹 ID","title":"Permissiongroupid","type":"string"},"accessType":{"$ref":"#/components/schemas/ObjectAccessType","description":"접근 권한 그룹의 접근 유형"}},"required":["permissionGroupId","accessType"],"title":"AccessPermissionGroup","type":"object"},"UserPermission":{"properties":{"ownUserIds":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Ownuserids"},"customerGroups":{"anyOf":[{"items":{"type":"string"},"type":"array"},{"type":"null"}],"title":"Customergroups"},"viewAccessToUser":{"title":"Viewaccesstouser","type":"boolean"}},"required":["viewAccessToUser"],"title":"UserPermission","type":"object"}}},"paths":{"/webapi/v2/apps/{app_id}":{"patch":{"operationId":"django_server_llm_app_views_rest_apps_api_update_app","summary":"Update App","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"in":"path","name":"app_id","schema":{"title":"App Id","type":"string"},"required":true}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"$ref":"#/components/schemas/App"}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"description":"Update an app.","tags":["App Market"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/UpdateAppRequest"}}},"required":true}}}}}
```

## Conversation App 실행

> 캠페인 App을 스트리밍 응답으로 실행합니다.\
> \
> 캠페인(스킬/에이전트) App을 실행하고 스트리밍 응답을 반환합니다.\
> 텍스트 메시지, 버튼 선택, 파일/미디어 업로드, 폼 제출을 지원합니다.\
> 항상 multipart/form-data를 사용합니다. send\_form\_input은 JSON 문자열로 전달하세요.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/v2/apps/{app_id}/run_conversation":{"post":{"operationId":"django_server_llm_app_views_rest_apps_api_run_conversation_app","summary":"Conversation App 실행","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"in":"path","name":"app_id","schema":{"title":"App Id","type":"string"},"required":true}],"responses":{"200":{"description":"OK"},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"description":"캠페인 App을 스트리밍 응답으로 실행합니다.\n\n캠페인(스킬/에이전트) App을 실행하고 스트리밍 응답을 반환합니다.\n텍스트 메시지, 버튼 선택, 파일/미디어 업로드, 폼 제출을 지원합니다.\n항상 multipart/form-data를 사용합니다. send_form_input은 JSON 문자열로 전달하세요.","tags":["App Market"],"requestBody":{"content":{"multipart/form-data":{"schema":{"title":"MultiPartBodyParams","type":"object","properties":{"conversationId":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Existing conversation ID to continue","title":"Conversationid"},"message":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"User message text","title":"Message"},"choices":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Button/option choice indices (JSON array string, e.g. '[0, 1]')","title":"Choices"},"sendFormInput":{"anyOf":[{"type":"string"},{"type":"null"}],"description":"Form submission data (JSON string)","title":"Sendforminput"},"fileIds":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Fileids"},"files":{"items":{"format":"binary","type":"string"},"title":"Files","type":"array"},"media_files":{"items":{"format":"binary","type":"string"},"title":"Media Files","type":"array"},"form_files":{"items":{"format":"binary","type":"string"},"title":"Form Files","type":"array"}}}}},"required":true}}}}}
```

## Cognitive Config 조회

> 프로젝트의 cognitive\_config를 JSON으로 반환합니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/v2/cognitive_config":{"get":{"operationId":"django_server_project_views_rest_cognitive_config_api_get_cognitive_config","summary":"Cognitive Config 조회","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response","type":"object"}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"description":"프로젝트의 cognitive_config를 JSON으로 반환합니다.","tags":["App Market"]}}}}
```

## Cognitive Config 부분 수정

> cognitive\_config 필드를 부분 수정합니다.\
> \
> 요청 본문: field\_name -> value 형태의 플랫 JSON 딕셔너리.\
> 전달된 필드만 업데이트되며, 나머지는 변경되지 않습니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/v2/cognitive_config":{"patch":{"operationId":"django_server_project_views_rest_cognitive_config_api_patch_cognitive_config","summary":"Cognitive Config 부분 수정","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}],"responses":{"200":{"description":"OK","content":{"application/json":{"schema":{"additionalProperties":true,"title":"Response","type":"object"}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"description":"cognitive_config 필드를 부분 수정합니다.\n\n요청 본문: field_name -> value 형태의 플랫 JSON 딕셔너리.\n전달된 필드만 업데이트되며, 나머지는 변경되지 않습니다.","tags":["App Market"],"requestBody":{"content":{"application/json":{"schema":{"additionalProperties":true,"title":"Body","type":"object"}}},"required":true}}}}}
```

## GET /webapi/apps

>

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/apps":{"get":{"tags":["App Market"],"operationId":"getApps","parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"name":"published","in":"query","required":false,"schema":{"type":"string"}},{"name":"id","in":"query","required":false,"schema":{"type":"array","items":{"type":"string"}}},{"name":"locale","in":"query","required":false,"schema":{"type":"string"}}],"responses":{"200":{"description":"앱 API 성공 답변 받기","content":{"application/json":{"schema":{"type":"object","required":["result"],"properties":{"result":{"type":"array","items":{"type":"object","required":["id","name","type","description","category","app_from","app_url"],"properties":{"id":{"type":"string"},"name":{"type":"string"},"type":{"type":"string","enum":["single_action","skill"]},"description":{"type":"string"},"category":{"type":"string"},"app_from":{"type":"string"},"app_url":{"type":"string"}}}}}}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}}}}}}
```

## POST /webapi/apps

>

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/apps":{"post":{"tags":["App Market"],"operationId":"createApp","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["type","name","description","category","published","enabled","single_action_app_input"],"properties":{"user_id":{"type":"string"},"type":{"type":"string","enum":["single_action"]},"name":{"type":"string"},"description":{"type":"string"},"category":{"type":"string"},"published":{"type":"boolean"},"enabled":{"type":"boolean"},"single_action_app_input":{"type":"object","nullable":true,"required":["name","description","inputs","llm_model","messages"],"properties":{"name":{"type":"string"},"description":{"type":"string"},"llm_model":{"type":"string"},"selected_llm_processing_method":{"type":"string","nullable":true,"enum":["stuff","map","map_reduce","chunk_map","chunk_map_reduce"]},"selected_map_reduce_input_variable_name":{"type":"string","nullable":true},"inputs":{"type":"array","items":{"type":"object","required":["name","value","input_type"],"properties":{"name":{"type":"string"},"value":{"type":"string"},"placeholder":{"type":"string","nullable":true},"input_type":{"type":"string","enum":["text","paragraph","single","multi","document_basic","document_advanced","image_basic","image_advanced"]},"options":{"type":"array","items":{"type":"object","required":["name","value"],"properties":{"name":{"type":"string"},"value":{"type":"string"}}}}}}},"messages":{"type":"array","items":{"type":"object","required":["role","content"],"properties":{"role":{"type":"string","enum":["system","user"]},"content":{"type":"string"}}}}}}}}}}},"responses":{"200":{"description":"앱 API 성공 답변 생성","content":{"application/json":{"schema":{"type":"object","required":["result"],"properties":{"result":{"type":"object","required":["id"],"properties":{"id":{"type":"string"}}}}}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}]}}}}
```

## LLM App 실행

> REST API를 통해 LLM App을 실행합니다. JSON 요청을 지원합니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/apps/{app_id}/run":{"post":{"tags":["App Market"],"operationId":"runApp","summary":"LLM App 실행","description":"REST API를 통해 LLM App을 실행합니다. JSON 요청을 지원합니다.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"chat":{"type":"object","description":"Chat message input for conversational apps","properties":{"message":{"type":"string","description":"The user's message/question"},"source":{"type":"object","description":"Source documents and knowledge bases for the chat","properties":{"knowledgeBaseIds":{"type":"array","items":{"type":"string"},"description":"List of knowledge base IDs to attach (for conversation history)"},"folderIds":{"type":"array","items":{"type":"string"},"description":"List of folder IDs to search"},"webSites":{"type":"array","items":{"type":"string"},"description":"List of web sites to search"}}},"useNodeDefaultInputSource":{"type":"boolean","default":false,"description":"If true and source is not provided, uses the node's default input source configuration (folders/knowledge bases configured in the node settings). When false (default), omitting source means no document scope restriction.\n"}}},"inputs":{"type":"object","description":"Input variables for the LLM App. The structure depends on the app type. For single_action apps, this contains the app-specific input fields. For campaign apps, this can include prompt overrides and other configuration.\n","additionalProperties":true},"mode":{"type":"string","enum":["sync","stream","background"],"default":"sync","description":"Execution mode. Use \"sync\" for synchronous responses or \"stream\" for streaming responses. Default is \"sync\".\n"},"isStateful":{"type":"boolean","default":false,"description":"Whether to maintain conversation state. Set to true to enable conversation history. When true, conversationId must be provided for follow-up messages.\n"},"conversationId":{"type":"string","description":"Conversation ID for continuing a previous conversation. Required when isStateful is true for follow-up messages. Use the conversation.id from the previous response.\n"},"llmModel":{"type":"string","description":"Name of the LLM model to use. Must be a registered model name (lowercase). See model registration documentation for available models.\n"},"llmPromptId":{"type":"string","description":"ID of the LLM prompt to use"},"gaPromptGroupId":{"type":"string","description":"ID of the Generative Answer prompt group to use"},"temperature":{"type":"number","default":0,"description":"Controls the randomness of the output. Higher values make the output more random. Range is typically 0 to 2.\n"},"requiredVariables":{"type":"array","items":{"type":"string"},"description":"List of required variable names to include in the response"}}}}}},"responses":{"200":{"description":"Successfully executed the LLM App","content":{"application/json":{"schema":{"type":"object","required":["result"],"properties":{"result":{"type":"object","properties":{"id":{"type":"string","description":"The ID of the LLM App that was executed"},"name":{"type":"string","description":"The name of the LLM App"},"type":{"type":"string","enum":["campaign","single_action","agent"],"description":"The type of LLM App"},"category":{"type":"string","description":"The category of the LLM App"},"responses":{"type":"array","description":"List of responses from the LLM App execution","items":{"type":"object","properties":{"id":{"type":"string","description":"The ID of the response (Chat or SingleActionAppResult)"},"type":{"type":"string","description":"Node type (e.g., \"tn\", \"llm\")"},"message":{"type":"string","description":"The response message content"},"source":{"type":"object","description":"Source information for the message"},"sender":{"type":"string","description":"The sender of the message"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the response was created"},"completed":{"type":"boolean","description":"Whether the generation process has been completed"},"citations":{"type":"array","description":"Citation references used in the response","items":{"type":"object","properties":{"clueId":{"type":"string","description":"Unique ID of the clue"},"source":{"type":"string","description":"Source type (DOCUMENT, FAQ, WEB)"},"title":{"type":"string","description":"Title of the source document"},"knowledgeBaseId":{"type":"string","description":"Document ID of the clue"},"pageNo":{"type":"integer","description":"Page number of the clue"},"url":{"type":"string","description":"URL of the citation"},"text":{"type":"string","description":"Text excerpt of the citation"}}}},"error":{"type":"object","description":"Error information if an error occurred","properties":{"timestamp":{"type":"integer","description":"Timestamp of the error"},"nodeId":{"type":"string","description":"ID of the node where the error occurred"},"nodeType":{"type":"string","description":"Type of the node where the error occurred"},"errorType":{"type":"string","description":"Type of the error"},"errorObject":{"type":"object","description":"Additional error details"}}},"intermediateStep":{"type":"object","description":"Intermediate step information showing progress during generation. Used for displaying status messages during processing.\n","properties":{"completed":{"type":"boolean","description":"Whether the step is completed"},"key":{"type":"string","description":"Unique key for the step"},"createdAt":{"type":"string","format":"date-time","description":"Timestamp when the step was created"},"statusMessage":{"type":"string","description":"Status message (e.g., \"Reasoning\")"},"markdownMessage":{"type":"string","description":"Markdown formatted message for the step"}}}}}},"variables":{"type":"object","description":"Variable values if requiredVariables was specified in the request. Contains the current values of project variables.\n","additionalProperties":true},"conversation":{"type":"object","description":"Conversation information when isStateful is true. Use the conversation.id for subsequent requests to continue the conversation.\n","properties":{"id":{"type":"string","description":"Conversation ID for continuing the conversation"},"state":{"type":"string","description":"Current state of the conversation"}}}}},"error":{"type":"string","description":"Error message if an error occurred"}}}}}},"400":{"description":"Bad request"},"401":{"description":"Unauthorized - Invalid or missing authentication token"},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"429":{"description":"Rate limit exceeded"},"500":{"description":"Internal server error"}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"},{"name":"app_id","in":"path","required":true,"schema":{"type":"string"}}]}}}}
```

## 기술 실행

> 이 API는 스킬을 실행하고 최종 텍스트 답변을 JSON 포맷으로 반환합니다. 이 API는 스킬이 그 목적을 위해 설계된 경우 엔티티 추출에 사용할 수 있습니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/skill":{"post":{"tags":["App Market"],"operationId":"runSkill","summary":"기술 실행","description":"이 API는 스킬을 실행하고 최종 텍스트 답변을 JSON 포맷으로 반환합니다. 이 API는 스킬이 그 목적을 위해 설계된 경우 엔티티 추출에 사용할 수 있습니다.","requestBody":{"content":{"application/json":{"schema":{"type":"object","required":["id","text"],"properties":{"id":{"type":"string","description":"스킬 ID입니다. Alli 대시보드에서 스킬을 클릭하면 URL이 https://app.alli.ai/projects/PROJECT_ID/campaigns/SKILL_ID와 같이 표시됩니다. 여기에 SKILL_ID를 입력해 주세요."},"text":{"type":"string","description":"기술 실행을 위한 입력 텍스트입니다."},"variables":{"type":"object","description":"변수는 스킬의 변수를 설정하기 위한 JSON 객체입니다. Alli에서 변수에 대해 더 알아보려면 유저 가이드를 True조해 주세요."}}}}}},"responses":{"200":{"description":"성공적으로 실행되었습니다.","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"string","description":"스킬 실행의 최종 텍스트 출력."},"errors":{"type":"array","items":{"type":"string"},"description":"오류가 발생하면, 오류 메시지가 여기에 포함됩니다."}}}}}},"400":{"description":"잘못된 요청","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"string"}}}}}}},"401":{"description":"허가되지 않음","content":{"application/json":{"schema":{"type":"object","properties":{"errors":{"type":"array","items":{"type":"string"}}}}}}},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}]}}}}
```

## 대화 시작

> 스킬을 사용하여 대화를 시작하십시오. True고: 이 엔드포인트는 현재 메시지 노드, Q\&A 노드 및 문서 노드와만 호환됩니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/start_conversation":{"post":{"tags":["App Market"],"operationId":"startConversation","summary":"대화 시작","description":"스킬을 사용하여 대화를 시작하십시오. True고: 이 엔드포인트는 현재 메시지 노드, Q&A 노드 및 문서 노드와만 호환됩니다.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"placement":{"type":"string","description":"어떤 스킬로 대화를 시작할지 매칭하는 데 사용됩니다."}}}}}},"responses":{"200":{"description":"성공적으로 대화를 시작했습니다.","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"conversation":{"type":"object","properties":{"id":{"type":"string","description":"방금 시작된 대화의 고유 ID."},"project":{"type":"object","properties":{"nluLanguage":{"type":"string","description":"Alli 프로젝트의 언어."}}},"chats":{"type":"object","properties":{"edges":{"type":"array","items":{"type":"object","properties":{"node":{"type":"object","properties":{"id":{"type":"string","description":"대화 ID"},"message":{"type":"string","description":"유저에게 Alli가 표시하는 텍스트 메시지입니다. 이는 Draftjs 형식입니다."},"createdAt":{"type":"number","description":"이 메시지가 전송된 시간의 타임스탬프."},"chatOptionInfos":{"type":"array","description":"Alli가 유저에게 표시할 클릭 가능한 버튼을 나타내는 각각의 JSON 객체 배열.","items":{"type":"object","properties":{"shortenOption":{"type":"string","description":"길이 제한 설정이 적용된 후의 텍스트."},"longOption":{"type":"string","description":"버튼의 텍스트 내용."},"style":{"type":"object","properties":{"bgColor":{"type":"string"},"bold":{"type":"boolean"},"fontColor":{"type":"string"},"italic":{"type":"boolean"},"lineColor":{"type":"string"},"underline":{"type":"boolean"}}},"meta":{"type":"string"}}}},"isDeleted":{"type":"boolean"}}}}}}}}}}}},"errors":{"type":"object","nullable":true}}}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}]}}}}
```

## End Conversation by Agent

> End a conversation from the agent side.<br>

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/end_conversation_by_agent":{"post":{"tags":["App Market"],"operationId":"endConversationByAgent","summary":"End Conversation by Agent","description":"End a conversation from the agent side.\n","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["id"],"properties":{"id":{"type":"string","description":"The conversation ID to end"}}}}}},"responses":{"200":{"description":"Conversation ended successfully","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"conversation":{"type":"object","properties":{"id":{"type":"string","description":"The conversation ID that was ended"},"completedTime":{"type":"number","description":"The timestamp when the conversation was completed"},"state":{"type":"string","description":"The state of the conversation after ending (e.g., \"END_BY_AGENT\")"},"__typename":{"type":"string","description":"GraphQL typename"}},"description":"The conversation object that was ended"},"__typename":{"type":"string","description":"GraphQL typename for the operation result"}}},"errors":{"type":"object","nullable":true,"description":"Error information if the request fails"}}}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}]}}}}
```

## 대화 보내기

> 기존 대화에 대해 유저로 메시지를 보냅니다. True고: 이 엔드포인트는 현재 메시지 노드, Q\&A 노드 및 문서 노드와만 호환됩니다.

```json
{"openapi":"3.1.0","info":{"title":"Alli API Documentation","version":"1.0.0"},"tags":[{"name":"App Market","description":"Knowledge base related APIs"}],"servers":[{"url":"https://backend.alli.ai","description":"US"},{"url":"https://backend-ja.alli.ai","description":"JA"}],"security":[{"ApiKeyAuth":[]},{"TokenAuth":[]},{"ProjectIdHeader":[]}],"components":{"securitySchemes":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"API-KEY","description":"Your API key for authentication"},"TokenAuth":{"type":"http","scheme":"bearer","description":"Your token for authentication"}},"parameters":{"AgentEmailHeader":{"name":"AGENT-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email of the agent to use for this request"},"UserEmailHeader":{"name":"USER-EMAIL","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: Email address to associate with the user"},"OwnUserIdHeader":{"name":"OWN-USER-ID","in":"header","required":false,"schema":{"type":"string"},"description":"Optional: User ID to identify or create a user"}}},"paths":{"/webapi/send_chat":{"post":{"tags":["App Market"],"operationId":"sendChat","summary":"대화 보내기","description":"기존 대화에 대해 유저로 메시지를 보냅니다. True고: 이 엔드포인트는 현재 메시지 노드, Q&A 노드 및 문서 노드와만 호환됩니다.","requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","required":["message","conversationId"],"properties":{"message":{"type":"string","description":"대화에서 보낼 메시지. null이거나 빈 문자열일 수 없습니다."},"conversationId":{"type":"string","description":"메시지를 보내고자 하는 대화의 고유 ID입니다."}}}}}},"responses":{"200":{"description":"대화 전송 성공","content":{"application/json":{"schema":{"type":"object","properties":{"result":{"type":"object","properties":{"responses":{"type":"array","description":"메시지를 나타내는 JSON 객체의 배열입니다. 첫 번째 메시지 객체는 요청의 메시지가 됩니다.","items":{"type":"object","properties":{"id":{"type":"string","description":"대화 ID"},"message":{"type":"string","description":"유저에게 표시될 텍스트 메시지는 Alli에 의해 표시됩니다. 스킬 빌더 내 노드에 설정된 텍스트 메시지는 Draftjs 형식으로 작성됩니다."},"createdAt":{"type":"number","description":"이 메시지가 생성된 타임스탬프."},"chatOptionInfos":{"type":"array","description":"유저에게 표시될 클릭 가능한 버튼을 나타내는 JSON 객체 배열.","items":{"type":"object","properties":{"shortenOption":{"type":"string","description":"길이 제한 설정이 적용된 후의 텍스트."},"longOption":{"type":"string","description":"버튼의 텍스트 내용."},"style":{"type":"object","properties":{"bgColor":{"type":"string"},"bold":{"type":"boolean"},"fontColor":{"type":"string"},"italic":{"type":"boolean"},"lineColor":{"type":"string"},"underline":{"type":"boolean"}}},"meta":{"type":"string"}}}},"isDeleted":{"type":"boolean"}}}},"state":{"type":"string","description":"메시지가 전송된 후 대화의 상태."}}},"errors":{"type":"object","nullable":true}}}}}},"400":{"description":"Invalid request parameters."},"401":{"description":"Authentication failed. The API-KEY header is missing or invalid."},"403":{"description":"Access denied. The project is inactive or the request IP is not allowed."},"500":{"description":"Internal server error."}},"parameters":[{"$ref":"#/components/parameters/AgentEmailHeader"},{"$ref":"#/components/parameters/UserEmailHeader"},{"$ref":"#/components/parameters/OwnUserIdHeader"}]}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.allganize.ai/api-reference/korean/app-market.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
