Loading
Prepare for Email to Become the Default Login ExperienceRead More
Ongoing maintenance for Salesforce HelpRead More
Media Cloud
Customize Linear Media Plans with Ad Availability View Configuration Records

Customize Linear Media Plans with Ad Availability View Configuration Records

Media planners and sales reps create media plans to manage the complete quoting process for linear media campaigns of advertisers. Admins can customize various media plan aspects to tailor media plans based on the company's unique quoting process requirements.

Available in: Lightning Experience
Available in: Enterprise, Performance, and Unlimited editions with Media Cloud- Advanced

Customize Media Plan Window

Create an Ad Availability View Configuration record named Modal Metadata with the Modal configuration type and the mediaplanmodal configuration key to decide the list of sections and fields that are shown on the Create Media Plan modal. Here are some examples of the possible customizations:


{
"modalData": {
  "content": [
    {
      "section": {
        "label": "Campaign Details",
        "isVisible": true,
        "key": "Campaign-Details",
        "sequence": 1,
        "fields": [
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "CampaignStartDate",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 3,
            "label": "Campaign Start Date"
          },
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "CampaignEndDate",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 4,
            "label": "Campaign End Date"
          },
          {
            "entityName": "Opportunity",
            "fieldApiName": "Name",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 1,
            "label": "Name"
          },
          {
            "entityName": "Opportunity",
            "fieldApiName": "Amount",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 2,
            "label": "Campaign Budget"
          }
        ]
      }
    },
    {
      "section": {
        "label": "Media Plan Details",
        "isVisible": true,
        "key": "Media-Plan-Details",
        "sequence": 2,
        "fields": [
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "AgencyId",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 2,
            "label": "Agency"
          },
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "DealType",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 3,
            "label": "Campaign Type"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "Budget",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 6,
            "label": "Budget"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "StartDate",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 7,
            "label": "Start Date"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "EndDate",
            "isReadOnly": false,
            "isRequired": false,
            "sequence": 9,
            "label": "End Date"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "MediaType",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 9,
            "label": "Media Type"
          },
          {
            "entityName": "Quote",
            "fieldApiName": "Name",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 5,
            "label": "Plan Name"
          },
          {
            "entityName": "Quote",
            "fieldApiName": "Description",
            "isReadOnly": false,
            "isRequired": false,
            "sequence": 10,
            "label": "Description"
          }
        ]
      }
    }
  ],
  "footer": {
    "buttons": []
  }
}
}

 
 
 	
{
"modalData": {
  "content": [
    {
      "section": {
        "label": "Campaign Details",
        "isVisible": true,
        "key": "Campaign-Details",
        "sequence": 1,
        "fields": [
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "CampaignStartDate",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 3,
            "label": "Campaign Start Date"
          },
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "CampaignEndDate",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 4,
            "label": "Campaign End Date"
          },
          {
            "entityName": "Opportunity",
            "fieldApiName": "Name",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 1,
            "label": "Name"
          },
          {
            "entityName": "Opportunity",
            "fieldApiName": "Amount",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 2,
            "label": "Campaign Budget"
          }
        ]
      }
    },
    {
      "section": {
        "label": "Media Plan Details",
        "isVisible": true,
        "key": "Media-Plan-Details",
        "sequence": 2,
        "fields": [
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "AgencyId",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 2,
            "label": "Agency"
          },
          {
            "entityName": "AdOpportunity",
            "fieldApiName": "DealType",
            "isReadOnly": true,
            "isRequired": false,
            "sequence": 3,
            "label": "Campaign Type"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "Budget",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 6,
            "label": "Budget"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "StartDate",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 7,
            "label": "Start Date"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "EndDate",
            "isReadOnly": false,
            "isRequired": false,
            "sequence": 9,
            "label": "End Date"
          },
          {
            "entityName": "AdQuote",
            "fieldApiName": "MediaType",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 9,
            "label": "Media Type"
          },
          {
            "entityName": "Quote",
            "fieldApiName": "Name",
            "isReadOnly": false,
            "isRequired": true,
            "sequence": 5,
            "label": "Plan Name"
          },
          {
            "entityName": "Quote",
            "fieldApiName": "Description",
            "isReadOnly": false,
            "isRequired": false,
            "sequence": 10,
            "label": "Description"
          }
        ]
      }
    }
  ],
  "footer": {
    "buttons": []
  }
}
}

Configure Linear Media Categories

Configure the categories for the linear media products, with the media-types configuration key, as shown in this sample snippet:

Configuration-Key : media-types 
Usage Type : 
Configuration-value : { 
"Linear": ["TV","Linear","Linear TV","Radio","Local TV"],
"Digital": ["Digital"]
}
Important
Important Make sure that "Linear" and "Digital" remain unchanged in your configuration snippet.

Configure Line Items Side Panel

Configure the side panel for linear media type, with the sidepanel configuration key, as shown in this sample snippet:

Configuration-Key :  sidepanel 
Usage Type : Pricing
Mediatype : Linear
Configuration-value : {
    "tabsMetadata": [
                        {
                        "label": "Line Item Details",
                        "isVisible": true,
                        "flowApiName": null,
                        "key": "lineitemdetails",
                        "isSelected": true
                        },
                        {
                        "label": "Targeting",
                        "isVisible": true,
                        "flowApiName": null,
                        "key": "targeting",
                        "isSelected": false
                        },
                        {
                        "label": "Attribute",
                        "isVisible": true,
                        "key": "attributes",
                        "flowApiName": null,
                        "isSelected": false
                        },
                        {
                        "label": "Bundle Items",
                        "isVisible": true,
                        "key": "bundles",
                        "flowApiName": null,
                        "isSelected": false
                        }
    ]

Configure the line item details and fields for the side panel with the sidepanel-lineitemdetails configuration key, as shown in this sample snippet:

Configuration-Key :  sidepanel-lineitemdetails 
Usage Type : Pricing
Mediatype : Linear
Configuration-value : {
    "tabsData": {
    "content": [
    {
    "section": {
    "label": "Details",
    "isVisible": true,
    "key": "Product",
    "isCollapsed": true,
    "fields": [
                {
                "entityName": "QuoteLineItem",
                "fieldApiName": "LineNumber",
                "isReadOnly": true,
                "datatype": "String",
                "label": "Line Number"
                },
                {
                "entityName": "QuoteLineItem",
                "fieldApiName": "Product2.Family",
                "isReadOnly": true,
                "datatype": "String",
                "label": "Product Category"
                },
                {
                "entityName": "QuoteLineItem",
                "fieldApiName": "Product2.Name",
                "isReadOnly": true,
                "datatype": "String",
                "label": "Product Name"
                },
                {
                "entityName": "QuoteLineItem",
                "fieldApiName": "Description",
                "isReadOnly": false,
                "datatype": "String",
                "label": "Description",
                "mappedContextAttributeName": "SalesTrxnItemDescription"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "AdRequestedStartDate",
                "isReadOnly": false,
                "isRequired": true,
                "datatype": "DateTime",
                "label": "Start Date",
                "mappedContextAttributeName": "AdRequestedStartDate"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "AdRequestedEndDate",
                "isReadOnly": false,
                "isRequired": false,
                "datatype": "DateTime",
                "label": "End Date",
                "mappedContextAttributeName": "AdRequestedEndDate"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "AvailableAdServerUnits",
                "isReadOnly": true,
                "datatype": "Double",
                "label": "Available Spots"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "TotalAdServerUnits",
                "isReadOnly": true,
                "datatype": "Double",
                "label": "Total Spots"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "MaxDuration",
                "isReadOnly": false,
                "datatype": "Double",
                "mappedContextAttributeName" : "MaxDuration"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "Skippable",
                "isReadOnly": false,
                "datatype": "Picklist",
                "mappedContextAttributeName" : "Skippable"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "PrimaryDemographicCode.Name",
                "isReadOnly": true,
                "datatype": "String",
                "label" : "Primary Demo Code"
                },
                {
                "entityName": "AdQuoteLine",
                "fieldApiName": "SecondaryDemographicCode.Name",
                "isReadOnly": true,
                "datatype": "String",
                "label" : "Secondary Demo Code"
                }    ]
    }
    },
    {
        "section": {
            "label": "AdSpace",
            "isVisible": true,
            "key": "AdSpace",
            "isCollapsed": true,
            "displayCard":true,
            "fields": [
                        {
                        "entityName": "AdQuoteLine",
                        "fieldApiName": "BreakPlacement",
                        "isReadOnly": false,
                        "datatype": "Picklist",
                        "label": "Position In Break"
                        }
            ]
        }
    },
    {
    "section": {
            "label": "Price",
            "isVisible": true,
            "key": "Pricing",
            "isCollapsed": false,
            "fields": [
                        {
                        "entityName": "QuoteLineItem",
                        "fieldApiName": "UnitPrice",
                        "isReadOnly": true,
                        "isRequired": false,
                        "datatype": "Currency",
                        "label": "Base Rate"
                        },
                        {
                        "entityName": "AdQuoteLine",
                        "fieldApiName": "RevisedPrice",
                        "isReadOnly": false,
                        "isRequired": false,
                        "datatype": "Currency",
                        "label": "Revised Price",
                        "mappedContextAttributeName": "RevisedPrice"
                        },
                        {
                        "entityName": "AdQuoteLine",
                        "fieldApiName": "Budget",
                        "isReadOnly": true,
                        "isRequired": false,
                        "datatype": "Currency",
                        "label": "Calculated Budget",
                        "mappedContextAttributeName": "Budget"
                        },
                        {
                        "entityName": "QuoteLineItem",
                        "fieldApiName": "Quantity",
                        "isReadOnly": false,
                        "isRequired": false,
                        "datatype": "Double",
                        "label": "Units",
                        "mappedContextAttributeName": "Quantity"
                        },
                        {
                        "entityName": "AdQuoteLine",
                        "fieldApiName": "AdServerFees",
                        "isReadOnly": false,
                        "isRequired": false,
                        "datatype": "Currency",
                        "label": "Ad Server Fees",
                        "mappedContextAttributeName": "AdServerFees"
                        },
                        {
                        "entityName": "QuoteLineItem",
                        "fieldApiName": "DiscountAmount",
                        "isReadOnly": false,
                        "isRequired": false,
                        "datatype": "Currency",
                        "label": "Discount Amount",
                        "mappedContextAttributeName": "DiscountAmount"
                        },
                        {
                        "entityName": "QuoteLineItem",
                        "fieldApiName": "NetUnitPrice",
                        "isReadOnly": true,
                        "isRequired": true,
                        "datatype": "Currency",
                        "label": "Offer Price"
                        },
                        {
                        "entityName": "AdQuoteLine",
                        "fieldApiName": "SponsorshipType",
                        "isReadOnly": false,
                        "isRequired": false,
                        "datatype": "Picklist",
                        "label": "Booking Type",
                        "mappedContextAttributeName": "SponsorshipType"
                        }
                ]
               }
            }
        ]
    }
}

Configure Ad Space Section Fields

Configure the ad space section with the linear-media-ad-space-viewconfiguration key:

{
 "label": "AdSpaceSpec",
 "isVisible": true,
 "key": "AdSpace",
 "fields": [
 {
 "objectName": "AdSpaceSpecification",
 "fieldDeveloperName": "Name",
 "isReadOnly": true,
 "isRequired": false,
 "datatype": "String",
 "label": "Schedule"
 },
 {
 "objectName": "AdSpaceSpecification",
 "fieldDeveloperName": "Type",
 "isReadOnly": true,
 "isRequired": false,
 "datatype": "Picklist",
 "label": "Ad Space Type"
 },
 {
 "objectName": "AdSpaceSpecification",
 "fieldDeveloperName": "MediaContentTitle.Name",
 "isReadOnly": true,
 "isRequired": false,
 "datatype": "String",
 "label": "Media Content"
 }
 ]
}
 
Loading
Salesforce Help | Article