标签: podio

`refresh token`是否会过期,如果是的话?

我已经阅读了PODIO文档.我特别考虑了以下关于使用以下内容的声明refresh_token:

此请求返回与上面相同的数据,您可以反复继续执行此操作,以保持应用程序的身份验证,而无需要求用户重新进行身份验证.

这是否意味着refresh_token它将无限期有效或过期:

  1. 发行后X天; 要么
  2. 最后一次使用它以获得新的X天后 access_token

任何帮助将非常感激.TIA!


编辑:请参阅此PODIO线程,它提出相同的问题,但似乎没有给出关于Oauth2.0协议的PODIO实现的任何结论性答案.

oauth-2.0 podio

17
推荐指数
3
解决办法
2万
查看次数

PODIO JSON提供给C#Objects多态性

我正在编写一个程序来从Podio读取JSON字符串,然后将内容转换为c#对象.

但在阅读饲料时,我遇到了一种奇怪的形式; 在对象的相同层次级别,有时字段[value]的值是字符串,但有时它是一个复杂的对象.

示例如下.

它在某些地方就像

"values":[
    {
        "value":"Bug on User Interface, Ajax sometimes does not load properly"
    }
],
"type":"text"
Run Code Online (Sandbox Code Playgroud)

然后在下一个项目中,在层次结构中的同一级别,它就像

"values":[
    {
        "value":{
            "perma_link":"https:\/\/ds-test.podio.com\/myworkspace\/files\/23529948",
            "mimetype":"image\/jpeg",
            "hosted_by":"podio",
            "name":"217820_274164679355286_689330144_n.jpg",
            "hosted_by_humanized_name":"Podio",
            "description":null,
            "thumbnail_link":"https:\/\/files.podio.com\/23529948",
            "link":"https:\/\/files.podio.com\/23529948",
            "file_id":23529948,
            "size":39698
        }
    }
],
"type":"image"
Run Code Online (Sandbox Code Playgroud)

注意"type"的值:对于第一个实例,它是"text",然后对于下一个实例,它是"image".因为它们位于层次结构的同一级别,所以我不知道如何为它们设计对象,以便DataContractJsonSerializer.Read方法顺利运行.

问候,

.net c# json podio

5
推荐指数
1
解决办法
316
查看次数

附加到项目的Podio文件无法下载

我在尝试下载附加到Podio项目的文件时遇到问题:

podio.request('get', '/file/{file_id}/raw').then(console.log);
Run Code Online (Sandbox Code Playgroud)

以上程序显示:

{}
Run Code Online (Sandbox Code Playgroud)

这是一个JSON字符串化的空对象(而不是原始文件内容).

细节:

  • 登录后,可以使用其URL访问上述文件
  • 上述代码在正确认证后运行
  • 它实际上在使用file_id项目的图像字段时有效,但不能从文件附件(在我的情况下为pdf文件)中使用.
  • 使用API​​端点/item/app/{app_id}/filter获取项目列表时,属性file_count已设置,但不是files.我必须/item/{item_id}单独要求获得files包含在响应中的属性,不知道为什么.

问题:您知道问题是什么,以及如何下载原始附件?

编辑:aditionnal信息

如果我使用以下命令请求单个文件元数据:

podio.request('get', '/file/1234').then(console.log);
Run Code Online (Sandbox Code Playgroud)

我得到一个文件JSON对象,其中包含许多字段,但包含文件内容:

{
  ...
  link: 'https://files.podio.com/1234',
  file_id: 1234,
  ...
}
Run Code Online (Sandbox Code Playgroud)

正如我对@stengaard的评论中所述,如果我尝试为上述链接请求API,则响应如下:

{ [PodioNotFoundError: [object Object]]
  message:
   { error_parameters: {},
     error_detail: null,
     error_propagate: false,
     request:
      { url: 'http://api.podio.com/1234',
        query_string: '',
        method: 'GET' },
     error_description: 'No matching operation could be found. The path \'/1234\' was not found..',
     error: 'not_found' },
  status: 404,
  url: …
Run Code Online (Sandbox Code Playgroud)

node.js podio

4
推荐指数
1
解决办法
300
查看次数

Podio:在设置DateTime字段值时使用哪个TimeZone

使用Podio API创建新项目或更新现有项目时,将DateTime字段值设置为:( 2016-10-21 14:15:00作为示例).哪个时区将用于存储此DateTime?

例如请求:

app_id = <some app with title and date fields>
content = {'title' => 'Date set to "14:15"',
           'date'  => {'start' => '2016-10-21 14:15:00', 
                       'end'   => '2016-10-21 15:00:00'}}
item = Podio::Item.create(app_id, 'fields' => content)
Run Code Online (Sandbox Code Playgroud)

结果:

'start_date_utc' => 2016-10-21
'end'            => 2016-10-21 15:00:00
'end_date'       => 2016-10-21
'end_date_utc'   => 2016-10-21
'start_time_utc' => 12:15:00
'start_time'     => 14:15:00
'start_date'     => 2016-10-21
'start'          => 2016-10-21 14:15:00
'end_time'       => 15:00:00
'end_time_utc'   => 13:00:00
'end_utc'        => 2016-10-21 13:00:00
'start_utc' …
Run Code Online (Sandbox Code Playgroud)

ruby datetime podio

4
推荐指数
1
解决办法
156
查看次数

Podio API端点如何更新视图?

当我查看"更新视图"端点的文档时,可用的信息非常少(请参阅https://developers.podio.com/doc/views/update-view-20069949).当前文档声明端点接受一个参数view_id,但似乎API使用者也希望能够提供其他详细信息来修改视图的定义.

是否有任何示例代码可用于演示如何使用此端点?

podio

4
推荐指数
1
解决办法
86
查看次数

使用 python 库获取应用程序的所有项目不起作用

from pypodio2 import api

# Authenticate as App
podio_client = api.OAuthAppClient(
    client_id=PODIO_CLIENT_ID,
    client_secret=PODIO_CLIENT_SECRET,
    app_id=PODIO_APP_ID,
    app_token=PODIO_APP_TOKEN,    
)

# Set limit to 100
items = podio_client.Item.filter(app_id=PODIO_APP_ID, attributes={}, limit=100)
Run Code Online (Sandbox Code Playgroud)

我的应用程序共有 251 个项目,我预计 API 将返回 100 个项目,但它只返回 20 个...如何解决此问题?

打印(项目['总计'])

第251章

打印(项目['过滤'])

第251章

打印(len(项目['项目'])

20

更新

我用 requests 库尝试过,但仍然没有成功......

import requests
payload = {
  "filters":{},
  "limit": 30
}
resp = requests.post(url="https://api.podio.com/item/app/randomappid/filter/", 
                    headers={'authorization': 'OAuth2 randomn0mber'},
                    data=payload)
Run Code Online (Sandbox Code Playgroud)

len(resp.json()['项目'])

20

API调用文档:https://developers.podio.com/doc/items/filter-items-4496747

python podio

3
推荐指数
1
解决办法
370
查看次数

从Podio验证webhook

我正在创建一个与Podio集成的PHP脚本..我想我没事,但我无法验证来自Podio网站的webhook ..你能告诉我我做错了什么吗?这是我的代码:

require_once '../lib/Podio/PodioAPI.php';
require_once '../lib/Podio/__cfg.php';
Podio::setup(CLIENT_ID, CLIENT_SECRET);

if (!Podio::is_authenticated()) {
  Podio::authenticate('app', array('app_id' => APP_ID, 'app_token' => APP_TOKEN)); 
}

if ($_POST) {

    switch ($_POST['type']) {

        case 'item.create' :
            $item           = PodioItem::get($_POST['item_id']);
            doMyStuff('create',$item);
        break;

        case 'item.update' :            
            $item           = PodioItem::get($_POST['item_id']);
            doMyStuff('update',$item);
        break;
    }
}
Run Code Online (Sandbox Code Playgroud)

php webhooks podio

2
推荐指数
1
解决办法
466
查看次数

Podio API:如何在给定项目 ID 的情况下获取文件 ID

这是一个跑道 API 问题...

如何获取与项目关联的文件 ID(假设我知道项目 ID)。我在 API 文档中找不到。

podio

2
推荐指数
1
解决办法
205
查看次数

如何从Podio App字段进行外部API调用?

我有一个名为origin的位置字段和一个名为distination的字段.我试图通过使用Origin和Destination字段中的地址来计算第三个称为距离的字段?实现这一目标的最简单方法是什么?

这是一个想法.使用Google地图的目标API获取2个位置字段之间的距离.我不确定如何进行这两个API调用.

podio

2
推荐指数
1
解决办法
181
查看次数

Podio API - Python过滤器请求

运行pypodio2

我正在尝试构建一个简单的脚本,该脚本使用item filter命令提取一组过滤的项目.我自己使用它来自动生成发票.

我的最终游戏是按计算的日期字段过滤 - 即该字段从关系中提取日期.

但是到目前为止似乎无法满足我对过滤任何值的请求.这是我希望在app中提取所有项目的示例,其中quantity-kg值为10.

c.Item.filter(14928728,attributes={'filter_by':[{"quantity-kg":10}]})
Run Code Online (Sandbox Code Playgroud)

这将返回应用程序中的所有项目.

我尝试了一些不同的东西,但似乎无法解决这个问题.

首先,我想确定传递简单请求的正确语法,然后确定如何将请求传递给按日期过滤.

python-2.7 podio

1
推荐指数
1
解决办法
340
查看次数

Podio Oauth - 刷新令牌寿命

我目前正在研究Podio集成,我偶然发现了一些文章,这些文章没有给出明确的答案,刷新资本是否会自动失效,在这种情况下获取新刷新令牌的确切流程是什么.

文章:

Podio刷新令牌到期 - 它不会过期(从用户名中有Podio的人回答,最近)

https://help.podio.com/hc/en-us/community/posts/206669587-Get-new-refresh-token - 它过期了,你把它作为响应的一部分而不是rly?有一些讨论没有结论

我问这个是因为我使用了很多服务和OAuth实现,但它是第一次刷新令牌实际上变得无效.那么如果28天过去了那么用户必须重新认证?或者只是令牌无效但"授权"仍然存在?我不得不说它很混乱,因为我习惯于接近grant ==刷新令牌,但我理解它与OAuth规范有关.另外我们只想在db中存储刷新令牌.我很想测试它,但我不想等待28天.

文档没有明确说明刷新令牌的生命周期是什么.

我喜欢Podio的某个人给出明确的答案.刷新令牌是否过期,只有在完全不活动(没有api调用)或只是固定数量时,以及在什么情况下(不活动或时间过去),获取刷新令牌的确切流程是什么,它是否需要用户重新认证?

oauth podio refresh-token

1
推荐指数
1
解决办法
188
查看次数

Podio刷新令牌到期

我正在构建一个允许人们生成简单电子邮件的应用程序 - 所以我想给用户一个即插即用的体验.登录一次,它就可以正常工作.当您对podio帐户进行更改时,会通过webhooks触发电子邮件

我知道Podio移交的podio刷新令牌存在28天.虽然这最初工作得很好,但28天后,我的应用程序将停止为注册Podio的用户工作并期望它完美无瑕.更难的是,没有办法找出刷新令牌何时到期以及什么时候我将获得新的刷新令牌.在28天期限到期之前是1小时,2小时还是3小时?

要求用户每28天登录一次,这样我就可以获得新的刷新令牌听起来不可行.

所以我的问题是

1)何时为我的用户生成新的刷新令牌

2)令牌失效只会使访问令牌无法刷新令牌.为什么这样?

我之前在podio论坛上看过类似的问题,但没有一个得到回答

https://help.podio.com/hc/en-us/community/posts/206669587-Get-new-refresh-token

oauth-2.0 podio

0
推荐指数
1
解决办法
242
查看次数

如何获得超过100个任务

我们尝试使用此https://developers.podio.com/doc/tasks/get-tasks-77949 - Sandbox 检索组织下的任务.我们只获得100个任务,但我们需要完成整个任务.我们有什么方法可以获得超过100个任务.请帮忙.

谢谢.

c# mysql asp.net podio

-4
推荐指数
1
解决办法
140
查看次数

标签 统计

podio ×13

c# ×2

oauth-2.0 ×2

.net ×1

asp.net ×1

datetime ×1

json ×1

mysql ×1

node.js ×1

oauth ×1

php ×1

python ×1

python-2.7 ×1

refresh-token ×1

ruby ×1

webhooks ×1