맞춤 입찰 구현

디스플레이 및 맞춤 입찰을 관리하는 Video 360 API 있습니다. 맞춤 입찰 알고리즘을 만들고, 이를 업로드하고 개별 스크립트를 사용하고 특정 알고리즘을 리소스에 입찰로 할당 전략입니다.

이 페이지에서는 맞춤 입찰 알고리즘을 생성, 업데이트, 할당하는 방법을 설명합니다. 디스플레이 및 Video 360 API 각 섹션에서는 코드 샘플을 제공합니다.

맞춤 입찰 알고리즘 만들기

CustomBiddingAlgorithm 객체는 개별 사용자를 나타냅니다. 입찰 전략에 사용하기 위해 광고 항목에 할당할 수 있는 알고리즘입니다. 이 객체에 대한 세부정보와 같은 customBiddingAlgorithmType님, entityStatuscustomBiddingAlgorithmState: 다음을 만들 수 있습니다. 알고리즘의 하위 리소스로 사용할 CustomBiddingScript 객체 있습니다.

다음은 스크립트 기반 맞춤 입찰을 만드는 방법의 예입니다. 알고리즘:

Python

# Create a custom bidding algorithm object.
custom_bidding_algorithm_obj = {
    'advertiserId': advertiser-id,
    'displayName': display-name,
    'entityStatus': 'ENTITY_STATUS_ACTIVE',
    'customBiddingAlgorithmType': 'SCRIPT_BASED'
}

# Create the custom bidding algorithm.
response = service.customBiddingAlgorithms().create(
    body=algorithm_obj
).execute()

# Display the new custom bidding algorithm.
print(f'The following Custom Bidding Algorithm was created: {response}')

알고리즘 액세스 관리

맞춤 입찰 알고리즘은 파트너 또는 광고주가 소유할 수 있습니다. 알고리즘 파트너 및 모든 하위 파트너가 액세스하고 수정할 수 있습니다. sharedAdvertiserIds 필드에 광고주 목록을 표시합니다. 광고주가 소유한 알고리즘은 해당 광고주가 액세스하고 수정할 수 있습니다. 광고주와 해당 광고주 상위 파트너만 다른 광고주와 공유할 수 없습니다.

하나의 광고주에 대해서만 알고리즘을 사용하는 경우 advertiserId 필드를 사용하여 광고주를 소유자로 설정할 수 있습니다. 그렇지 않으면 광고주의 상위 파트너를 partnerId 필드로 대체되고, 광고주에게 sharedAdvertiserIds 필드

스크립트 업로드

맞춤 입찰 알고리즘을 만들었다면 이를 위한 스크립트를 만듭니다. 알고리즘이 사용됩니다. 사용자 제공을 사용하는 스크립트 기반 맞춤 입찰 알고리즘 스크립트: 노출의 가치를 평가합니다. 간단한 스크립트 샘플 및 고급 입력란디스플레이 및 Video 360 고객센터를 참고하세요.

다음 섹션에서는 신규 또는 업데이트된 스크립트를 맞춤 입찰 알고리즘

스크립트 리소스 위치 검색

먼저 맞춤 입찰에서 사용 가능한 리소스 위치를 가져옵니다. 알고리즘 리소스를 customBiddingAlgorithms.uploadScript 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다. 이 요청은 다음과 함께 CustomBiddingScriptRef 객체를 반환합니다. 리소스 이름. 다음과 같은 작업을 할 수 있습니다. 스크립트 파일을 업로드합니다. 리소스 이름입니다 그런 다음 맞춤 입찰 스크립트 참조 객체를 사용하여 스크립트 리소스를 만듭니다.

다음은 사용 가능한 리소스를 검색하는 방법을 보여주는 예입니다. 위치:

Python

# Retrieve a usable custom bidding script reference
# object.
custom_bidding_script_ref = service.customBiddingAlgorithms().uploadScript(
    customBiddingAlgorithmId=custom-bidding-algorithm-id,
    advertiserId=advertiser-id
).execute()

# Display the new custom bidding script reference object.
print('The following custom bidding script reference object was retrieved:'
      f'{custom_bidding_script_ref}')

스크립트 파일 업로드

사용 가능한 리소스 위치를 가져온 후 스크립트 파일을 해당 위치에 업로드합니다. 디스플레이 내 위치 및 동영상 360 시스템 media.upload 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다. 이 메서드는 쿼리 매개변수가 필요한 단순 업로드 uploadType=media입니다.

다음은 지정된 스크립트 파일을 업로드하는 방법의 예입니다. 가져온 맞춤 입찰 스크립트 참조 객체:

Python

# Create a media upload object.
media = MediaFileUpload(script-path)

# Create upload request.
upload_request = service.media().upload(
    resourceName=resource-name, media_body=media)

# Override response handler to expect null response.
upload_request.postproc = HttpRequest.null_postproc

# Upload script to resource location given in retrieved custom bidding
# script reference object.
upload_request.execute()

스크립트 객체 만들기

스크립트 파일이 업로드되면 customBiddingAlgorithms.scripts.create 메서드를 사용하여 지도 가장자리에 패딩을 추가할 수 있습니다. 이 요청에서 전달된 CustomBiddingScript 객체는 CustomBiddingScriptRef 객체를 할당된 script 필드의 값입니다. 이렇게 하면 업로드된 스크립트 파일을 새 스크립트 리소스로 대체합니다.

다음은 스크립트 파일을 만드는 방법의 예입니다.

Python

# Create a custom bidding script object.
script_obj = {
    'script': custom-bidding-script-ref
}

# Create the custom bidding script.
response = service.customBiddingAlgorithms().scripts().create(
    customBiddingAlgorithmId=custom-bidding-algorithm-id,
    advertiserId=advertiser-id,
    body=script_obj).execute()

# Display the new custom bidding script object.
print(f'The following custom bidding script was created: {response}')

맞춤 입찰 스크립트 리소스를 만들면 Display & Video 360은 확인하려고 합니다. 스크립트 객체의 state 필드 새 스크립트가 승인되면 맞춤 입찰 알고리즘이 스크립트를 사용하여 노출 가치를 산정하기 시작합니다. 이 즉시 발생하므로 업데이트를 실행하기 전에 새 스크립트 리소스를 생성합니다.

맞춤 입찰 알고리즘 할당

맞춤 입찰 알고리즘을 만든 후 허용된 스크립트를 업로드하고 필요한 요구사항이 있으면 입찰 알고리즘을 광고 항목이나 게재 신청서의 입찰 전략에 추가합니다.

맞춤 입찰 알고리즘을 사용하려면 지출 극대화 BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO을(를) 할당하여 실적 목표 입찰 전략 및 맞춤 입찰 알고리즘 IDperformanceGoalTypecustomBiddingAlgorithmId 필드에 각각 표시됩니다. 입찰 전략에 따라 다른 입찰 매개변수를 사용할 수 있습니다. 필요합니다.

다음은 광고 항목을 업데이트하는 방법의 예입니다. 입찰 전략을 사용할 수도 있습니다.

Python

# Create the new bid strategy object.
bidding_strategy = {
    'maximizeSpendAutoBid': {
        'performanceGoalType':
            'BIDDING_STRATEGY_PERFORMANCE_GOAL_TYPE_CUSTOM_ALGO',
        'customBiddingAlgorithmId': custom-bidding-algorithm-id
    }
}

# Create a line item object assigning the new bid strategy.
line_item_obj = {'bidStrategy': bidding_strategy}

# Update the line item with a new bid strategy.
response = service.advertisers().lineItems().patch(
    advertiserId=advertiser-id,
    lineItemId=line-item-id,
    updateMask='bidStrategy',
    body=line_item_obj).execute()

# Display the line item's new bid strategy
print(f'Line Item {response["name"]} is now using the following bid'
     f' strategy: {response["bidStrategy"]}.')