castomFLOW

무엇이든 연결하기

HTTP로 들어오고 HTTP로 나가며, 까다로운 부분은 처리돼요

모든 자동화 도구는 통합 수를 내세워요. 그 수는 항상 크고 항상 잘못된 질문이에요. 실제로 필요한 시스템은 떠난 사람이 2014년에 사내에서 만든 것이기 때문이에요. 중요한 것은 그 밑에 깔린 프로토콜을 도구가 얼마나 잘 다루는지예요.

미리 준비된 연결

대부분의 비즈니스가 운영하는 애플리케이션에는 준비된 단계가 있어요: 쇼핑몰과 마켓플레이스, 회계와 청구, 스프레드시트와 데이터베이스, 캘린더와 메일, 스토리지와 메시징, CRM과 헬프데스크, 결제 대행사와 배송 업체. 계정을 한 번 승인하면 필드가 JSON의 언어가 아니라 애플리케이션이 쓰는 언어로 이름 붙어요.

애플리케이션에 폴란드 시장 특유의 사항이 있을 때 — KSeF 대응이 필수인 청구 시스템, 라벨이 국가 표준인 배송 업체 — 준비된 단계는 그것을 알아요. 패밀리가 그 시장에 팔면서 배워야 했기 때문이에요.

그리고 일반적인 경우

나머지는 모두 HTTP 단계인데, 여기서 HTTP 단계는 위로가 아니에요. 준비된 연결이 기반으로 하는 것과 동일한 장치이며, 직접 쓰기 번거로운 부분도 똑같이 처리돼요.

번거로운 부분들

처리되어 있으니 다시 쓸 필요가 없어요

인증

API 키, 베어러 토큰, 베이직 인증, 리프레시가 있는 OAuth 2, HMAC 요청 서명, 상호 TLS. 자격 증명은 한 번 저장되고 이름으로 참조되며, 로그나 실행 기록에 절대 출력되지 않아요.

페이지네이션

커서, 페이지 번호, 오프셋, Link 헤더, 빈 배열을 반환해 끝을 알리는 API까지. 형태만 말하면 단계가 전체 집합을 훑어요.

속도 제한

연결별 상한으로, 이를 사용하는 모든 워크플로에서 일관되게 적용돼요. 공급자가 Retry-After와 함께 429로 응답하면, 스텝은 무리하게 재시도하지 않고 그 시간만큼 기다려요.

재시도와 백오프

일시적 오류는 점점 길어지는 간격과 상한을 두고 재시도해요. 스텝은 입력값의 순수 함수이므로, 재시도는 실행 전체가 아니라 해당 스텝만 다시 돌려요.

까다로운 페이로드

JSON, 폼 인코딩, XML, 일반 텍스트, 멀티파트 업로드. 응답은 이름으로 참조할 수 있는 필드로 파싱되며, 네 단계 아래에 중첩된 것까지 포함돼요.

타임아웃

스텝별 제한을 두어, 느린 의존성 하나가 뒤의 모든 작업을 대기시키면서 워커를 붙잡지 못하게 해요. 제한에 도달했을 때 어떻게 할지는 스텝별로 직접 결정하시면 돼요.

HTTP를 말할 줄 아는 시스템이라면, 대화는 이미 시작된 셈이에요.

진지하게 다루는 수신 웹훅

모든 워크플로에는 이를 시작하는 URL을 둘 수 있어요. 그 URL은 서명을 검증해요 — 흔한 공급자들이 쓰는 형태의 HMAC, 그리고 보낸 쪽이 할 수 있는 게 그게 전부라면 공유 시크릿까지요. 서명을 요구하는 워크플로에 서명 없는 요청이 오면 조용히 처리되는 게 아니라 거부되고 기록돼요.

중복 제거는 페이로드 자체의 식별자를 기준으로 이뤄져요. 그래서 200을 제때 확인하지 못해 재전송한 보낸이 세 번이 아니라 한 번만 실행되게 돼요. 형식이 잘못된 페이로드는 거부 사유와 함께 보관돼요. 자동화에서 정체불명의 공백이 생기는 가장 흔한 원인은 어떤 필드를 빼기로 마음을 바꾼 보낸 쪽이거든요.

CSV만 말할 줄 아는 시스템들

그런 시스템은 실제로 존재해요. 새벽 네 시에 SFTP 서버에 파일이 나타나거나, 첨부 파일로 도착하거나, 공유 폴더에 놓이기도 해요. 워크플로는 그 파일을 감시하고, 읽고, 각 행을 레코드로 다룰 수 있어요 — 바이트 순서 표식이 있고, 구분자가 세미콜론이고, 헤더 행이 폴란드어인 파일까지요. 실제 내보내기가 그런 모습이기 때문이에요.

반대 방향도 가능해요. 워크플로는 파일을 만들어 상대 시스템이 기대하는 위치에 놓을 수 있고, 2006년산 소프트웨어가 갖는 인터페이스는 대개 그게 전부예요.

야간 공급사 피드SFTP → HTTP
  • ⚡트리거공급사 SFTP에 새 파일: stock-2026-09-09.csv.
  • 2파싱세미콜론 구분자, 바이트 순서 표식, 폴란드어 헤더. 4,118행.
  • 3정규화통화 코드를 참조 데이터와 대조해 검증했고, 두 건이 유효하지 않아 거부됐어요.
  • 4푸시HTTP PATCH를 200건씩 배치로 전송, 요청 한도 준수.
  • !예외두 행이 담당자에게 보고됐어요. 행 번호와 사유가 함께 기록됐고, 나머지 4,116행은 정상 처리됐어요.

모델을 호출한 스텝: 0개이 실행의 비용: 없음

자격 증명이 보관되는 위치

암호화되어 이름으로 참조되고, 소유 워크스페이스로 범위가 한정되며, 실행 로그나 오류 메시지, 지원 대화에 절대 렌더링되지 않아요. 실행 기록에는 스텝이 supplier-sftp로 인증했다고 표시될 뿐, supplier-sftp가 무엇인지는 보여주지 않아요.

서른 고객을 위해 하나의 워크플로를 운영하는 에이전시는 고객마다 별도의 자격 증명 세트를 두고, 워크플로는 시크릿이 아니라 세트를 참조해요. 키 교체는 한 곳에서 한 번의 수정으로 끝나요 — 에이전시가 이곳을 찾는 가장 큰 이유가 바로 이것이에요.

알아둘 만한 한계: 인터페이스가 전혀 없는 시스템 — API도, 웹훅도, 파일 드롭도 없이 브라우저에서 사람이 클릭하는 것뿐인 시스템 — 은 이 제품으로도, 정직한 어떤 도구로도 자동화할 수 없어요. 여기에는 사용자인 척하는 헤드리스 브라우저가 없어요. 상대가 버튼 하나만 옮겨도 금방 깨지고, 조용히 깨지기 때문이에요.