亚马逊广告授权流程说明

原创

1 年前 TOOL8 分钟 读完 (大约 1139 个字)  总访问量  586次 AMAZON

广告授权进入第三方网站流程

授权流程说明

一、用户进入第三方网站,如www.ABC.com

二、第三方网站引导用户进入登录授权页

第三方网站在自己网站放置亚马逊广告授权的入口,引导用户进入亚马逊登录授权页。

亚马逊登录授权页域名在不同亚马逊站点区域是不同的:

Region URL prefix
North America (NA) https://www.amazon.com/ap/oa
Europe (EU) https://eu.account.amazon.com/ap/oa
Far East (FE) https://apac.account.amazon.com/ap/oa

API调用具有以下参数:

参数 说明
client_id 开发者client_id
scope
response_type 响应类型,始终为code
redirect_uri 授权登录之后跳转的跳转网址
state 用于第三方自行校验session,防止跨域攻击

scope针对不同的业务类型有不同值,下面是官方文档中的说明。

  • For the Sponsored Brands, Sponsored Display, and Sponsored Products APIs, set scope to cpc_advertising:campaign_management.
  • For the Data Provider API, set scope to advertising::audiences.
  • For the DSP API, set scope to advertising::campaign_management。

针对常用api等,只需要知道sb、sd、sp广告类型设置为cpc_advertising:campaign_management即可。

例如,要在北美(NA)区域生成授权码,请用您的值替换以下URL中的值:

1
https://www.amazon.com/ap/oa?client_id=YOUR_LWA_CLIENT_ID&scope=cpc_advertising:campaign_management&response_type=code&redirect_uri=YOUR_RETURN_URL&state=YOUR_STATE

接下来,第三方站点根据生成的url链接地址,浏览器中进行重定向,即可引导用户登录授权亚马逊广告。

三、用户登录、确认并同意授权

用户进入亚马逊广告授权引导页后,即需要用户登录,登录后,亚马逊将会把用户重定向到同意书页面。
转存失败重新上传取消

要授予应用程序访问Amazon Advertising的权限,请选择允许。要拒绝应用程序访问Amazon Advertising,请选择取消。

4.授权后回调URI,得到授权码code

用户允许应用程序访问Amazon Advertising api的权限,即同意授权后,将跳转到步骤一中使用的URL相同区域的Amazon网站。同时此步骤中将会获得刷新令牌使用的code码。
最后将会重定向到步骤一中设置的redirect_uri链接,即第三方回调地址,注意此时会携带生成的code码。

5.调用授权URL以请求授权和刷新令牌

请求授权和刷新令牌接口域名在不同亚马逊站点区域是不同的。URL为:

Region Authorization URL
North America (NA) https://api.amazon.com/auth/o2/token
Europe (EU) https://api.amazon.co.uk/auth/o2/token
Far East (FE) https://api.amazon.co.jp/auth/o2/token

特殊说明:地区为Far East (FE)的Authorization URL,在中国大陆被墙了,可以使用 North America (NA)的代替。

接下来,构造API调用以检索授权和刷新令牌。该调用具有以下查询参数:

参数 说明
grant_type 必须是authorization_code
code
redirect_uri 和步骤一种的redirect_uri一样
client_id 开发者client_id
client_secret 开发者client_secret

API调用使用POST,需要以下header头:

1
2
Content-Type:application/x-www-form-urlencoded
charset=UTF-8

此请求的响应是以JSON形式返回,返回的参数有:

字段 说明
access_token The authorization token
refresh_token The refresh token
token_type 总是bearer
expires_in 过期时间秒,默认3600

For example:

1
2
3
4
5
6
{"access_token": "","refresh_token": "","token_type": "bearer","expires_in": 3600
}

6.第三方根据返回的refresh_token,变更授权状态

7.授权成功

8.授权令牌后,您就可以使用API进行调用了

代码实现

基于亚马逊广告sdk easy-amazon-advertising

授权引导页生成

1
2
3
4
5
6
7
8
9
10
11
12
13
$redirect_uri = www.ABC.com . '/api/advertising/authorize';
$config = [    'clientId'     => config('adv.clientId'),    'clientSecret' => config('adv.clientSecret'),    'region'       => api_region_control($seller->region),    'grant_type'   => 'authorization_page',    'redirect_uri' => $redirect_uri,    'state'     => encrypt_openssl(['id' => userid123])];
$app = Factory::make('BaseService', $config);
$result = $app->oauth->authorizationURL();
return !empty($result['code']) && $result['code'] == 200 ?
$result['response'] : '';

特殊说明:encrypt_openssl方法为可解加密方法。

调用授权URL以请求授权和刷新令牌,变更授权状态

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$info = decrypt_openssl(urldecode($params['state']));
$user = User::query()->where(['id' => $info['id']])->first();$config = [    'clientId'     => config('adv.clientId'),    'clientSecret' => config('adv.clientSecret'),    'region'       => api_region_control($region),   'grant_type'   => 'authorization_code',   'redirect_uri' => $redirect_uri,    'code'         => $code,];$app = Factory::make('BaseService', $config);
$result = $app->oauth->token();return !empty($result['code']) && $result['code'] == 200 ?
$result['response'] : [];

亚马逊广告授权流程说明相关推荐

  1. 亚马逊广告接口 amazon advert api 申请流程

    #亚马逊广告接口 amazon advert api 申请流程 官方文档 https://advertising.amazon.com/API/docs/en-us 申请连接 : https://ad ...

  2. 亚马逊广告API对接概述

    广告API对接总体流程>>> 下图中出现的相关URL,是以北美站为例 亚马逊广告各实体间关系>>> 1. 广告API对接准备 ​​​​​​​1.1 申请亚马逊开发者 ...

  3. 亚马逊广告接口 amazon advertising

    亚马逊广告接口官方说明:https://advertising.amazon.com/API/docs/en-us/setting-up/account-setup 一:注册aws开发者账号 注册地址 ...

  4. android canvas广告牌,亚马逊广告后台创建CPC站内广告教程

    亚马逊站内广告投放前需要对广告创建流程以及后台创建入口有一些基础的了解.付费推广Sponsored Product,又称Pay Per Click/Cost Per Click (PPC/CPC).做 ...

  5. 如何将亚马逊广告添加到您的 WordPress 网站(3 种方法)

    您想将亚马逊广告添加到您的 WordPress 网站吗? 亚马逊广告可以成为在线赚钱的好方法.此外,与其他广告网络相比,他们的审批流程更快.更简单. 在本文中,我们将逐步向您展示如何将亚马逊广告添加到 ...

  6. 适配器和绑定 没找到_亚马逊如何收款?附亚马逊收款绑定流程

    我做跨境电商也有六年的时间了,在电商这个行业也有自己的一些经验.经验也许没有其他大卖家丰富,但会将我知道的都进行分享.如果有不懂得亚马逊问题可以+我(V:772024802).我这里给大家安排一堂直播 ...

  7. ctr多少正常_亚马逊广告ctr多少才算合格,如何提升亚马逊CTR

    亚马逊广告ctr多少才算合格,如何提升亚马逊CTR 很多亚马逊卖家并不重视点击率,其实点击率和转化率是同样重要的.好的点击率可以提升产品listing的流量,间接影响转化,促进销量.一般来说亚马逊点击 ...

  8. 亚马逊广告投放策略卖家们知多少?

    关于投放策略,分阶段执行会更加高效.特别是推新品,可分成初始期.成长期和成熟期几个阶段,通过自动/手动以及否定投放等策略有目的性的进行推广. 1.自动/手动投放 初始期:可利用商品推广,进行广告分组, ...

  9. 亚马逊服务器 购买 流程_亚马逊环如何使我们对购买的每种产品都抱有偏执

    亚马逊服务器 购买 流程 重点 (Top highlight) 非品牌 (Off Brand) A little over four years ago, my wife and I moved in ...

最新文章

  1. rabbitmq 同步策略_RabbitMQ(三):消息持久化策略
  2. struts1跳入指定方法
  3. reorder-list
  4. post 请求 argument type mismatch_Flask-RESTful 请求解析
  5. 产品入门一——十分钟读懂产品经理
  6. JavaScript:windows关机效果
  7. C++11 Unicode 支持
  8. 生物信息学的现状与展望
  9. 【动态更新】解决夫妻两地分居手续
  10. 解决Sublime Text菜单栏和标签栏不见问题
  11. 用分治法解决青蛙跳问题(斐波那契数列)
  12. jsp文件打开为记事本怎么办
  13. mybatis 不确定结果集集_集集丨与小直男的日常(三)
  14. 【python】从拉平的上三角矩阵中,重构矩阵
  15. Echarts 柱状图,带背景色且数值显示在最顶部
  16. Json格式的数据集标签转化为有效的txt格式(data_coco)
  17. 计算机组成原理课设 alu,计算机组成原理课设报告.pdf
  18. 【metrics】将dropwizard metrics收集到 prometheus
  19. NBIOT模块 BC26 openCPU LWM2M协议传输数据到OneNet平台
  20. 2.1什么是软件需求,什么是功能需求

热门文章

  1. 运动估计和最佳匹配块搜索算法
  2. 【开源共享】全网最简单易用的imx6ull烧写工具设计初衷工作原理设计前的思考
  3. 【原创】描述性分析思维的一些基本思路与见解
  4. postman调试http接口挑战鉴权Authorization
  5. PyCharm下利用pyqt对话框打开图片,显示
  6. 浙大计算机学院郭庆,团队介绍
  7. 研究型论文_CICIDS2017 数据集中基于异常的入侵检测系统的机器学习基准测试(英文论文)
  8. Lucene搜索(含高亮)
  9. android文字闪动效果
  10. ERROR: backports-5.4-r0 do_compile: oe_runmake failed 解决办法