> ## Documentation Index
> Fetch the complete documentation index at: https://docs.aiderx.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Update Campaigns

> ## 캠페인 등록

캠페인 정보를 캐시에 저장합니다. 광고 선택 및 중재 로직에서 사용됩니다.



## OpenAPI

````yaml /openapi/decision.api.ko-0.2.2.json post /api/cache/campaigns
openapi: 3.1.0
info:
  contact:
    email: a2support@aiderx.io
    name: A2 Support
    url: https://aiderx.io
  description: |-
    ### 소개
    이 문서는 Decision API의 Ad Serving API 및 Recommendation API 구성 요소를 다룹니다.
  title: Decision APIs
  version: v0.2.2
  x-logo:
    altText: A2 Logo
    url: >-
      https://cdn.prod.website-files.com/668de9e1f25ab5675d87758d/6690cf1bdce95af5e3522c25_a2_logo_800_250.png
servers: []
security: []
tags:
  - description: |
      광고 전환, 노출, 클릭 로그를 수신하는 API — 광고 성능 추적 및 최적화에 필수적입니다.
    name: Ad Serving
  - description: >-
      광고 서빙 서버 캐시 관리 API


      ### **중요**

      Serving 서버의 광고 또는 추천 관련 캐시 데이터를 직접 조작하는 경우, Ad Manager를 통해 광고 또는 추천 데이터를
      **동시에 수정하지 않을 것을 강력히 권장합니다.**

      Serving 서버에서 수행된 변경 사항은 Ad Manager에 반영되지 않으며,

      이는 **데이터 무결성**을 위협할 수 있습니다.
    name: Cache Management
  - description: 광고 서빙 서버 설정 API
    name: Configuration
  - description: |
      광고 전환, 노출, 클릭 로그를 수신하는 API — 광고 성능 추적 및 최적화에 필수적입니다.
    name: Ad Serving
paths:
  /api/cache/campaigns:
    post:
      tags:
        - Cache Management
      summary: Update Campaigns
      description: |-
        ## 캠페인 등록

        캠페인 정보를 캐시에 저장합니다. 광고 선택 및 중재 로직에서 사용됩니다.
      requestBody:
        content:
          application/json:
            schema:
              items:
                $ref: '#/components/schemas/Campaign'
              type: array
        required: true
      responses:
        '204':
          description: 성공
        '404':
          description: 캠페인을 찾을 수 없습니다.
        '500':
          description: 내부 서버 오류.
      security:
        - '': []
components:
  schemas:
    Campaign:
      properties:
        audience_segments:
          anyOf:
            - $ref: '#/components/schemas/CampaignAudienceSegment'
            - type: 'null'
          description: Optional audience segments associated with the campaign
        bid_strategy:
          default: highest_volume
          description: 'Bid strategy for the campaign (default: "highest_volume")'
          type: string
        budget:
          description: Total budget of the campaign
          format: double
          type: number
        crid:
          description: Optional creative ID associated with the campaign
          type:
            - string
            - 'null'
        daily_budget:
          description: Optional daily budget of the campaign
          format: double
          type:
            - number
            - 'null'
        end_date:
          description: End date of the campaign (UTC)
          format: date-time
          type: string
        goal:
          description: Goal of the campaign
          type: string
        id:
          description: ID of the campaign (uuid4)
          type: string
        max_bid:
          default: 0
          description: 'Maximum bid amount for the campaign (default: 0.0)'
          format: double
          type: number
        min_daily_imp:
          default: 1000
          description: 'Minimum daily impressions for the campaign (default: 1000.0)'
          format: double
          type: number
        start_date:
          description: Start date of the campaign (UTC)
          format: date-time
          type: string
        status:
          description: Status of the campaign
          type: string
        sub_goal:
          default: maximize_volume
          description: 'Sub-goal of the campaign (default: "maximize_volume")'
          type: string
        tagid:
          description: Optional tag ID associated with the campaign
          type:
            - string
            - 'null'
        target_cpa:
          description: Target cost per acquisition (CPA) for the campaign
          format: double
          type: number
        target_cpm:
          default: 0
          description: >-
            Target cost per thousand impressions (CPM) for the campaign
            (default: 0.0)
          format: double
          type: number
        target_volume:
          default: 0
          description: 'Target volume for the campaign (default: 0.0)'
          format: double
          type: number
      required:
        - budget
        - end_date
        - goal
        - id
        - start_date
        - status
        - target_cpa
      type: object
    CampaignAudienceSegment:
      properties:
        method:
          description: >-
            Matching method for audience segments (e.g., "OR", "AND").
            Determines how multiple segments in the list are evaluated.
          type: string
        segment_list:
          description: List of audience segment conditions for targeting.
          items:
            $ref: '#/components/schemas/AudienceSegmentInfo'
          type: array
      required:
        - method
        - segment_list
      type: object
    AudienceSegmentInfo:
      properties:
        id:
          description: Unique identifier for the audience segment.
          type: string
        name:
          description: Human-readable name for the audience segment.
          type: string
      required:
        - id
        - name
      type: object

````