我们在每个工作区都有一个名为“Deliverables”的应用程序(大约有20多个工作区)。这些交付物中的每一个都有许多项目。什么是用于检索的最佳API,
由于
答案 0 :(得分:2)
示例的替代方式
- 获取用户有权访问的所有应用
- 循环应用程序并获取项目(也不要忘记处理偏移和限制)
使用的文件:
https://developers.podio.com/doc/applications/get-all-apps-5902728
https://developers.podio.com/doc/items/filter-items-4496747
很抱歉,但是示例是使用Ruby而不是C#。主要思想将保持不变,并且不依赖于所使用的编程语言:)
begin
Podio.client.authenticate_with_credentials(login, password)
apps = Podio::Application.find_all_for_current_user({'text' => 'Deliverables'})
apps.select! {|app| app.name == 'Deliverables'} # select only full name match
apps.select! {|app| app.status == 'active'} # filter out inactive (archived) apps
options = {'limit' => 30, 'offset' => 0}
filter = {:last_edit_on => {:from => '-7d', :to => '+0d'}} # as example, work with most recent items only
apps.each do |app|
puts "Working with app: '#{app.config['name']}' from workspace_id #{app.space_id}"
all_found_items = []
result = Podio::Item.find_by_filter_values(app.app_id, filter, options)
puts "Found #{result.count} items matching filter #{filter}"
all_found_items += result.all
while all_found_items.length < result.count
options['offset'] = all_found_items.length
result = Podio::Item.find_by_filter_values(app.app_id, filter, options)
all_found_items += result.all
end
all_found_items.each_with_index do |item, i|
puts "\t#{i+1}: #{item.title}"
end
end
rescue Podio::PodioError => ex
puts ex
end
答案 1 :(得分:1)
获取所有组织
https://developers.podio.com/doc/organizations/get-organizations-22344
这将为您提供与用户关联的所有ORG_ID。
选择要处理ORG的ORG_ID,或者循环使用所有ORG。
获取所有工作空间
https://developers.podio.com/doc/spaces/get-list-of-organization-workspaces-238875316将返回特定ORG_ID
循环工作区以获取应用程序
https://developers.podio.com/doc/applications/get-app-by-org-label-space-label-and-app-label-91708386
从应用中获取项目
https://developers.podio.com/doc/items/filter-items-4496747最终将为您提供应用中的项目(再次需要在循环中)
您还可以尝试其他方式:
*获取用户有权访问的所有应用
https://developers.podio.com/doc/applications/get-all-apps-5902728
*循环应用程序并获取项目
https://developers.podio.com/doc/items/filter-items-4496747
答案 2 :(得分:-1)
首先获取所有工作空间,然后获取每个工作空间的所有应用程序。然后你可以在Podio C#客户端库中使用`ItemService.FilterItems'方法来获取应用程序中的所有项目。