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}$