서버 간 입찰 통합

내부 미디에이션은 공개적으로 제공되지 않습니다.

현재 Audience Network를 사용한 내부 입찰은 비공개 베타이고 공개적으로 제공되지 않습니다. 변경 사항이 있을 경우 추가적인 업데이트를 제공하겠습니다.

또는 Facebook과 파트너십을 맺은 미디에이션 플랫폼 중 하나를 통해 Audience Network 입찰에 액세스할 수 있습니다.

Facebook Audience Network는 직접적인 클라이언트 통합과 서버 간 통합을 모두 지원하는 공개 실시간 입찰(ORTB) 입찰자가 있습니다. 이 가이드에서는 경매 서버에서 입찰을 통합하는 방법을 설명합니다.

서버 간 통합에서 경매 서버는 Facebook Audience Network 입찰 엔드포인트와 모든 다른 수요 소스를 호출해 입찰 응답을 받습니다. 그러면 경매 서버가 경매를 실행하고 낙찰되는 입찰가를 선택합니다. 이 경매 서버는 직접 구축한 경매 로직을 실행하는 자체 서버나 Audience Network의 앱 입찰과 통합된 제삼자 서버가 될 수도 있습니다. 서버의 리소스와 이용 가능한 네트워크를 활용해 수요 소스의 입찰 엔드포인트를 호출할 수 있습니다. 또한 클라이언트 업데이트를 하지 않아도 이러한 엔드포인트 통합을 변경할 수 있습니다.

필수 조건

시작하기 전에 Audience Network 입찰 개요입찰 통합 모범 사례를 읽으세요.

Android

iOS

준비

자체 서버 간 입찰을 준비하려면 다음의 단계가 필요합니다.

비즈니스 등록

각 퍼블리셔는 Audience Network 비즈니스 ID를 생성해야 합니다. Facebook에서는 이 ID를 입찰 허용 리스트에 추가합니다. 이 비즈니스 ID 아래에 입찰 엔드포인트를 활용하는 속성을 여러 개 생성할 수 있습니다.

  • Facebook Audience Network 문서로 이동해서 지금 시작 버튼을 클릭하여 새 비즈니스 ID를 생성하거나 기존 비즈니스 ID를 만들 수 있습니다.
  • 속성을 동일한 비즈니스 ID 아래에 생성할 수 있지만 등록이 필요합니다. 자세한 내용은 수익 관리자를 참조하세요.
  • Facebook에 비즈니스 ID(퍼블리셔 ID)를 알려주세요.
  • 비즈니스/앱에 대한 사용자 액세스를 관리할 수 있습니다.

Facebook 보안 앱 만들기

모든 서버측 자체 퍼블리셔는 https://developers.facebook.com에서 Facebook 보안 앱을 만들어야 합니다. 앱이 생성되면 보안 앱의 앱 ID와 앱 시크릿 코드를 가져와야 합니다. 앱 시크릿 코드는 모든 요청에서 요청 발송자를 인증하기 위한 인증 토큰을 생성하는 데 사용됩니다.

올바른 해시(아래에 명시)를 사용하는지 확인하세요. 해시가 0으로 시작할 경우 손실되지 않습니다.

보안 앱을 만들고 비즈니스와 링크하는 방법은 다음과 같습니다.

  1. https://developers.facebook.com에 로그인합니다.
  2. 내 앱 메뉴에서 앱 만들기를 클릭합니다.
  3. 비즈니스를 선택하고 다음을 클릭합니다.
  4. 앱에 접두사 'AN_SECURITY_APP'을 붙인 이름을 입력한 다음, 앱 ID 만들기를 클릭합니다.
  5. 왼쪽 메뉴에서 설정 → 기본을 선택합니다.
  6. 앱 시크릿 코드 필드에서 표시를 클릭합니다. 앱 ID와 앱 시크릿 코드를 메모합니다.
  7. https://business.facebook.com으로 가서 비즈니스를 선택합니다.
  8. 왼쪽 메뉴에서 비즈니스 설정을 클릭합니다.
  9. 비즈니스 설정 페이지의 왼쪽 메뉴에서 계정 → 앱을 선택합니다.
  10. 창에서 추가 → 앱 추가를 클릭합니다.
  11. 보안 앱의 앱 ID를 입력한 다음, 앱 추가를 클릭합니다. AN_SECURITY_APP이 비즈니스 아래에 있어야 합니다.

HMAC-SHA256 알고리즘을 사용하여 요청별 authentication_id가 생성됩니다. 이 알고리즘은 다음의 입력값을 사용합니다.

  • 요청 ID는 메시지로 사용
  • 앱 시크릿 코드는 키로 사용
      authentication_id = HMAC_SHA256(request_id, app_secret)
    

그러면 생성된 ID가 authentication_id 필드에서 최상위 OpenRTB 입찰 요청 확장 프로그램에 추가됩니다. 예를 들어 요청 ID가 '9r90wurjqw'이고 앱 시크릿 코드가 '12345asdfg'일 경우 다음과 같이 authentication_id가 생성됩니다.

      authentication_id = HMAC_SHA256(9r90wurjqw, 12345asdfg) = 39bbe40bc68899a9356085ca8c81
    

이 토큰은 보안 앱의 앱 ID와 함께 모든 요청에 포함됩니다.

      {
      "id": "9r90wurjqw",
      ...
      "ext": {
      "authentication_id": "39bbe40bc68899a9356085ca8c81d3021cfa124f2a2b3c68c88f95fb4cde40a4",
      "security_app_id": "AN_SECURITY_APP_MY_SECURITY_APP_ID" 
      ...
      }
      }
    

ID 토큰을 입찰자에게 전달

입찰자는 ORTB 요청의 user.buyeruid 필드에서 ID 토큰을 받을 것을 예상합니다. 이 토큰은 플랫폼에 따라 다른 방식으로 생성됩니다.

Android

백그라운드 대화창에서 Android Audience Network SDK의 com.facebook.ads.BidderTokenProvider.getBidderToken()을 호출합니다. 입찰 요청마다 토큰을 요청해야 합니다. 또한 device.ifa 필드의 IDFA를 AdvertisingIdClient.getAdvertisingIdInfo(context).getId()에 전달합니다.

iOS

iOS Audience Network SDK에서 [FBAdSettings bidderToken]을 호출합니다. 입찰 요청마다 토큰을 요청해야 합니다. 또한 device.ifa 필드의 IDFA를 [[[ASIdentifierManager sharedManager] advertisingIdentifier] UUIDString]과 함께 전달합니다.