콘텐츠로 이동

주문 · 렌더링 API

editing ──▶ tentative(ordering) ──▶ definitive(ordered) ──▶ rendering ──▶ rendered
│ 취소 가능 │ 취소 불가
└── cancel ──▶ editing
  • Tentative Order: 취소 가능한 주문. 렌더링되지 않음.
  • Definitive Order: 확정 주문. 렌더링 가능 상태가 되며 취소 불가.
GET /api/projects/:prjid/order/can_order

브라우저 강제 종료 등으로 저장이 안 된 경우 주문 가능 여부를 확인합니다. 헤더: edicus-api-key.

{
"can_order": true,
"dec_rev": 3,
"status": "editing"
}

status: editing / ordering / ordered / rendering / rendered.

POST /api/projects/:prjid/order/tentative

헤더: edicus-api-key, edicus-uid.

body 타입 설명
order_for_test boolean 테스트 주문 여부(아래 참고)
order_count * number 주문 수량
total_price * number 실 결제 금액
partner_order_id string (선택) 파트너사 주문 번호
order_name string (선택) 주문자 이름. 45자 이내
userdata_json string (선택) 렌더링 시 전달할 사용자 데이터. 1000자 이내
vdp_dataset string (선택) 가변 데이터. 포함 시 전용 API 사용 권장
{ "order_id": 100023, "status": "ordering" }
  • 편집 가능 상태가 아니거나(이미 주문됨) projectId가 잘못되면 err를 반환합니다.
  • order_for_test: true는 렌더링 테스트용 주문으로, edicus-prepress의 render-target이 development인 상태에서만 렌더링됩니다.
POST /api/projects/:prjid/order/definitive

Tentative Order 호출 이후에 호출해야 합니다. 렌더링 가능 상태가 되며 취소 불가. 헤더: edicus-api-key, edicus-uid.

{ "order_id": 100023, "status": "ordered" }
POST /api/orders/:order_id/cancel

tentative 상태에서만 취소 가능합니다(definitive는 불가). 헤더: edicus-api-key, edicus-uid.

{ "order_id": "10021", "status": "canceled" }
PUT /api/orders/:order_id/status/reset_as_ordered

렌더링 상태를 ordered로 되돌립니다. Edicus Manager 주문확인 탭의 rerender와 동일하며, 렌더링 실패 시 재시도 구현에 사용합니다. 헤더: edicus-api-key.

다음 엔드포인트는 Edicus 내부(prepress) 연동용입니다.

POST /api/order/query

주문 상품을 조회합니다. 헤더: edicus-api-key. body로 조회 조건 지정.

// 시간으로 조회
{ "by_time": { "from": "2017-12-11", "to": "2017-12-12", "status": "rendered" } }
// order id로 조회
{ "by_order_id": { "order_id": "10009" } }
// project id로 조회
{ "by_project_id": { "project_id": "-KzvOwkOBG3ym3G9Mp6i" } }
// partner order id로 조회
{ "by_partner_order_id": { "partner_order_id": "Order-0001" } }
POST /api/order/request_for_render

렌더링 가능한 상태로 변경합니다. 헤더: edicus-api-key.

{ "prepress_id": "string", "last_requested_order_id": "string", "prod_codes": ["MB", "NC"] }
PUT /api/orders/:order_id/status/as/:status

:statusrender-fail / rendered / ordered 중 하나. 헤더: edicus-api-key, body { prepress_id }.