pats api客户端(www.pats.org.uk)

pats的Python项目详细描述


用于pats的python api包装器,发布者广告交易系统 (http://www.pats.org.uk/

目前只为Python3构建-如果您需要Python2支持,请告诉我。

安装

从pypi安装:

pip install -e git://github.com/bquinn/pats-api-python.git#egg=pats-api-python

用法

示例:

import pats

pats_buyer = pats.PATSAPIClient(api_key=PATS_AGENCY_API_KEY, agency_id=AGENCY_ID)
pats_seller = pats.PATSAPIClient(api_key=PATS_PUBLISHER_API_KEY, vendor_id=VENDOR_ID)

# create a new campaign
campaign_details = pats.CampaignDetails(
    organisation_id = 'xxxxxx',
    person_id = 'yyyyy',
    company_id = 'COMPANYID',
    campaign_name = 'PATS API test campaign 1',
    start_date = '2015-02-01',
    end_date = '2015-02-28',
    advertiser_code = 'AAB',
    print_campaign=True,
    digital_campaign=True,
    campaign_budget = 1000000,
    external_campaign_id= 'BQTESTCAMPAIGN1'
)

campaign_id = pats_buyer.create_campaign(campaign_details)
# returns PATS Campaign ID eg 'CPZVF'

insertion_order_details = InsertionOrderDetails(
    order_id='MyTestOrder-0001',
    publisher_id=PATS_PUBLISHER_ID,
    agency_buyer_first_name='Brendan',
    agency_buyer_last_name='Quinn',
    agency_buyer_email='brendan@patsbuyer.com',
    order_number='1111',
    recipient_emails=['patsdemo@patsseller.com'],
    terms_and_conditions=[{"name":"Test Ts and Cs", "content":"Test Ts and Cs"}],
    respond_by_date='2015-01-27',
    additional_info='No additional info',
    message='This is the message sent with the order',
    notify_emails=['brendan@patswatcher.com']
)

line_item_1 = InsertionOrderLineItemDigital(
    lineNumber="1",
    externalPlacementId="TestOrder-Monday-PATSTest-1-001",
    placementName="Sport Banner",
    costMethod="CPM",
    unitAmount="2000000",
    plannedCost="30000.00",
    unitType="Impressions",
    section="Sport",
    subMediaType="Display (Digital)",
    productId="PATSSPORTBANNER",
    buyCategory="Standard",
    packageType="Standalone",
    site="mysite.co.uk",
    rate="15.00",
    flightStart="2015-02-01",
    flightEnd="2015-02-28",
    dimensions="468x60",
    dimensionsPosition="Above the Fold",
    servedBy="3rd party",
    bookingCategoryName="Standalone",
    flighting=[
        {
            "startDate": "2015-02-01",
            "endDate": "2015-02-28",
            "unitAmount": 2000000,
            "plannedCost": "30000.00"
        }
    ]
)
line_items = [ line_item_1 ]
response = pats_buyer.create_order(
    agency_id=agency_id,
    company_id=company_id,
    person_id=person_id,
    external_campaign_id=external_campaign_id,
    media_type=media_type,
    insertion_order_details=insertion_order_details,
    line_items=line_items
)
# returns
# {
#   "status":"SUCCESSFUL",
#   "fieldValidations":[],
#   "publicId":"MyTestOrder-0001",
#   "version":1
# }

迄今为止的功能

买方:

  • 创建活动:create_campaign()
  • 查看包括RFP的活动:^{TT2}$
  • 报价单:
    • 提交RFP ^{TT3}$(即将提交)
    • 提交基于产品的RFP:^{TT4}$(即将推出)
    • 查看RFP,包括建议书:^{TT5}$
    • 获取RFP附件:^{TT6}$
    • 搜索RFP:^{TT7}$
    • 获取提案附件:get_proposal_attachment(user_email, proposal_id, attachment_id)
    • 退货建议:return_proposal()(即将推出)
  • 订单:
    • 根据活动创建打印或数字订单:create_order()
    • 查看日期之间的订单:view_orders(start_date, end_date)
    • (注意:“获取订单状态”正在为下一版本更改)
    • 退货订单修订:^{TT12}$
  • 产品目录:
    • 列出产品:list_products()
  • 实体类:
    • CampaignDetails()InsertionOrderDetails()InsertionOrderLineItemPrint()InsertionOrderLineItemDigital()
    • 的构造函数

卖方:

  • 产品目录:
    • 添加或编辑打印或数字产品:save_product()
    • 列出产品:list_products()
  • 订单:
    • 查看日期之间的订单:view_orders(start_date, end_date)
    • 查看订单的详细信息:view_order_detail(order_id)
    • 接受或拒绝订单:^{TT22}$
  • 报价单:
    • 查看日期之间的RFP:^{TT23}$
    • 查看征求建议书:view_proposals(rfp_id)
    • 根据RFP发送建议书:^{TT25}$

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java为什么这个方法会重复它的循环?   swing如何在Java中拖放鼠标时获取鼠标信息?   java如何处理异常并向SSE客户端发送错误   java在一个我一直试图制作的简单计算器上遇到了问题   java如何使用黄瓜。类和参数化。在同一个跑步者级别上   测试并发性的javajunit   java致命错误:jenkins的身份验证失败   只要我修改服务器,java SSE客户端就会停止工作(服务器发送事件)   java通过JSP获取JSON到JS   java在3d应用程序中集成卫星图像或地图   如何为Java8语言环境实现自己的自定义国家名称列表   java SonarLint | SonarQube批量创建@SuppressWarnings   java删除填充矩形   java hibernate一对多出错,外键错误   java如何获取图像是否被触摸而不是透明背景?LIBGDX   JAVA网SocketException:使用Tomcat重置连接   如何使用java检查文件是SSL证书还是常规文件?   java如何在安卓中使用类似C#等的文件选择器或openfiledialog打开文本文件   java非静态createnewfrom方法?   类在java中将具有多个变量类型的对象传递到arraylist时遇到问题