如何从调用EventBrite API返回quantity_available字段?

时间:2012-12-13 11:49:53

标签: eventbrite

Eventbrite documentation on the ticket object表示它可以包含quantity_availablequantity_sold字段,但要查看其中任何一个字段“需要身份验证”。但是,它没有提供任何更多细节,当我使用我的app键调用event_search方法时,返回事件中的tickets个对象不包含quantity_available或{{1密钥。

查看这些字段需要哪些身份验证?它们只对活动的所有者可见,或者是否可以通过某种方式让API返回可用于其他人活动的门票数量?

如果通过API无法做到这一点,那么事件剩余的票数是否会在Eventbrite上的任何其他位置公开显示,我可以通过网络刮刀获取它?

2 个答案:

答案 0 :(得分:1)

这需要被称为扩展。这里有更多细节: https://groups.google.com/forum/#!msg/eventbrite-api/sjMO-gV8-Go/uzw7GHq2_SEJ

基本上,这样调用会在python3中使用你的Apps OAuth令牌填充正确的字段:

import requests    
eventbrite_response = requests.get(
    "https://www.eventbriteapi.com/v3/events/<YOUR EVENT ID HERE>/?expand=ticket_classes",
    headers = {
        "Authorization": "Bearer <YOUR APP OAUTH TOKEN>",
    },
    verify = True,  # Verify SSL certificate
    )
print(eventbrite_response.json()['ticket_classes'][0]['quantity_sold'])

如果您愿意,可以在最后定制打印功能以包含更多json数据。

答案 1 :(得分:0)

为了使用Eventbrite API读取或写入私有数据,您需要提供其他用户身份验证令牌。这些额外信息使Eventbrite能够知道在请求期间谁应该被授权访问私人数据(包括quantity_available和quantity_sold值)。

每当您提供额外的用户访问权限时,公共和私人数据都将可用。

身份验证参数包括:

app_key:应用程序密钥(也称为API密钥),用于标识与API联系的应用程序。所有API请求必须包含某种形式的应用程序标识。如果这是唯一提供的身份验证令牌,则API请求将仅限于公开可用的数据。应用程序密钥的默认速率限制为每天1000个请求。您可以在此处获取并管理您的API密钥:https://www.eventbrite.com/api/key/

access_token:推荐。 OAuth2访问令牌与用户帐户和应用程序密钥相关联。由于还可以通过此令牌识别用户授权的应用程序,因此它是唯一不需要提供应用程序密钥的身份验证参数。小心不要将这些令牌暴露给其他用户!使用access_tokens联系我们的API时,需要其他请求标头:“授权:Bearer YOUR_ACCESS_TOKEN_HERE”。您可以在此处详细了解如何为OAuth2.0配置应用程序:http://developer.eventbrite.com/doc/authentication/oauth2/

user_key:每个Eventbrite帐户都有一个关联的user_key。除了我们公开的数据之外,此令牌还提供对相关用户帐户数据的访问。对于需要访问OAuth2.0工作流的私有数据访问的用例,此身份验证方法是首选方法。此令牌可解锁敏感信息,因此请务必小心不要将此令牌暴露给其他用户!

以下是使用app_key和user_key参数返回私有数据的API调用示例(请记住在您自己的app_key和user_key中替换):

https://www.eventbrite.com/json/user_list_events -G -d app_key = APPKEY -d user_key = USERKEY

您还可以在此处查看身份验证文档:http://developer.eventbrite.com/doc/authentication/