配信ラインの管理
1 つ以上の配信ラインを作成してインベントリを購入し、プロモーション用の広告キャンペーンの広告を配信するには、Microsoft Store プロモーション API の以下のメソッドを使います。 配信ラインごとに、ターゲットと入札額を設定できます。また、予算と使用したいクリエイティブへのリンクを設定することで、支払い額を決定できます。
配信ラインと広告キャンペーン、ターゲット プロファイル、クリエイティブとの関係について詳しくは、「Microsoft Store サービスを使用した広告キャンペーンの実行」をご覧ください。
注 この API を使用して広告キャンペーンの配信ラインを正しく作成するには、事前に、パートナー センターの [広告キャンペーン] ページを使用して、有料の広告キャンペーンを 1 つ作成する必要があります。また、このページで支払い方法を少なくとも 1 つ追加する必要があります。 これを行うと、この API を使用して、広告キャンペーンの請求可能な配信ラインを正しく作成することができます。 API を使用して作成した広告キャンペーンでは、パートナー センターの [広告キャンペーン] ページで選んだ既定の支払い方法に対して自動的に請求が行われます。
前提条件
これらのメソッドを使うには、最初に次の作業を行う必要があります。
Microsoft Store プロモーション API に関するすべての前提条件を満たします (前提条件がまだ満たされていない場合)。
注意
前提条件の一部として、パートナー センターで有料の広告キャンペーンを少なくとも 1 つ作成する必要があります。また、パートナー センターで、広告キャンペーンの支払い方法を少なくとも 1 つ追加する必要があります。 API を使用して作成した配信ラインでは、パートナー センターの [広告キャンペーン] ページで選んだ既定の支払い方法に対して自動的に請求が行われます。
これらのメソッドの要求ヘッダーで使う Azure AD アクセス トークンを取得します。 アクセス トークンを取得した後、アクセス トークンを使用できるのは、その有効期限が切れるまでの 60 分間です。 トークンの有効期限が切れたら新しいトークンを取得できます。
要求
これらのメソッドでは、次の URL が使用されます。
メソッドの型 | 要求 URI | 説明 |
---|---|---|
POST | https://manage.devcenter.microsoft.com/v1.0/my/promotion/line |
新しい配信ラインを作成します。 |
PUT | https://manage.devcenter.microsoft.com/v1.0/my/promotion/line/{lineId} |
lineId により指定された配信ラインを編集します。 |
GET | https://manage.devcenter.microsoft.com/v1.0/my/promotion/line/{lineId} |
lineId により指定された配信ラインを取得します。 |
ヘッダー
ヘッダー | 型 | 説明 |
---|---|---|
承認 | string | 必須。 Bearer<トークン> という形式の Azure AD アクセス トークン。 |
追跡 ID | GUID | 省略可能。 呼び出しフローを追跡する ID。 |
要求本文
POST メソッドと PUT メソッドには、配信ライン オブジェクトの必須フィールドと設定または変更する追加フィールドを持つ JSON 要求本文が必要です。
要求例
次の例は、POST メソッドを呼び出して配信ラインを作成する方法を示しています。
POST https://manage.devcenter.microsoft.com/v1.0/my/promotion/line HTTP/1.1
Authorization: Bearer <your access token>
{
"name": "Contoso App Campaign - Paid Line",
"configuredStatus": "Active",
"startDateTime": "2017-01-19T12:09:34Z",
"endDateTime": "2017-01-31T23:59:59Z",
"bidAmount": 0.4,
"dailyBudget": 20,
"targetProfileId": {
"id": 310021746
},
"creatives": [
{
"id": 106851
}
],
"campaignId": 31043481,
"minMinutesPerImp ": 1
}
次の例は、GET メソッドを呼び出して配信ラインを取得する方法を示しています。
GET https://manage.devcenter.microsoft.com/v1.0/my/promotion/line/31019990 HTTP/1.1
Authorization: Bearer <your access token>
Response
これらのメソッドは、作成、更新、または取得された配信ラインに関する情報を含む配信ライン オブジェクトを持つ JSON 応答本文を返します。 これらのメソッドの応答本文を次の例に示します。
{
"Data": {
"id": 31043476,
"name": "Contoso App Campaign - Paid Line",
"configuredStatus": "Active",
"effectiveStatus": "Active",
"effectiveStatusReasons": [
"{\"ValidationStatusReasons\":null}"
],
"startDateTime": "2017-01-19T12:09:34Z",
"endDateTime": "2017-01-31T23:59:59Z",
"createdDateTime": "2017-01-17T10:28:34Z",
"bidType": "CPM",
"bidAmount": 0.4,
"dailyBudget": 20,
"targetProfileId": {
"id": 310021746
},
"creatives": [
{
"id": 106126
}
],
"campaignId": 31043481,
"minMinutesPerImp ": 1,
"pacingType ": "SpendEvenly",
"currencyId ": 732
}
}
配信ライン オブジェクト
これらのメソッドの要求本文と応答本文には、次のフィールドが含まれています。 この表は、読み取り専用のフィールド (つまり、PUT メソッドで変更できない) と POST メソッドまたは PUT メソッドの要求本文で必須のフィールドを示しています。
フィールド | タイプ | 説明 | 読み取り専用 | Default | POST/PUT に必須かどうか |
---|---|---|---|---|---|
ID | 整数 (integer) | 配信ラインの ID です。 | はい | いいえ | |
name | string | 配信ラインの名前です。 | No | POST | |
configuredStatus | string | 開発者が指定した配信ラインの状態を指定する次のいずれかの値。
|
No | POST | |
effectiveStatus | string | システム検証に基づいて配信ラインの有効な状態を指定する次のいずれかの値。
|
はい | いいえ | |
effectiveStatusReasons | 配列 | 配信ラインの有効なステータスの理由を指定する次の値のうち 1 つ以上。
|
はい | いいえ | |
startDatetime | string | 配信ラインの開始日時です (ISO 8601 形式)。 日時が過去の場合、この値を変更できません。 | No | POST、PUT | |
endDatetime | string | 配信ラインの終了日時です (ISO 8601 形式)。 日時が過去の場合、この値を変更できません。 | No | POST、PUT | |
createdDatetime | string | 配信ラインが作成された日時 (ISO 8601 形式)。 | はい | いいえ | |
bidType | string | 配信ラインの入札の種類を指定する値です。 現時点では、サポートされている唯一の値は CPM です。 | No | CPM | No |
bidAmount | decimal | 広告要求の入札に使う入札額です。 | No | 対象市場に基づく平均 CPM 値です (この値は定期的に変更されます)。 | No |
dailyBudget | decimal | 配信ラインの 1 日あたりの予算です。 dailyBudget または lifetimeBudget を設定する必要があります。 | No | POST、PUT (lifetimeBudget が設定されていない場合) | |
lifetimeBudget | decimal | 配信ラインの全体予算です。 lifetimeBudget* または dailyBudget を設定する必要があります。 | No | POST、PUT (dailyBudget が設定されていない場合) | |
targetingProfileId | object | この配信ラインを対象にするユーザー、地域、およびインベントリの種類を指定するターゲット プロファイルを識別するオブジェクトです。 このオブジェクトは、ターゲット プロファイルの ID を指定する単一の id フィールドで構成されます。 | いいえ | いいえ | |
creatives | array | 配信ラインに関連づけられたクリエイティブを表す 1 つ以上のオブジェクトです。 このフィールド内の各オブジェクトは、クリエイティブの ID を指定する単一の id フィールドで構成されます。 | いいえ | No | |
campaignId | 整数 (integer) | 親広告キャンペーンの ID です。 | いいえ | いいえ | |
minMinutesPerImp | 整数 (integer) | この配信ラインから同じユーザーに表示される 2 つのインプレッション間の間隔 (分単位) を指定します。 | No | 4000 | No |
pacingType | string | ペーシングの種類を指定する次のいずれかの値。
|
No | SpendEvenly | No |
currencyId | 整数 (integer) | キャンペーンの通貨の ID です。 | はい | 開発者アカウントの通貨 (POST または PUT 呼び出しではこのフィールドを指定する必要はありません) | No |