Glowb Dev Docs
SaaS APIAgency API

PATCH /agency/me/clients/{id}

하위 기업 설정 변경 (가격 노출·알림 토글)

하위 기업 설정 변경

하위 기업(고객사)의 이름·이메일·계정 상태와 가격 노출 토글, 알림 라우팅 토글을 변경합니다. 에이전시 운영자가 자기 소속 고객사에 대해 호출하는 경로와, 글로우브 운영자(어드민)가 특정 에이전시의 고객사에 대해 호출하는 경로 두 가지가 있습니다.

항목에이전시 셀프서비스어드민
메서드PATCHPATCH
경로/agency/me/clients/{id} 또는 /ai/agency/me/clients/{id}/admin/agency/{agencyId}/clients/{clientId} 또는 /ai/admin/agency/{agencyId}/clients/{clientId}
인증필요필요
권한ROLE_AGENCYROLE_ADMIN
대상 범위호출자 본인 에이전시 소속 고객사만경로의 agencyId 소속 고객사만

두 경로 모두 요청 바디와 응답 형식이 같습니다. 대상이 AGENCY_CLIENT가 아니거나 다른 에이전시 소속이면 거부됩니다.

요청

PATCH /agency/me/clients/client_brand_001 HTTP/1.1
Host: api.glowb.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
Content-Type: application/json

{
  "showPrice": false
}
PATCH /admin/agency/demo/clients/client_brand_001 HTTP/1.1
Host: api.glowb.com
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...
Content-Type: application/json

{
  "showPrice": false
}
curl -X PATCH "https://api.glowb.com/agency/me/clients/client_brand_001" \
  -H "Authorization: Bearer {access_token}" \
  -H "Content-Type: application/json" \
  -d '{
    "showPrice": false
  }'
const response = await fetch('/agency/me/clients/client_brand_001', {
  method: 'PATCH',
  headers: {
    'Authorization': `Bearer ${accessToken}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({ showPrice: false }),
});

const client = await response.json();

Request Body

모든 필드가 선택값입니다. 생략하거나 null로 보내면 기존 값을 그대로 둡니다(부분 수정).

Prop

Type

응답

성공 응답 (200 OK)

{
  "id": "client_brand_001",
  "name": "고객사A",
  "email": "client@example.com",
  "status": "active",
  "creditBalance": 0,
  "createdAt": "2026-08-19T10:00:00",
  "notifyAdvertiser": true,
  "notifyAgency": false,
  "showPrice": false
}

Response Body

Prop

Type

백엔드는 showPrice 값을 저장·반환만 합니다. 이 값에 따라 실제로 어떤 금액을 가릴지는 프론트에서 판단합니다.

에러 응답

상태 코드설명
401인증 실패
403다른 에이전시 소속 고객사를 수정하려는 경우(셀프서비스 경로)
400고객사를 찾을 수 없거나 AGENCY_CLIENT가 아닌 경우

현재값 조회

토글 값은 설정하는 쪽(에이전시·어드민)과 적용받는 쪽(고객사 본인) 양쪽에서 읽을 수 있습니다.

메서드경로읽는 주체필드 위치
GET/agency/me/clients에이전시ClientDto.showPrice (고객사별)
GET/admin/agency/{agencyId}/clients어드민ClientDto.showPrice (고객사별)
GET/ai/business/info고객사 본인showPrice
GET/ai/progress-table/item/{campaignNo}고객사 본인showPrice

/ai/business/info 와 /ai/progress-table/item/{campaignNo} 의 showPrice 는 호출자 기준입니다. 같은 캠페인이라도 에이전시나 어드민이 열면 true 로 내려갑니다 — 가격을 가리는 대상은 고객사이지 캠페인이 아니기 때문입니다. 일반(비에이전시) 기업도 항상 true 입니다.

API 테스트

On this page