Skip to content
Structly Docs
한국어

stly

stly spec-documents

On this page

This page is generated from the public contract. Descriptions are shown in the original Korean.

stly spec-documents create#

스펙 문서 생성

  • HTTP request: POST /api/spec-documents
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required

Check the input JSON structure with stly schema spec-documents create.

Options

NameTypeRequiredDescription
--inputstringYesJSON 원문 파일 또는 stdin(-)
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, repository_id, api_id, kind, name, path, summary, description, spec_version, content_format, created_at, updated_at, content
--repositorystringNo부모 Repository ID(스펙 문서 생성·목록에서는 선택)

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents create --repository 00000000-0000-0000-0000-000000000001 --input input.json

stly spec-documents delete#

스펙 문서 삭제

  • HTTP request: DELETE /api/spec-documents/{id}
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • --if-match required

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--if-matchstringYes상세 GET에서 얻은 단일 strong ETag
--fieldsstringNo응답 최상위 필드, 쉼표로 구분

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents delete 00000000-0000-0000-0000-000000000001 --if-match '"상세 GET의 ETag"'

stly spec-documents export#

승인한 Catalog 값을 OpenAPI 원문·manifest에 반영(서버 저장 없음)

  • HTTP request: POST /api/spec-documents/{id}/export
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required
  • --if-match required

Check the input JSON structure with stly schema spec-documents export.

Arguments

  • file: OpenAPI 원문 (ID 인자는 --file·--input 방식에서 사용)

Options

NameTypeRequiredDescription
--if-matchstringYes같은 원문·manifest·path의 export-plan 응답 plan_token
--approvestringNo승인할 변경 ID의 쉼표 구분 목록
--approve-allbooleanNo현재 --if-match 계획 토큰 안의 지원 변경 전체 승인
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: applicable, changes, content, errors, manifest, plan_token, unsupported, warnings
--filestringNo반영할 OpenAPI 로컬 파일. --input과 함께 사용할 수 없습니다
--inputstringNoHTTP 요청 JSON. --file 사용 시 생략합니다
--manifeststringNostructly.yaml 경로. 생략하면 현재 디렉터리에서 상위로 탐색합니다

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Behavior

  1. 현재 디렉터리부터 manifest 탐색. 읽기 전용 manifest-plan으로 연결 확인·문서 ID 복구
  2. 원문·manifest·선택 옵션으로 계획 확인. 계획 명령은 서버·파일 저장 없음
  3. 같은 토큰과 --approve 또는 --approve-all로 반영. 412·토큰 변경 시 자동 재계획·반영 없음
  4. 쓰기 직전 파일 SHA-256 확인. 충돌 시 manifest.new 또는 원문.new를 보존하고 실패

Example

stly spec-documents export openapi.yaml --manifest structly.yaml --approve api.name --if-match '"export-plan:계획 토큰"'

stly spec-documents export-plan#

Catalog 값을 OpenAPI 원문으로 되돌릴 승인 계획(저장 없음)

  • HTTP request: POST /api/spec-documents/{id}/export-plan
  • Authentication modes: Agent token, User session
  • Changes records: No
  • Input JSON (--input) required

Check the input JSON structure with stly schema spec-documents export-plan.

Arguments

  • file: OpenAPI 원문 (ID 인자는 --file·--input 방식에서 사용)

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: applicable, changes, content, errors, manifest, plan_token, unsupported, warnings
--filestringNo반영할 OpenAPI 로컬 파일. --input과 함께 사용할 수 없습니다
--inputstringNoHTTP 요청 JSON. --file 사용 시 생략합니다
--manifeststringNostructly.yaml 경로. 생략하면 현재 디렉터리에서 상위로 탐색합니다

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Behavior

  1. 현재 디렉터리부터 manifest 탐색. 읽기 전용 manifest-plan으로 연결 확인·문서 ID 복구
  2. 원문·manifest·선택 옵션으로 계획 확인. 계획 명령은 서버·파일 저장 없음
  3. 같은 토큰과 --approve 또는 --approve-all로 반영. 412·토큰 변경 시 자동 재계획·반영 없음
  4. 쓰기 직전 파일 SHA-256 확인. 충돌 시 manifest.new 또는 원문.new를 보존하고 실패

Example

stly spec-documents export-plan openapi.yaml --manifest structly.yaml

stly spec-documents get#

스펙 문서 상세 조회

  • HTTP request: GET /api/spec-documents/{id}
  • Authentication modes: Agent token, User session
  • Changes records: No

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, repository_id, api_id, kind, name, path, summary, description, spec_version, content_format, created_at, updated_at, content

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents get 00000000-0000-0000-0000-000000000001

stly spec-documents import#

승인한 OpenAPI import 변경과 원문 반영

  • HTTP request: POST /api/spec-documents/{id}/import
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required
  • --if-match required

Check the input JSON structure with stly schema spec-documents import.

Arguments

  • file: OpenAPI 원문 (ID 인자는 --file·--input 방식에서 사용)

Options

NameTypeRequiredDescription
--if-matchstringYes같은 본문(approved 제외)으로 실행한 import-plan 응답의 plan_token
--apistringNo소속 API ID(선택, 지정 시 해당 API 소속 Endpoint만 조회)
--approvestringNo승인할 변경 ID의 쉼표 구분 목록
--approve-allbooleanNo현재 --if-match 계획 토큰 안의 지원 변경 전체 승인
--create-apistringNo생성할 API의 name·handle JSON 객체
--create-servicestringNo생성할 Service의 name·handle JSON 객체
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: api_id, applicable, changes, deletion_candidates, errors, items, manifest, plan_token, security_impacts, warnings
--filestringNo반영할 OpenAPI 로컬 파일. --input과 함께 사용할 수 없습니다
--inputstringNoHTTP 요청 JSON. --file 사용 시 생략합니다
--linkstringNooperationId → Endpoint ID JSON 객체
--manifeststringNostructly.yaml 경로. 생략하면 현재 디렉터리에서 상위로 탐색합니다
--nonebooleanNo제공 Service를 명시적으로 미연결
--recreatestringNo재생성할 operationId의 쉼표 구분 목록
--renamestringNo이전 operationId → 새 operationId JSON 객체
--servicestringNo제공 Service ID

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Behavior

  1. 현재 디렉터리부터 manifest 탐색. 읽기 전용 manifest-plan으로 연결 확인·문서 ID 복구
  2. 원문·manifest·선택 옵션으로 계획 확인. 계획 명령은 서버·파일 저장 없음
  3. 같은 토큰과 --approve 또는 --approve-all로 반영. 412·토큰 변경 시 자동 재계획·반영 없음
  4. 쓰기 직전 파일 SHA-256 확인. 충돌 시 manifest.new 또는 원문.new를 보존하고 실패

Example

stly spec-documents import openapi.yaml --manifest structly.yaml --approve api.name --if-match '"import-plan:계획 토큰"'

stly spec-documents import-plan#

OpenAPI 원문의 변경 ID별 import 계획(저장 없음)

  • HTTP request: POST /api/spec-documents/{id}/import-plan
  • Authentication modes: Agent token, User session
  • Changes records: No
  • Input JSON (--input) required

Check the input JSON structure with stly schema spec-documents import-plan.

Arguments

  • file: OpenAPI 원문 (ID 인자는 --file·--input 방식에서 사용)

Options

NameTypeRequiredDescription
--apistringNo소속 API ID(선택, 지정 시 해당 API 소속 Endpoint만 조회)
--create-apistringNo생성할 API의 name·handle JSON 객체
--create-servicestringNo생성할 Service의 name·handle JSON 객체
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: api_id, applicable, changes, deletion_candidates, errors, items, manifest, plan_token, security_impacts, warnings
--filestringNo반영할 OpenAPI 로컬 파일. --input과 함께 사용할 수 없습니다
--inputstringNoHTTP 요청 JSON. --file 사용 시 생략합니다
--linkstringNooperationId → Endpoint ID JSON 객체
--manifeststringNostructly.yaml 경로. 생략하면 현재 디렉터리에서 상위로 탐색합니다
--nonebooleanNo제공 Service를 명시적으로 미연결
--recreatestringNo재생성할 operationId의 쉼표 구분 목록
--renamestringNo이전 operationId → 새 operationId JSON 객체
--servicestringNo제공 Service ID

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Behavior

  1. 현재 디렉터리부터 manifest 탐색. 읽기 전용 manifest-plan으로 연결 확인·문서 ID 복구
  2. 원문·manifest·선택 옵션으로 계획 확인. 계획 명령은 서버·파일 저장 없음
  3. 같은 토큰과 --approve 또는 --approve-all로 반영. 412·토큰 변경 시 자동 재계획·반영 없음
  4. 쓰기 직전 파일 SHA-256 확인. 충돌 시 manifest.new 또는 원문.new를 보존하고 실패

Example

stly spec-documents import-plan openapi.yaml --manifest structly.yaml

stly spec-documents list#

스펙 문서 목록 조회

  • HTTP request: GET /api/spec-documents
  • Authentication modes: Agent token, User session
  • Changes records: No

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, repository_id, api_id, kind, name, path, summary, description, spec_version, content_format, created_at, updated_at
--repositorystringNo부모 Repository ID(스펙 문서 생성·목록에서는 선택)
--standalonestringNoRepository 없는 OpenAPI 목록 조회에 true 지정

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents list --repository 00000000-0000-0000-0000-000000000001

stly spec-documents manifest#

서버 기준 단일 문서 structly.yaml 조회

  • HTTP request: GET /api/spec-documents/{id}/manifest
  • Authentication modes: Agent token, User session
  • Changes records: No

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: manifest

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents manifest 00000000-0000-0000-0000-000000000001

stly spec-documents manifest-plan#

manifest 연결 확인·문서 식별·등록 키 준비(서버 저장 없음)

  • HTTP request: POST /api/spec-documents/manifest-plan
  • Authentication modes: Agent token, User session
  • Changes records: No
  • Input JSON (--input) required

Check the input JSON structure with stly schema spec-documents manifest-plan.

Options

NameTypeRequiredDescription
--inputstringYesJSON 원문 파일 또는 stdin(-)
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: document_id, manifest, organization_id, registration_key, repository_id, server

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents manifest-plan --input input.json

stly spec-documents register#

OpenAPI 파일 등록과 manifest ID 기록

  • HTTP request: POST /api/spec-documents
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required

Check the input JSON structure with stly schema spec-documents register.

Arguments

  • file: OpenAPI 원문 (ID 인자는 --file·--input 방식에서 사용)

Options

NameTypeRequiredDescription
--namestringYes등록할 스펙 문서 이름
--descriptionstringNo스펙 문서 설명
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, repository_id, api_id, kind, name, path, summary, description, spec_version, content_format, created_at, updated_at, content
--filestringNo반영할 OpenAPI 로컬 파일. --input과 함께 사용할 수 없습니다
--manifeststringNostructly.yaml 경로. 생략하면 현재 디렉터리에서 상위로 탐색합니다
--repositorystringNo부모 Repository ID(스펙 문서 생성·목록에서는 선택)
--summarystringNo스펙 문서 요약

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Behavior

  1. 읽기 전용 manifest-plan으로 서버·Organization·Repository 확인 및 등록 키 준비
  2. manifest에 등록 키를 해시 확인·임시 파일 교체로 먼저 저장
  3. 같은 키로 원문 등록. 성공 후 서버가 병합한 document_id를 manifest에 기록. 실패·중단은 키로 재시도

Example

stly spec-documents register openapi.yaml --manifest structly.yaml --name Orders

stly spec-documents update#

스펙 문서 수정

  • HTTP request: PUT /api/spec-documents/{id}
  • Authentication modes: Agent token, User session
  • Changes records: Yes
  • Input JSON (--input) required
  • --if-match required

Check the input JSON structure with stly schema spec-documents update.

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--if-matchstringYes상세 GET에서 얻은 단일 strong ETag
--inputstringYesJSON 원문 파일 또는 stdin(-)
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: id, repository_id, api_id, kind, name, path, summary, description, spec_version, content_format, created_at, updated_at, content

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents update 00000000-0000-0000-0000-000000000001 --input input.json --if-match '"상세 GET의 ETag"'

stly spec-documents view#

스펙 문서 구조 조회

  • HTTP request: GET /api/spec-documents/{id}/view
  • Authentication modes: Agent token, User session
  • Changes records: No

Arguments

  • id: ID

Options

NameTypeRequiredDescription
--fieldsstringNo응답 최상위 필드, 쉼표로 구분
Values: value, source_etag, message

Common options: --server, --env-file, --timeout, --auth-mode, --dry-run

Example

stly spec-documents view 00000000-0000-0000-0000-000000000001