This page is generated from the public contract. Descriptions are shown in the original Korean.
Endpoint·Workflow를 호출하는 순서 있는 Step 기록.
listWorkflows#
GET /api/workflows
Authentication: Session cookie or Agent token
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
handle | query | string | No | handle 정확 일치 필터. 앞뒤 공백 제거·소문자 정규화 후 비교하며 형식이 맞지 않으면 400 INVALID_REQUEST입니다. 기존 q·sort·page·per_page와 함께 사용할 수 있습니다. 결과는 최대 1건입니다. |
q | query | string | No | |
sort | query | any | No | Values: key, -key, name, -name |
page | query | integer | No | |
per_page | query | integer | No |
Responses
| Status | Description |
|---|---|
200 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
200 response body
An array (WorkflowSummary[]). The table lists item fields.
| Name | Type | Required | Description |
|---|---|---|---|
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
id | string | Yes | |
handle | string | Yes | 같은 Organization의 같은 Catalog에서 고유한 Web 주소 이름. 3~39자의 영문 소문자·숫자·단일 하이픈이며 숫자로 시작할 수 있습니다. |
created_at | string(date-time) | Yes | |
updated_at | string(date-time) | Yes | |
step_count | integer | Yes |
createWorkflow#
POST /api/workflows
Authentication: Session cookie or Agent token
Request body
application/json · Required: Yes
Type: WorkflowCreate
| Name | Type | Required | Description |
|---|---|---|---|
handle | string | Yes | 필수. 앞뒤 공백 제거·소문자 정규화 후 3~39자의 영문 소문자·숫자·단일 하이픈만 허용하며 정규화한 값을 저장합니다. 같은 Organization의 같은 Catalog에서 이미 사용 중이면 409 HANDLE_CONFLICT, 형식 오류는 422 VALIDATION_FAILED(오류 field /handle, code invalid_format)입니다. |
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | No | |
description | string | No | |
inputs | object | boolean | null | No | null 또는 JSON Schema 2020-12. 256 KiB·64단계, 정의 내부 참조만 허용. |
depends_on | string[] | No | |
parameters | Workflow.Parameter[] | No | |
success_actions | Action[] | No | |
failure_actions | Action[] | No | |
outputs | Output[] | No | |
steps | Step[] | Yes | |
source | Source | null | No |
Responses
| Status | Description |
|---|---|
201 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
201 response body
Type: Workflow
| Name | Type | Required | Description |
|---|---|---|---|
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
inputs | object | boolean | null | Yes | null 또는 JSON Schema 2020-12. 256 KiB·64단계, 정의 내부 참조만 허용. |
depends_on | string[] | Yes | |
parameters | Workflow.Parameter[] | Yes | |
success_actions | Action[] | Yes | |
failure_actions | Action[] | Yes | |
outputs | Output[] | Yes | |
steps | Step[] | Yes | |
source | Source | null | Yes | |
id | string | Yes | |
handle | string | Yes | 같은 Organization의 같은 Catalog에서 고유한 Web 주소 이름. 3~39자의 영문 소문자·숫자·단일 하이픈이며 숫자로 시작할 수 있습니다. |
created_at | string(date-time) | Yes | |
updated_at | string(date-time) | Yes |
getWorkflow#
GET /api/workflows/{id}
Authentication: Session cookie or Agent token
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | |
If-None-Match | header | string | No |
Responses
| Status | Description |
|---|---|
200 | 성공 |
304 | 일치하는 ETag. 본문 없음. |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
200 response body
Type: Workflow
| Name | Type | Required | Description |
|---|---|---|---|
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
inputs | object | boolean | null | Yes | null 또는 JSON Schema 2020-12. 256 KiB·64단계, 정의 내부 참조만 허용. |
depends_on | string[] | Yes | |
parameters | Workflow.Parameter[] | Yes | |
success_actions | Action[] | Yes | |
failure_actions | Action[] | Yes | |
outputs | Output[] | Yes | |
steps | Step[] | Yes | |
source | Source | null | Yes | |
id | string | Yes | |
handle | string | Yes | 같은 Organization의 같은 Catalog에서 고유한 Web 주소 이름. 3~39자의 영문 소문자·숫자·단일 하이픈이며 숫자로 시작할 수 있습니다. |
created_at | string(date-time) | Yes | |
updated_at | string(date-time) | Yes |
updateWorkflow#
PUT /api/workflows/{id}
Authentication: Session cookie or Agent token
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | |
If-Match | header | string | Yes | 단일 strong ETag. 삭제 참조 보호 409가 누락 428·불일치 412보다 우선. |
Request body
application/json · Required: Yes
Type: WorkflowReplace
| Name | Type | Required | Description |
|---|---|---|---|
handle | string | No | 선택. 생략하면 저장된 값을 유지합니다. 앞뒤 공백 제거·소문자 정규화 후 3~39자의 영문 소문자·숫자·단일 하이픈만 허용하며 정규화한 값을 저장합니다. 같은 Organization의 같은 Catalog에서 이미 사용 중이면 409 HANDLE_CONFLICT, 형식 오류는 422 VALIDATION_FAILED(오류 field /handle, code invalid_format)입니다. |
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
inputs | object | boolean | null | Yes | null 또는 JSON Schema 2020-12. 256 KiB·64단계, 정의 내부 참조만 허용. |
depends_on | string[] | Yes | |
parameters | Workflow.Parameter[] | Yes | |
success_actions | Action[] | Yes | |
failure_actions | Action[] | Yes | |
outputs | Output[] | Yes | |
steps | Step[] | Yes | |
source | Source | null | Yes |
Responses
| Status | Description |
|---|---|
200 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
200 response body
Type: Workflow
| Name | Type | Required | Description |
|---|---|---|---|
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
inputs | object | boolean | null | Yes | null 또는 JSON Schema 2020-12. 256 KiB·64단계, 정의 내부 참조만 허용. |
depends_on | string[] | Yes | |
parameters | Workflow.Parameter[] | Yes | |
success_actions | Action[] | Yes | |
failure_actions | Action[] | Yes | |
outputs | Output[] | Yes | |
steps | Step[] | Yes | |
source | Source | null | Yes | |
id | string | Yes | |
handle | string | Yes | 같은 Organization의 같은 Catalog에서 고유한 Web 주소 이름. 3~39자의 영문 소문자·숫자·단일 하이픈이며 숫자로 시작할 수 있습니다. |
created_at | string(date-time) | Yes | |
updated_at | string(date-time) | Yes |
deleteWorkflow#
DELETE /api/workflows/{id}
Authentication: Session cookie or Agent token
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | |
If-Match | header | string | Yes | 단일 strong ETag. 삭제 참조 보호 409가 누락 428·불일치 412보다 우선. |
Responses
| Status | Description |
|---|---|
204 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
validateWorkflowCreate#
POST /api/workflows/validate
Authentication: Session cookie or Agent token
Request body
application/json · Required: Yes
Type: WorkflowCreate
| Name | Type | Required | Description |
|---|---|---|---|
handle | string | Yes | 필수. 앞뒤 공백 제거·소문자 정규화 후 3~39자의 영문 소문자·숫자·단일 하이픈만 허용하며 정규화한 값을 저장합니다. 같은 Organization의 같은 Catalog에서 이미 사용 중이면 409 HANDLE_CONFLICT, 형식 오류는 422 VALIDATION_FAILED(오류 field /handle, code invalid_format)입니다. |
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | No | |
description | string | No | |
inputs | object | boolean | null | No | null 또는 JSON Schema 2020-12. 256 KiB·64단계, 정의 내부 참조만 허용. |
depends_on | string[] | No | |
parameters | Workflow.Parameter[] | No | |
success_actions | Action[] | No | |
failure_actions | Action[] | No | |
outputs | Output[] | No | |
steps | Step[] | Yes | |
source | Source | null | No |
Responses
| Status | Description |
|---|---|
200 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
200 response body
Type: Validation
| Name | Type | Required | Description |
|---|---|---|---|
valid | true | Yes | |
operation | any | Yes | Values: create, update |
validateWorkflowUpdate#
PUT /api/workflows/{id}/validate
Authentication: Session cookie or Agent token
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes | |
If-Match | header | string | Yes | 단일 strong ETag. 삭제 참조 보호 409가 누락 428·불일치 412보다 우선. |
Request body
application/json · Required: Yes
Type: WorkflowReplace
| Name | Type | Required | Description |
|---|---|---|---|
handle | string | No | 선택. 생략하면 저장된 값을 유지합니다. 앞뒤 공백 제거·소문자 정규화 후 3~39자의 영문 소문자·숫자·단일 하이픈만 허용하며 정규화한 값을 저장합니다. 같은 Organization의 같은 Catalog에서 이미 사용 중이면 409 HANDLE_CONFLICT, 형식 오류는 422 VALIDATION_FAILED(오류 field /handle, code invalid_format)입니다. |
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
inputs | object | boolean | null | Yes | null 또는 JSON Schema 2020-12. 256 KiB·64단계, 정의 내부 참조만 허용. |
depends_on | string[] | Yes | |
parameters | Workflow.Parameter[] | Yes | |
success_actions | Action[] | Yes | |
failure_actions | Action[] | Yes | |
outputs | Output[] | Yes | |
steps | Step[] | Yes | |
source | Source | null | Yes |
Responses
| Status | Description |
|---|---|
200 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
200 response body
Type: Validation
| Name | Type | Required | Description |
|---|---|---|---|
valid | true | Yes | |
operation | any | Yes | Values: create, update |
workflowReferrers#
GET /api/workflows/{id}/referrers
Authentication: Session cookie or Agent token
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes |
Responses
| Status | Description |
|---|---|
200 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
200 response body
An array (Referrer[]). The table lists item fields.
| Name | Type | Required | Description |
|---|---|---|---|
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
id | string | Yes | |
handle | string | Yes | 같은 Organization의 같은 Catalog에서 고유한 Web 주소 이름. 3~39자의 영문 소문자·숫자·단일 하이픈이며 숫자로 시작할 수 있습니다. |
created_at | string(date-time) | Yes | |
updated_at | string(date-time) | Yes | |
step_count | integer | Yes | |
kinds | any[] | Yes |
endpointWorkflows#
GET /api/endpoints/{id}/workflows
Authentication: Session cookie or Agent token
Parameters
| Name | In | Type | Required | Description |
|---|---|---|---|---|
id | path | string | Yes |
Responses
| Status | Description |
|---|---|
200 | 성공 |
400 | INVALID_REQUEST·INVALID_ID: 엄격한 JSON·미정의 필드·조건 헤더·query 오류 |
404 | WORKFLOW_NOT_FOUND·ENDPOINT_NOT_FOUND: 현재 Workspace에 없는 부모 |
409 | WORKFLOW_KEY_CONFLICT·WORKFLOW_IN_USE·ENDPOINT_IN_USE |
412 | PRECONDITION_FAILED |
413 | PAYLOAD_TOO_LARGE: 본문 1 MiB 초과 |
415 | UNSUPPORTED_MEDIA_TYPE |
422 | VALIDATION_FAILED: 필드·Schema·참조·순환·깊이 |
428 | PRECONDITION_REQUIRED |
200 response body
An array (EndpointWorkflow[]). The table lists item fields.
| Name | Type | Required | Description |
|---|---|---|---|
workflow_key | string | Yes | |
name | string | Yes | |
summary | string | Yes | |
description | string | Yes | |
id | string | Yes | |
handle | string | Yes | 같은 Organization의 같은 Catalog에서 고유한 Web 주소 이름. 3~39자의 영문 소문자·숫자·단일 하이픈이며 숫자로 시작할 수 있습니다. |
created_at | string(date-time) | Yes | |
updated_at | string(date-time) | Yes | |
step_count | integer | Yes | |
steps | object[] | Yes |