개발자

Sume 에이전트 실행 오류: action_run_in_progress 등

스케줄 실행이 이미 진행 중인데 reject를 보내면 409 action_run_in_progress, ID가 내 Agent Completion 실행이 아니면 404 agent_run_not_found입니다.

읽는 시간 5분Sume
전체 글

409 action_run_in_progress는 Sume 스케줄에 이미 진행 중인 실행이 있는데 트리거 요청이 on_active_run: "reject"로 설정되어 있어서 실행이 기록되지 않았다는 뜻입니다. 404 agent_run_not_found는 /v1/agent-runs에 보낸 ID가 알 수 없는 ID이거나, 다른 계정의 것이거나, Action 또는 Format 실행 ID라는 뜻입니다. Action과 Format 실행 ID는 이 경로에서 절대 해석되지 않습니다.

오류 코드는 Scheduled의 API 트리거와 실행과 결과 페이지, 그리고 Agent Completions에서 가져왔으며 2026-09-26에 확인했습니다. 공통 오류 봉투와 요청 한도는 Sume API 오류와 요청 한도에 정리돼 있습니다.

스케줄 실행을 시작할 때 어떤 오류가 반환되나요?

트리거인 POST /v1/actions/{action_id}/runs나 그 {handle}/{slug} 버니티 경로를 호출하려면 api_trigger_enabled: true인 active 스케줄과, actions:read와 actions:write가 있는 키가 필요합니다. 429는 백오프하라는 뜻입니다.

고급: API로 스케줄 실행하기 기준, 2026-09-26 확인.
상태코드원인해결
400output_schema_invalid엄격한 부분집합을 벗어난 스키마. 위반한 규칙은 details.violations[]에 하나씩 나옴스키마 수정
400invalid_requestinput이 객체가 아니거나 속성 64개 또는 2 MiB 초과, 지출 상한이 0보다 큰 값이나 null이 아님, webhook_url이 공개 HTTPS가 아님, 지시문이 비어 있음요청 또는 Action 수정
401unauthorized키가 없거나, 형식이 잘못됐거나, 폐기됨헤더 확인, 새 키 발급
403insufficient_scope키에 actions:write가 없거나 서비스 계정 키임대시보드에서 새 키 발급
404action_not_found알 수 없거나 보관된 Action, 또는 다른 워크스페이스의 Actionaction_id 확인
409action_api_trigger_disabledapi_trigger_enabled가 falseAPI 호출 트리거 켜기
409action_inactiveAction이 inactive 상태Action을 Active로 설정
409action_run_in_progress실행이 진행 중인데 on_active_run이 reject였음나중에 재시도하거나 skip 사용
409idempotency_conflict같은 키를 다른 페이로드로 재사용새 키 사용
503studio_agent_upstream_unavailableAgents 컨트롤 플레인이 설정되지 않았거나, 도달할 수 없거나, JSON이 아닌 응답을 반환함재시도, 계속되면 지원팀에 문의

잘못 읽기 쉬운 트리거 응답은 무엇인가요?

HTTP 상태가 아니라 영수증의 status로 분기하세요.

  • 202는 접수되어 시작됐다는 뜻입니다. 200은 멱등성 재전송(idempotency_hit: true)이거나, 기본값인 on_active_run: "skip"에서 skip_reason: "previous_run_active"로 건너뛴 실행이라는 뜻입니다. 에이전트 실행이 겹치지 않게 하기를 참고하세요.
  • 본문의 알 수 없는 최상위 필드는 거부되지 않고 조용히 버려집니다.
  • output_schema와 response_format을 함께 보내면 400 invalid_request입니다. 같은 키를 다른 output_schema로 다시 보내면 409 idempotency_conflict입니다.
  • 503은 이 라우트가 선언한 OpenAPI 응답에 없으므로, 생성된 클라이언트가 이를 모델링하지 않을 수 있습니다. 이 응답은 retryable: false라고 알려 주지만, 문서는 제한된 재시도는 합리적이라고 설명합니다.

Agent Completions는 어떤 오류를 반환하나요?

instruction과 messages 중 정확히 하나만 보내고, generation_spend_cap_usd는 항상 보내세요(기본값이 없습니다). 모든 completion은 새 스레드에서 실행되므로 assistant 턴은 빼세요. Sume는 실행을 만들 때 첨부를 가져오므로, image_url은 공개 HTTPS여야 하고 인증 없이 접근할 수 있어야 합니다.

Agent Completions 기준, 2026-09-26 확인.
상태코드원인
400invalid_request지출 상한 누락, instruction/messages를 하나도 보내지 않거나 둘 다 보냄, assistant 턴, 형식이 잘못된 input, 또는 sume-agent가 아닌 model
400invalid_attachment잘못된 type, URL이 없거나 HTTPS가 아님, image_url과 asset_id를 둘 다 보냄, 또는 허용되지 않는 이미지
400attachment_not_found이 워크스페이스에서 알 수 없는 asset_id
413attachment_too_large30 MB를 넘는 이미지, 또는 전체가 500 MB를 넘는 첨부
502attachment_fetch_failed도달할 수 없는 호스트, 핫링크 차단, 또는 2xx가 아닌 응답
403insufficient_scope키에 agent_completions:*가 없거나 서비스 계정 키임
404agent_run_not_found알 수 없는 실행 ID 또는 다른 계정의 실행. Action과 Format 실행 ID는 여기서 해석되지 않음
409idempotency_conflict같은 키를 다른 페이로드로 재사용

유효한 키가 왜 403 insufficient_scope를 받나요?

스코프는 키를 만들 때 고정됩니다. Agent Completions나 Actions API 호출 트리거가 출시되기 전에 발급한 키에는 해당 표면의 스코프가 없어 403 insufficient_scope로 실패합니다. 스코프는 나중에 추가할 수 없으므로 API 키에서 새 키를 만들어 교체하세요. 스케줄 트리거에서 이 오류의 next_action은 authenticate입니다. 요청 본문을 바꾸는 것이 아니라 올바른 스코프가 있는 키가 해법입니다.

  • 스케줄 트리거에서는 details.required_scope가 actions:write처럼 빠진 스코프를 알려 줍니다. 조회에는 actions:read 또는 agent_completions:read가, 생성과 취소에는 그에 맞는 :write 스코프가 필요합니다.
  • 서비스 계정 키로는 이 실행들을 만들 수 없습니다. 이때 details.reason은 service_account_action_runs_unsupported 또는 service_account_agent_completions_unsupported입니다.
  • Send only one API key credential. 메시지와 함께 오는 401은 요청에 Authorization: Bearer와 x-api-key가 함께 실렸다는 뜻입니다.

실행을 조회하거나 목록을 볼 때는 어떤 오류가 돌아오나요?

각 실행은 해당 계열의 경로(/v1/action-runs/{run_id}, /v1/agent-runs/{run_id}, /v1/format-runs/{run_id})에서 읽으세요.

  • GET /v1/action-runs/{run_id}/result는 실행이 queued나 processing인 동안 409 run_not_completed를 반환하며, 현재 상태는 details.status에 담깁니다. API 레퍼런스에는 /v1/agent-runs/{run_id}/result에도 같은 409가 나와 있습니다. next_action이 poll_status인 동안에는 status_url을 폴링하세요.
  • 스케줄의 실행 목록은 limit으로 1–100을 받습니다(기본값 50). Sume가 발급하지 않은 cursor는 400 invalid_request입니다.
  • 스케줄 실행 취소는 멱등입니다. 종료된 실행을 취소하면 그 영수증이 200과 함께 돌아옵니다.
  • 모든 오류에서 request_id를 로그에 남기고, 실행 조사를 요청할 때 함께 알려 주세요.

실패한 에이전트 실행은 무엇을 알려 주나요?

시작한 뒤 실패한 실행은 error와 함께 failed로 끝납니다. 스케줄 실행에서 error.code는 output_error.code가 있으면 그 값이고, 없으면 action_run_failed입니다. Agent Completions에서는 Run 웹훅이 대체 값으로 agent_run_failed를 씁니다. API에서는 출력이 output_schema를 충족하지 못하면 실행이 output_schema_unsatisfied로 실패하지만, artifacts[]에는 미디어가 그대로 나열됩니다. 예외는 output_extraction_failed로, 실행은 completed로 남고 다음 조회 때 채워집니다. 실행이 시작되기 전에 잡히는 스키마 오류는 output_schema_invalid 해결하기를 참고하세요.

출처

관련 글

작성자 Sume