본문으로 건너뛰기

상품 옵션 검색

POST 

/procedure-menu/open/products/queries/search-product-option-summaries

상품 옵션 검색

Request

### Content-Type별 요청의 JSON Schema

{
"application/json": {
"schema": {
"required": [
"searchText"
],
"type": "object",
"properties": {
"searchText": {
"type": "string",
"description": "검색 키워드"
},
"targetCountryCode": {
"type": "string",
"description": "타겟 국가 코드n - ISO 3166-1 alpha-2 (https://ko.wikipedia.org/wiki/ISO_3166-1_alpha-2?useskin=vector)n - 단, '그 외 국가'는 `ETC`로 표기"
}
},
"title": "protos.open.SearchProductOptionSummariesQuery"
}
}
}

Responses

OK

### Status Code별 응답의 JSON Schema

{
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "object",
"properties": {
"data": {
"type": "array",
"items": {
"required": [
"id",
"title",
"type",
"productId",
"productTitle",
"compositions",
"medicineAndMachines",
"translsMap"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "옵션 ID"
},
"title": {
"type": "string",
"description": "옵션 이름"
},
"type": {
"enum": [
"ProductOptionType_UNKNOWN",
"SINGLE",
"GROUP",
"CONSULTATION"
],
"type": "string",
"description": "옵션 유형 (SINGLE, GROUP, CONSULTATION)",
"format": "enum"
},
"price": {
"allOf": [
{
"required": [
"amount",
"additional"
],
"type": "object",
"properties": {
"amount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "정가"
},
"additional": {
"type": "array",
"items": {
"required": [
"amount",
"visitorType"
],
"type": "object",
"properties": {
"amount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "가격"
},
"visitorType": {
"allOf": [
{
"required": [
"id",
"name"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "고객 수가 유형 ID"
},
"name": {
"type": "string",
"description": "고객 수가 유형 이름"
}
},
"title": "protos.procedure.ProductOptionPriceVisitorType"
}
],
"description": "고객 수가 유형 정보"
},
"suppliedAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "과세 공급가액"
},
"taxFreeAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "면세 금액 (aka. 면세 공급가액)"
},
"vatAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "부가가치세"
},
"taxation": {
"enum": [
"Taxation_UNKNOWN",
"TAXABLE",
"TAX_FREE",
"MIXED"
],
"type": "string",
"description": "과세 여부",
"format": "enum"
}
},
"title": "protos.procedure.ProductOptionSpecialPrice"
},
"description": "고객 수가 유형별 가격"
},
"suppliedAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "과세 공급가액"
},
"taxFreeAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "면세 금액 (aka. 면세 공급가액)"
},
"vatAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "부가가치세"
},
"taxation": {
"enum": [
"Taxation_UNKNOWN",
"TAXABLE",
"TAX_FREE",
"MIXED"
],
"type": "string",
"description": "과세 여부",
"format": "enum"
}
},
"title": "protos.procedure.ProductOptionPrice"
}
],
"description": "가격 정보"
},
"productId": {
"type": "string",
"description": "상품 ID"
},
"productTitle": {
"type": "string",
"description": "상품 이름"
},
"compositions": {
"type": "array",
"items": {
"required": [
"price",
"title",
"procedure",
"medicineAndMachines"
],
"type": "object",
"properties": {
"refSingleOptionId": {
"type": "string",
"description": "@deprecated - 2024. 10. 11 사용되지 않음. 언제나 빈 값이 전달됨"
},
"price": {
"allOf": [
{
"required": [
"amount",
"additional"
],
"type": "object",
"properties": {
"amount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "정가"
},
"additional": {
"type": "array",
"items": {
"required": [
"amount",
"visitorType"
],
"type": "object",
"properties": {
"amount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "가격"
},
"visitorType": {
"allOf": [
{
"required": [
"id",
"name"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "고객 수가 유형 ID"
},
"name": {
"type": "string",
"description": "고객 수가 유형 이름"
}
},
"title": "protos.procedure.ProductOptionPriceVisitorType"
}
],
"description": "고객 수가 유형 정보"
},
"suppliedAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "과세 공급가액"
},
"taxFreeAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "면세 금액 (aka. 면세 공급가액)"
},
"vatAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "부가가치세"
},
"taxation": {
"enum": [
"Taxation_UNKNOWN",
"TAXABLE",
"TAX_FREE",
"MIXED"
],
"type": "string",
"description": "과세 여부",
"format": "enum"
}
},
"title": "protos.procedure.ProductOptionSpecialPrice"
},
"description": "고객 수가 유형별 가격"
},
"suppliedAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "과세 공급가액"
},
"taxFreeAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "면세 금액 (aka. 면세 공급가액)"
},
"vatAmount": {
"allOf": [
{
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
}
],
"description": "부가가치세"
},
"taxation": {
"enum": [
"Taxation_UNKNOWN",
"TAXABLE",
"TAX_FREE",
"MIXED"
],
"type": "string",
"description": "과세 여부",
"format": "enum"
}
},
"title": "protos.procedure.ProductOptionPrice"
}
],
"description": "가격"
},
"title": {
"type": "string",
"description": "@deprecated - 2024. 10. 11 사용되지 않음 언제나 빈 문자열이 전달됨"
},
"unit": {
"allOf": [
{
"type": "object",
"properties": {
"type": {
"enum": [
"UnitType_UNKNOWN",
"UNIT",
"CC",
"VIAL",
"PEN",
"STRING",
"SHOT",
"PAD",
"MINUTE",
"KJ",
"QUANTITY",
"DOT",
"J",
"MG",
"G",
"PULSE",
"BOTTLE",
"SYRINGE",
"PASS",
"IU",
"KHZ",
"MHZ"
],
"type": "string",
"format": "enum"
},
"value": {
"type": "integer",
"format": "int32"
}
},
"title": "protos.procedure.Unit"
}
],
"description": "단위"
},
"count": {
"type": "integer",
"description": "시술 횟수",
"format": "int32"
},
"procedure": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"commonProcedureConfiguration": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"title": "protos.procedure.CommonProcedureConfiguration"
},
"deleted": {
"type": "boolean"
},
"createDate": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "클라이언트 및 백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.Procedure"
}
],
"description": "시술 정보"
},
"medicineAndMachines": {
"type": "array",
"items": {
"required": [
"id",
"name"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "기기/약물 ID"
},
"name": {
"type": "string",
"description": "기기/약물 이름"
}
},
"title": "protos.procedure.MedicineAndMachine"
},
"description": "기기 및 약물 목록"
},
"medicalService": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"translsMap": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"translation": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"title": "protos.Transls"
},
"description": "# 다국어 지원대상 필드n - title"
},
"status": {
"enum": [
"MedicalServiceStatus_UNKNOWN",
"DRAFT",
"PUBLISHED"
],
"type": "string",
"format": "enum"
},
"deleted": {
"type": "boolean"
},
"configuration": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"procedure": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.medical_service.MedicalServiceProcedure"
},
"machines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.medical_service.MedicalServiceMachine"
}
},
"medicines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.medical_service.MedicalServiceMedicine"
}
},
"unit": {
"type": "object",
"properties": {
"type": {
"enum": [
"UnitType_UNKNOWN",
"UNIT",
"CC",
"VIAL",
"PEN",
"STRING",
"SHOT",
"PAD",
"MINUTE",
"KJ",
"QUANTITY",
"DOT",
"J",
"MG",
"G",
"PULSE",
"BOTTLE",
"SYRINGE",
"PASS",
"IU",
"KHZ",
"MHZ"
],
"type": "string",
"format": "enum"
},
"value": {
"type": "integer",
"format": "int32"
}
},
"title": "protos.procedure.Unit"
},
"healthcareReimbursement": {
"enum": [
"HealthcareReimbursement_UNKNOWN",
"REIMBURSABLE",
"NON_REIMBURSABLE"
],
"type": "string",
"format": "enum"
},
"taxation": {
"enum": [
"Taxation_UNKNOWN",
"TAXABLE",
"TAX_FREE",
"MIXED"
],
"type": "string",
"format": "enum"
}
},
"title": "protos.procedure.medical_service.MedicalServiceConfiguration"
},
"draftedDateTimeUtc": {
"type": "string"
},
"updatedDateTimeUtc": {
"type": "string"
},
"priceAmount": {
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
},
"description": {
"type": "string"
},
"caution": {
"type": "string"
},
"recommendedInterval": {
"type": "integer",
"format": "int32"
},
"contributionConstant": {
"type": "integer",
"format": "int32"
},
"durationTime": {
"type": "number",
"format": "double"
}
},
"title": "protos.procedure.medical_service.MedicalService"
}
],
"description": "진료 항목"
}
},
"title": "protos.procedure.ProductGroupOptionComposition"
},
"description": "(그룹 옵션인 경우) 그룹 옵션의 시술 구성"
},
"unit": {
"allOf": [
{
"type": "object",
"properties": {
"type": {
"enum": [
"UnitType_UNKNOWN",
"UNIT",
"CC",
"VIAL",
"PEN",
"STRING",
"SHOT",
"PAD",
"MINUTE",
"KJ",
"QUANTITY",
"DOT",
"J",
"MG",
"G",
"PULSE",
"BOTTLE",
"SYRINGE",
"PASS",
"IU",
"KHZ",
"MHZ"
],
"type": "string",
"format": "enum"
},
"value": {
"type": "integer",
"format": "int32"
}
},
"title": "protos.procedure.Unit"
}
],
"description": "단위"
},
"count": {
"type": "integer",
"description": "시술 횟수",
"format": "int32"
},
"procedure": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"commonProcedureConfiguration": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
}
},
"title": "protos.procedure.CommonProcedureConfiguration"
},
"deleted": {
"type": "boolean"
},
"createDate": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "클라이언트 및 백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.Procedure"
}
],
"description": "시술 정보"
},
"medicineAndMachines": {
"type": "array",
"items": {
"required": [
"id",
"name"
],
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "기기/약물 ID"
},
"name": {
"type": "string",
"description": "기기/약물 이름"
}
},
"title": "protos.procedure.MedicineAndMachine"
},
"description": "기기 및 약물 목록"
},
"description": {
"type": "string",
"description": "옵션 설명"
},
"translsMap": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"translation": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"title": "protos.Transls"
},
"description": "# 다국어 지원대상 필드n - titlen - productTitlen - description"
},
"productIsEvent": {
"type": "boolean",
"description": "이벤트 상품 여부"
},
"medicalService": {
"allOf": [
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"translsMap": {
"type": "object",
"additionalProperties": {
"type": "object",
"properties": {
"translation": {
"type": "object",
"additionalProperties": {
"type": "string"
}
}
},
"title": "protos.Transls"
},
"description": "# 다국어 지원대상 필드n - title"
},
"status": {
"enum": [
"MedicalServiceStatus_UNKNOWN",
"DRAFT",
"PUBLISHED"
],
"type": "string",
"format": "enum"
},
"deleted": {
"type": "boolean"
},
"configuration": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"procedure": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.medical_service.MedicalServiceProcedure"
},
"machines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.medical_service.MedicalServiceMachine"
}
},
"medicines": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"searchPhoneticName": {
"type": "string",
"description": "백엔드 내부에서 검색을 위해 존재하는 필드"
}
},
"title": "protos.procedure.medical_service.MedicalServiceMedicine"
}
},
"unit": {
"type": "object",
"properties": {
"type": {
"enum": [
"UnitType_UNKNOWN",
"UNIT",
"CC",
"VIAL",
"PEN",
"STRING",
"SHOT",
"PAD",
"MINUTE",
"KJ",
"QUANTITY",
"DOT",
"J",
"MG",
"G",
"PULSE",
"BOTTLE",
"SYRINGE",
"PASS",
"IU",
"KHZ",
"MHZ"
],
"type": "string",
"format": "enum"
},
"value": {
"type": "integer",
"format": "int32"
}
},
"title": "protos.procedure.Unit"
},
"healthcareReimbursement": {
"enum": [
"HealthcareReimbursement_UNKNOWN",
"REIMBURSABLE",
"NON_REIMBURSABLE"
],
"type": "string",
"format": "enum"
},
"taxation": {
"enum": [
"Taxation_UNKNOWN",
"TAXABLE",
"TAX_FREE",
"MIXED"
],
"type": "string",
"format": "enum"
}
},
"title": "protos.procedure.medical_service.MedicalServiceConfiguration"
},
"draftedDateTimeUtc": {
"type": "string"
},
"updatedDateTimeUtc": {
"type": "string"
},
"priceAmount": {
"type": "object",
"properties": {
"value": {
"type": "integer",
"format": "int32"
},
"currency": {
"type": "string"
}
},
"title": "protos.procedure.PriceAmount"
},
"description": {
"type": "string"
},
"caution": {
"type": "string"
},
"recommendedInterval": {
"type": "integer",
"format": "int32"
},
"contributionConstant": {
"type": "integer",
"format": "int32"
},
"durationTime": {
"type": "number",
"format": "double"
}
},
"title": "protos.procedure.medical_service.MedicalService"
}
],
"description": "진료 항목"
}
},
"title": "protos.procedure.OpenSearchProductOptionSummariesContract"
}
}
},
"title": "protos.procedure.OpenSearchProductOptionSummariesQueryResponse"
}
}
}
}
}