根据您在定位规范中提供的一些条件来定位广告组。大部分定位都是预先定义的值,例如国家“日本”或城市“东京”。
使用市场营销 API 的定位搜索功能找出有效的值:https://graph.facebook.com/{API_VERSION}/search
。您必须以 UTF8
格式提供查询字符串。
如要验证定位对象的当前和/或计划状态,请使用 targeting_option_list
参数:
curl -G \ -d 'targeting_option_list=[<TARGETING_OPTION_ ID>,<TARGETING_OPTION_ID>]' -d 'type=targetingoptionstatus' https://graph.facebook.com/<API_VERSION>/search
响应:
{"data":[{"id":"<TARGETING_OPTION_ ID>","current_status":"NON-DELIVERABLE"},{"id":"<TARGETING_OPTION_ID>","current_status":"NON-DELIVERABLE","future_plan":[{"key":"2018-05-10T00:00:00+0000","value":"DEPRECATING"}]}]
字段 | 值 |
---|---|
|
|
| 时间戳与状态的映射。返回日期和计划状态的映射,其中的值与 |
在 type=adgeolocation
,按国家/地区、国家/地区组、城市、省份/自治区/直辖市、邮编及其他地理区域搜索目标。您可以使用 type=adgeolocation
指定可选参数。如要找出美国的国家/地区代码:
curl -G \ -d 'location_types=["country"]' \ -d 'type=adgeolocation' \ -d 'q=un' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "key": "GB", "name": "United Kingdom", "type": "country", "supports_city": false, "supports_region": false }, { "key": "AE", "name": "United Arab Emirates", "type": "country", "supports_city": false, "supports_region": false }, { "key": "UM", "name": "United States Minor Outlying Islands", "type": "country", "supports_city": false, "supports_region": false } ] }
key
是固定的数字,在每个类别都不会重复,例如国家/地区或者国家/地区组。其他字段(包括 name
)均可能会有更改。使用 key
来定义定位规范。
在响应中:
supports_region
为 true
,则这个国家/地区拥有地区代码supports_city
为 true
,则这个国家/地区拥有城市代码名称 | 描述 |
---|---|
类型:数组 |
|
类型:整型 | 要搜索的地区 |
类型:字符串 | 要搜索的国家/地区: |
您可以定位的每个国家/地区都有国家/地区代码。type=adgeolocation&location_types=['country']
的可选参数:
名称 | 描述 |
---|---|
类型:字符串 | 自动填充值的字符串。如要通过 |
类型:布尔值 | 默认为 按国家/地区代码寻找国家/地区。相对于 |
所有国家/地区组都有可供搜索的代码,便于您获取国家/地区列表。对于所有名为 mercosur
的国家/地区组:
curl -G \ -d 'location_types=["country_group"]' \ -d 'type=adgeolocation' \ -d 'q=mercosur' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "key": "mercosur", "name": "Mercosur", "type": "country_group", "country_codes": [ "BR", "AR", "UY", "PY", "VE" ], "is_worldwide": false, "supports_region": true, "supports_city": true } ] }
如果 is_worldwide
为 true
,则此为全球国家/地区组。如果 supports_region
为 true
,则此国家/地区组拥有地区代码。如果 supports_city
为 true
,则此国家/地区组拥有城市代码。
如要搜索所有以代码 al
开头的地区:
curl -G \ -d 'location_types=["region"]' \ -d 'type=adgeolocation' \ -d 'q=al' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "key": "3843", "name": "Alabama", "type": "region", "country_code": "US", "country_name": "United States", "supports_region": true, "supports_city": true }, { "key": "3844", "name": "Alaska", "type": "region", "country_code": "US", "country_name": "United States", "supports_region": true, "supports_city": true }, { "key": "527", "name": "Alberta", "type": "region", "country_code": "CA", "country_name": "Canada", "supports_region": true, "supports_city": true }, { "key": "1089", "name": "Alsace", "type": "region", "country_code": "FR", "country_name": "France", "supports_region": true, "supports_city": true } ] }
type=adgeolocation&location_types=['region']
的选项:
名称 | 描述 |
---|---|
类型:字符串 | 用于自动填充值的字符串。如要通过 |
如果 supports_region
为 true
,则可定位此地区。如果 supports_city
为 true
,则此地区拥有城市代码。
自 2019 年 3 月起,我们已将多个城市重新分类为其他身份,但您可以继续使用 city
。搜索结果将返回之前的城市。
如要搜索所有以 Manhattan
开头的城市代码:
curl -G \ -d 'location_types=["city"]' \ -d 'type=adgeolocation' \ -d 'q=Manhattan' \ -d 'access_token=ACCESS_TOKEN' \ https://graph.facebook.com/VERSION/search
响应:
{ "data": [ { "key": "2447439", "name": "Manhattan", "type": "city", "country_code": "US", "country_name": "United States", "region": "Kansas", "region_id": 3859, "supports_region": true, "supports_city": true }, { "key": "2439596", "name": "Manhattan", "type": "city", "country_code": "US", "country_name": "United States", "region": "Illinois", "region_id": 3856, "supports_region": true, "supports_city": true }, { "key": "2479541", "name": "Manhattan", "type": "city", "country_code": "US", "country_name": "United States", "region": "Montana", "region_id": 3869, "supports_region": true, "supports_city": true }, { "key": "2428908", "name": "Manhattan", "type": "city", "country_code": "US", "country_name": "United States", "region": "Florida", "region_id": 3852, "supports_region": true, "supports_city": true }, { "key": "2703980", "name": "Manhattan", "type": "subcity", "country_code": "US", "country_name": "United States", "region": "New York", "region_id": 3875, "supports_region": true, "supports_city": true, "geo_hierarchy_level": "SUBCITY", "geo_hierarchy_name": "BOROUGH" }, ...
如果 supports_region
为 true,则可定位此城市所在地区。如果将 supports_city
设置为 true
,则可定位此城市。
我们还提供其他地理区域,以便您进行定位。其中一些区域尚未定义,具体如下所述。
范围 | 描述 |
---|---|
| 通常称为行政区或省份(覆盖数百平方公里或更大面积)。示例: |
| 通常称为县(覆盖多个城市)。示例: |
| 通常称为城市或城镇附近的居民区。示例: |
| 例如自治市。示例: |
| 市内区域。示例: |
| 尚无定义。 |
| 较大城市周围的人口稠密区。尚无定义。 |
从大到小的地理区域层级如下所示:
REGION
LARGE_GEO_AREA
MEDIUM_GEO_AREA
SMALL_GEO_AREA
METRO_AREA
CITY
SUBCITY
NEIGHBORHOOD
SUBNEIGHBORHOOD
您也可以搜索邮编,以在 Facebook 上定位。对于邮编搜索,我们建议结合使用 adgeolocation
与 location_types=['zip']
。请访问 Meta 帮助中心,查看国家/地区及其支持邮编的列表。
搜索以 9
开头的邮编:
curl -G \ -d 'location_types=["zip"]' \ -d 'type=adgeolocation' \ -d 'q=9' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/LATEST-API-VERSION/search
响应:
{ "data": [ { "key": "US:90028", "name": "90028", "type": "zip", "country_code": "US", "country_name": "United States", "region": "California", "region_id": 3847, "primary_city": "Los Angeles", "primary_city_id": 2420379, "supports_region": true, "supports_city": true }, { "key": "US:94110", "name": "94110", "type": "zip", "country_code": "US", "country_name": "United States", "region": "California", "region_id": 3847, "primary_city": "San Francisco", "primary_city_id": 2421836, "supports_region": true, "supports_city": true }, { "key": "US:94501", "name": "94501", "type": "zip", "country_code": "US", "country_name": "United States", "region": "California", "region_id": 3847, "primary_city": "Alameda", "primary_city_id": 2417628, "supports_region": true, "supports_city": true }, { "key": "US:95190", "name": "95190", "type": "zip", "country_code": "US", "country_name": "United States", "region": "California", "region_id": 3847, "primary_city": "San Jose", "primary_city_id": 2421846, "supports_region": true, "supports_city": true } ] }
按区域设置代码搜索的可定位区域设置。如要搜索所有以 en
开头的区域设置:
curl -G \ -d 'type=adlocale' \ -d 'q=en' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ { "data": [ { "key": 51, "name": "English (Upside Down)" }, { "key": 6, "name": "English (US)" }, { "key": 24, "name": "English (UK)" } ] } }
名称 | 描述 |
---|---|
类型:字符串 | 自动填充值的字符串。如要获得所有区域设置,请将这个参数留空成 |
如要获得这些代码,请在查询中指定 type=adgeolocation
和 location_types=['geo_market']
。如要搜索以“New”开头的 DMA 代码:
curl -G \ -d 'location_types=["geo_market"]' \ -d 'type=adgeolocation' \ -d 'q=New' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
结果:
{ "data": [ { "key": "DMA:622", "name": "New Orleans", "type": "geo_market", "country_code": "US", "country_name": "United States", "supports_region": true, "supports_city": true }, { "key": "DMA:501", "name": "New York", "type": "geo_market", "country_code": "US", "country_name": "United States", "supports_region": true, "supports_city": true }, { "key": "DMA:533", "name": "Hartford & New Haven", "type": "geo_market", "country_code": "US", "country_name": "United States", "supports_region": true, "supports_city": true }, { .... } ] }
如要搜索要定位的选区,请指定 type=adgeolocation
和 location_types=['electoral_district']
。如要搜索加州的选区:
curl -G \ -d 'location_types=["electoral_district"]' \ -d 'type=adgeolocation' \ -d 'q=California' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "key": "US:CA14", "name": "California's 14th District", "type": "electoral_district", "country_code": "US", "country_name": "United States", "region": "California", "region_id": 3847, "supports_region": true, "supports_city": true }, { "key": "US:CA02", "name": "California's 2nd District", "type": "electoral_district", "country_code": "US", "country_name": "United States", "region": "California", "region_id": 3847, "supports_region": true, "supports_city": true }, ... }
您可以通过 type=adgeolocationmeta
使用其他可选参数:
curl -G \ -d 'cities=[2418779]' \ -d 'zips=["US:90210"]' \ -d 'countries=["US","JP"]' \ -d 'regions=[10]' \ -d 'type=adgeolocationmeta' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
对于指定的地理位置,响应是具有元数据的 JSON 对象:
{ "data": { "countries": { "US": { "key": "US", "type": "country", "name": "United States", "supports_city": true, "supports_region": true }, "JP": { "key": "JP", "type": "country", "name": "Japan", "supports_city": true, "supports_region": true } }, "regions": { "10": { "key": "10", "type": "region", "name": "Dubai", "country_code": "AE", "supports_city": true, "supports_region": false } }, "cities": { "2418779": { "key": "2418779", "type": "city", "name": "Danville", "region_id": 3847, "region": "California", "country_code": "US", "supports_city": true, "supports_region": true } }, "zips": { "US:90210": { "key": "US:90210", "type": "zip", "name": "90210", "primary_city": "Beverly Hills", "region_id": 3847, "region": "California", "country_code": "US", "supports_city": true, "supports_region": true } } } }
选项:
名称 | 描述 |
---|---|
类型:字符串 | 国家/地区代码数组 |
类型:整数 | 地区代码数组 |
类型:字符串 | 国家/地区组代码数组 |
类型:整数 | 城市键数组 |
类型:字符串 | 完整邮编数组。例如 |
如要定位特定地点周围的区域,请使用 suggested_radius
获得推荐半径范围以覆盖足够人数:
curl -G \ -d 'latitude=37.449478' \ -d 'longitude=-122.173016' \ -d 'type=adradiussuggestion' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应是具有 suggested_radius
和 distance_unit
的 JSON 对象。
{ "data": [ { "suggested_radius": 10, "distance_unit": "mile" } ] }
在指定 distance_unit
的情况下检索 suggested_radius
的示例:
curl -G \ -d 'latitude=37.449478' \ -d 'longitude=-122.173016' \ -d 'type=adradiussuggestion' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
{ "data": [ { "suggested_radius": 16, "distance_unit": "kilometer" } ] }
使用以下参数:
名称 | 描述 |
---|---|
类型:浮点数 | 必要。 地点的纬度 |
类型:浮点数 | 必要。 地点的经度 |
类型:字符串 | 非必要。 度量单位, |
另请参阅本地市场知名度广告,以结合建议做法加以使用。
向 /search
端点发送一个 GET
请求,将 type
设置为 adinterest
,并将 q
设置为特定的兴趣点以进行搜索:
curl -G \ -d 'type=adinterest' \ -d 'q=baseball' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应将返回以下字段:
名称 | 描述 |
---|---|
integer | 兴趣定位的 Facebook 编号 |
string | 以 |
字符串 | 兴趣名称 |
字符串数组 | 包括定位的类别和任何父类别 |
向 /search
端点发送一个 GET
请求,并将 type
设置为 adinterestsuggestion
以获得与您的兴趣相关的建议兴趣列表。
curl -G \ -d 'interest_list=["Basketball"]' \ -d 'type=adinterestsuggestion' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/<API_VERSION>/search
{ "data": [ { "id": "6003598240487", "name": "la biblia", "audience_size": 7419780, "path": [ ], "description": null }, { "id": "6003022269556", "name": "Rugby football", "audience_size": 13214830, "path": [ ], "description": null }, { "id": "6003146664949", "name": "Netball", "audience_size": 4333770, "path": [ ], "description": null }, { "id": "6003013291881", "name": "Kaizer Chiefs F.C.", "audience_size": 1812850, "path": [ ], "description": null }, .... { "id": "6003400886535", "name": "espn sportscenter", "audience_size": 222960, "path": [ ], "description": null }, { "id": "6002925969459", "name": "watching movies", "audience_size": 4630950, "path": [ ], "description": null }, { "id": "6003214125247", "name": "lakers", "audience_size": 340360, "path": [ ], "description": null }
选项包括:
名称 | 描述 |
---|---|
类型:字符串数组 | 必要。 您需要获得建议的关键词列表。区分大小写。 |
interest_fbid_list
验证兴趣,而非按名称。使用 type=adinterestvalid
以及要验证的兴趣来查询,检查关键词是否有效:curl -G \ -d 'interest_list=["Japan","nonexistantkeyword"]' \ -d 'type=adinterestvalid' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "name": "Japan", "valid": true, "id": 6003700426513, "audience_size": 68310258 }, { "name": "nonexistantkeyword", "valid": false } ] }
选项:
名称 | 描述 |
---|---|
类型:字符串数组 | 若无 要验证的关键词列表。区分大小写。 |
类型:编号数组 | 若无 要验证的编号列表。 |
要浏览可定位的兴趣,向 /search
端点发送一个 GET
请求,将 type
设置为 adTargetingCategory
,并将 class
设置为 interests
。
curl -G \ -d 'type=adTargetingCategory' \ -d 'class=interests' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
根据用户的操作或之前的购买行为来定位目标。使用 type=adTargetingCategory&class=behaviors
检索所有可能的行为定位选项。
curl -G \ -d 'type=adTargetingCategory' \ -d 'class=behaviors' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应包含以下内容:
名称 | 描述 |
---|---|
类型:字符串 | 行为定位名称 |
类型:整数 | 行为定位的 Facebook 编号 |
整数 | 目标受众规模的预估值下限 |
整数 | 目标受众规模的预估值上限 |
类型:字符串数组 | 此定位的类别和任何父类别 |
类型:字符串 | 描述目标受众 |
类型:字符串 | 定位类别分类 |
这个部分包括工作场所、教育程度、职业类型及感情状况类型。您也可以根据近期的生活纪事来定位:3 个月、6 个月和 1 年。您可以按编号和名称引用要定位的学校。
如要搜索所有以 ha
开头的学校:
curl -G \ -d 'type=adeducationschool' \ -d 'q=ha' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "name": "Harvard University", "id": 105930651606, "coverage": 8395398, "subtext": "Cambridge, Massachusetts" }, { "name": "Hajvery University", "id": 148971135122588, "coverage": 124162 }, { "name": "Harvard-Westlake School", "id": 107799365910274, "coverage": 14106 } ] }
按编号和名称定位主修科目。如要搜索所有以 ph
开头的主修科目:
curl -G \ -d 'type=adeducationmajor' \ -d 'q=ph' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "name": "Photography", "id": 108170975877442, "coverage": 613618 }, { "name": "Physics", "id": 109279729089828, "coverage": 942491 }, { "name": "Philosophy", "id": 108026662559095, "coverage": 701271 } ] }
按编号和名称引用可定位的工作雇主。如要搜索所有以 mic
开头的工作雇主:
curl -G \ -d 'type=adworkemployer' \ -d 'q=mic' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "name": "Western Michigan University", "id": 10022826163, "coverage": 24366 }, { "name": "University of Michigan", "id": 21105780752, "coverage": 17357 }, { "name": "Michigan State University - SPARTANS", "id": 8891783019, "coverage": 65853 } ] }
每种自称且可定位的职业都有编号和名称。如要获得所有包含 Business Analyst
的职业:
curl -G \ -d 'type=adworkposition' \ -d 'q=Business Analyst' \ -d 'access_token=<ACCESS_TOKEN>' \ https://graph.facebook.com/v<API_VERSION>/search
响应:
{ "data": [ { "name": "Business Analyst", "id": 105763692790962, "coverage": 282124 }, { "name": "Financial Analyst", "id": 112930925387573, "coverage": 212889 } ] }
响应具有以下字段:
名称 | 描述 |
---|---|
类型:字符串 | 人口统计数据定位的名称 |
类型:整数 | 人口统计数据定位的 Facebook 编号 |
类型:整数 | 目标受众规模的预估值 |
类型:字符串 | 目标受众描述 |
这个 API 的常见参数如下所示。如果是特定类型的输入参数,请参阅以下详细信息。
参数名称 | 描述 |
---|---|
| 绝大部分搜索类型的必要项。 自动填充值的字符串。 |
| 必要。 待检索的自动填充数据类型。参见下文 |
| 非必要。 检索偏好的 Facebook 全球编号,而不是 FIPS 代码。支持 使用时,值必须为 |
| 非必要。 可返回的最多结果,默认为 8 |
根据自动填充数据的类别,提供适当的 type
。如要检索区域设置,请指定 type=adlocale
。有效类别为:
“type”参数的值 | 描述 |
---|---|
自动完成大学定位 | |
自动完成大学主修科目定位 | |
自动完成国家/地区、城市、省份/自治区/直辖市及邮编的组合 | |
adgeolocation.adcountry | 自动完成国家/地区 |
adgeolocation.adzipcode | 自动完成邮编 |
adgeolocation.adgeolocationmeta | 地理位置的其他元数据 |
adgeolocation.adradiussuggestion | 返回地点周围的推荐半径范围 |
自动完成区域设置定位 | |
adinterest.adinterestsuggestion | 根据兴趣定位提供的建议 |
adinterest.adinterestvalid | 按有效兴趣定位选项验证字符串 |
自动完成区域设置定位 | |
adTargetingCategory | 已忽略参数 |
自动完成工作雇主值 | |
自动完成职业值 |
使用 type=adTargetingCategory
和 class
检索所有可能的人口统计数据定位选项。
名称 | 描述 |
---|---|
类型:字符串 | 指定以下其中一个参数: 并非所有国家/地区都可使用人口统计数据定位选项。根据用户(其访问口令用于作出这次 API 调用)的国家/地区设置,Facebook 可能会返回不同结果,包括空白结果。 |
响应包含以下字段:
名称 | 描述 |
---|---|
类型:字符串 | 人口统计数据定位名称 |
类型:整数 | 人口统计数据定位 Facebook 编号 |
整数 | 目标受众规模的预估值下限 |
整数 | 目标受众规模的预估值上限 |
类型:字符串 | 目标受众描述 |
类型:字符串 | 人口统计数据类型。如果您检索所有人口统计数据,此字段会很实用。 |
类型:字符串数组 | 包括定位隶属的类别及任何父类别 |