API 문서
ProcessMind API의 엔드포인트, 인증 및 개발자용 연동 안내를 확인하세요.
이 가이드에서는 데이터를 조회하고 정보를 제출하거나 워크플로를 자동화할 때 ProcessMind API를 호출하는 방법과 권장 사항을 예제로 설명합니다.
요청 및 응답 형식을 포함한 전체 엔드포인트 문서는 API 레퍼런스를 참조하세요.
추가 예제와 클라이언트 라이브러리는 GitHub의 API 문서에서 확인하세요.
모든 API 요청은 다음 주소로 전송합니다.
https://api.processmind.com 모든 경로는 /v1 아래 버전별로 제공됩니다. 전체 API 사양은 기계 판독이 가능한 형식(OpenAPI 3.1)으로 다음 주소에서 확인할 수 있습니다.
GET https://api.processmind.com/v1/openapi.json 공개 OpenAPI 문서(/v1/openapi.json)와 MCP OAuth 엔드포인트를 제외한 모든 API 요청에는 x-api-key 헤더에 API 키가 필요합니다.
x-api-key: your-api-key-here API 키는 ProcessMind 계정 설정에서 확인할 수 있습니다. 자세한 내용은 API 키 확인을 참조하세요.
ProcessMind API는 표준 HTTP 상태 코드를 사용합니다.
| 상태 코드 | 의미 |
|---|---|
200 OK | 요청이 성공했습니다 |
201 Created | 리소스가 생성되었습니다 |
204 No Content | 요청이 성공했으며 응답 본문은 없습니다 |
400 Bad Request | 요청이 잘못되었거나 매개변수가 없거나 유효하지 않습니다 |
401 Unauthorized | API 키가 없거나 유효하지 않습니다 |
403 Forbidden | 인증은 되었지만 해당 작업을 수행할 권한이 없습니다 |
404 Not Found | 리소스가 존재하지 않습니다 |
500 Internal Server Error | 예상하지 못한 서버 오류가 발생했습니다 |
ProcessMind API를 사용하면 다음 작업을 수행할 수 있습니다.
다음 예제에서는 ProcessMind API로 자주 사용하는 작업을 수행하는 방법을 설명합니다.
데이터 테이블에 파일을 업로드하려면 먼저 사전 서명된 URL을 가져옵니다.
const presignedUrl = await getPresignedUploadUrl({
apiKey,
tenantId: "tenant-123",
datatableId: "table-456"
});
console.log(presignedUrl); // https://s3.amazonaws.com/…?X-Amz-Signature=… 테넌트의 모든 데이터셋을 조회합니다.
const datasets = await getDatasets({
apiKey,
tenantId: "tenant-123"
});
console.log(datasets); 테넌트 세부 정보를 조회합니다.
const tenantInfo = await getTenant({
apiKey,
tenantId: "tenant-123"
});
console.log(tenantInfo); 테넌트에 새 프로세스를 생성합니다.
const process = await createProcess({
apiKey,
tenantId: "tenant-123",
displayName: "Order to Cash"
});
console.log(process.id); // Use this ID for subsequent operations 프로세스 모델을 정의할 BPMN 파일을 업로드합니다.
const fs = require("fs");
const bpmnXml = fs.readFileSync("./my-process.bpmn", "utf8");
await uploadBpmn({
apiKey,
tenantId: "tenant-123",
processId: "process-456",
bpmnXml
}); 분석을 위해 데이터 테이블을 프로세스에 연결합니다.
const mapping = await createProcessMapping({
apiKey,
tenantId: "tenant-123",
processId: "process-456",
dataTableId: "datatable-789",
displayName: "Sales Data 2024",
showByDefault: true
}); 테넌트에 사용자를 추가합니다.
const result = await addTenantUser({
apiKey,
tenantId: "tenant-123",
id: "user-456",
email: "colleague@example.com",
isAdminInTenant: false,
isActiveInTenant: true,
sendInvitationEmail: true
}); 참고: 본문에 지정한 역할 필드(
isAdminInTenant,access,isDashboardViewer)는 입력한 그대로 적용됩니다. 사용자 관리 엔드포인트는 테넌트 관리자 권한 전체를 다루므로, 관리 권한을 부여해도 되는 호출자에게만 쓰기 권한이 있는 API 키를 발급하세요. System API는 초대 이메일을 보내지 않으므로 사용자를 온보딩하는 책임은 사용자에게 있습니다.
ProcessMind에 파일을 업로드하는 기본 절차는 다음과 같습니다.
getPresignedUploadUrl 호출로 사전 서명된 URL을 가져옵니다.다음은 fetch를 사용하는 간단한 예제입니다.
async function uploadFile({ apiKey, tenantId, datatableId, file }) {
// Step 1: Obtain a presigned URL
const uploadUrl = await getPresignedUploadUrl({ apiKey, tenantId, datatableId });
// Step 2: Upload the file via PUT
await fetch(uploadUrl, {
method: "PUT",
headers: {
"Content-Type": file.type
},
body: file
});
} info
다음은 여러 언어로 작성한 전체 예제입니다. 복사해 바로 사용할 수 있습니다.
모든 값이 자리표시자로 지정된, curl을 두 번 호출해 ProcessMind에 파일을 업로드하는 최소한의 Bash 스크립트입니다.
Bash 예제 다운로드사전 서명된 URL을 사용해 로컬 CSV 파일을 ProcessMind에 업로드합니다.
단계:
설정:
https://api.processmind.com로 설정되어 있습니다.사전 서명된 URL을 사용해 로컬 CSV 파일을 원격 API에 업로드합니다.
단계:
설정:
목록 엔드포인트는 limit 및 offset 쿼리 매개변수를 받으며, 별도 래퍼가 없는 JSON 배열을 반환합니다(래퍼와 전체 개수 없음).
| 매개변수 | 유형 | 기본값 | 최대값 |
|---|---|---|---|
limit | 정수 | 100 | 1,000(데이터 테이블 목록은 250) |
offset | 정수 | 0 | 없음 |
GET /v1/tenant/{tenantId}/processes?limit=50&offset=100 전체 결과를 페이지 단위로 조회하려면 응답 배열이 요청한 limit보다 짧거나 비어 있을 때까지 offset += limit를 지정해 요청을 반복합니다. 최대값을 초과하면 400 오류가 반환됩니다. 버전이 지정된 데이터 엔드포인트(데이터셋, 버전, 웹훅)도 같은 방식을 따르며, 두 데이터 테이블 목록의 최대 limit 값은 250입니다.
/v1 아래에서 버전별로 제공됩니다. 호환성을 깨는 변경 사항은 /v1를 예고 없이 변경하는 대신 새 버전으로 제공됩니다.info
API 관련 문의나 지원이 필요하시면 지원팀에 문의하거나 API 예제 저장소에 이슈를 등록하세요.
신용카드 등록이나 대기 없이 바로 이용할 수 있습니다. 조직의 업무 방식을 명확하고 유기적으로 연결된 프로세스 설계로 바꿔 보세요.
프로세스 아키텍처를 구축하고, 소유권과 통제 기준을 정립하며, 모든 계층의 역할과 책임을 조율하세요.
무료 체험을 시작하고 프로세스를 관리·운영하고 지속적으로 개선할 수 있는 신뢰할 만한 기반을 마련하세요.