asana 0.9.2 → 0.10.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (91) hide show
  1. checksums.yaml +4 -4
  2. data/.swagger-codegen-ignore +3 -0
  3. data/.travis.yml +2 -1
  4. data/Appraisals +2 -35
  5. data/Gemfile +2 -0
  6. data/README.md +3 -51
  7. data/VERSION +1 -0
  8. data/asana.gemspec +3 -3
  9. data/examples/Gemfile.lock +10 -10
  10. data/lib/asana/client.rb +10 -10
  11. data/lib/asana/http_client.rb +8 -2
  12. data/lib/asana/resource_includes/attachment_uploading.rb +14 -7
  13. data/lib/asana/resource_includes/collection.rb +5 -0
  14. data/lib/asana/resource_includes/resource.rb +0 -4
  15. data/lib/asana/resources/attachment.rb +2 -5
  16. data/lib/asana/resources/batch_api.rb +15 -0
  17. data/lib/asana/resources/custom_field_settings.rb +2 -5
  18. data/lib/asana/resources/custom_fields.rb +2 -5
  19. data/lib/asana/resources/events.rb +28 -0
  20. data/lib/asana/resources/gen/attachments_base.rb +56 -0
  21. data/lib/asana/resources/gen/batch_api_base.rb +30 -0
  22. data/lib/asana/resources/gen/custom_field_settings_base.rb +46 -0
  23. data/lib/asana/resources/gen/custom_fields_base.rb +124 -0
  24. data/lib/asana/resources/gen/events_base.rb +32 -0
  25. data/lib/asana/resources/gen/jobs_base.rb +30 -0
  26. data/lib/asana/resources/gen/organization_exports_base.rb +44 -0
  27. data/lib/asana/resources/gen/portfolio_memberships_base.rb +63 -0
  28. data/lib/asana/resources/gen/portfolios_base.rb +173 -0
  29. data/lib/asana/resources/gen/project_memberships_base.rb +46 -0
  30. data/lib/asana/resources/gen/project_statuses_base.rb +69 -0
  31. data/lib/asana/resources/gen/projects_base.rb +259 -0
  32. data/lib/asana/resources/gen/sections_base.rb +108 -0
  33. data/lib/asana/resources/gen/stories_base.rb +84 -0
  34. data/lib/asana/resources/gen/tags_base.rb +129 -0
  35. data/lib/asana/resources/gen/tasks_base.rb +425 -0
  36. data/lib/asana/resources/gen/team_memberships_base.rb +77 -0
  37. data/lib/asana/resources/gen/teams_base.rb +88 -0
  38. data/lib/asana/resources/gen/typeahead_base.rb +35 -0
  39. data/lib/asana/resources/gen/user_task_lists_base.rb +44 -0
  40. data/lib/asana/resources/gen/users_base.rb +88 -0
  41. data/lib/asana/resources/gen/webhooks_base.rb +70 -0
  42. data/lib/asana/resources/gen/workspace_memberships_base.rb +60 -0
  43. data/lib/asana/resources/gen/workspaces_base.rb +82 -0
  44. data/lib/asana/resources/job.rb +2 -3
  45. data/lib/asana/resources/organization_export.rb +2 -5
  46. data/lib/asana/resources/portfolio.rb +2 -5
  47. data/lib/asana/resources/portfolio_membership.rb +2 -5
  48. data/lib/asana/resources/project.rb +2 -5
  49. data/lib/asana/resources/project_membership.rb +2 -5
  50. data/lib/asana/resources/project_status.rb +2 -5
  51. data/lib/asana/resources/section.rb +18 -22
  52. data/lib/asana/resources/story.rb +2 -5
  53. data/lib/asana/resources/tag.rb +2 -5
  54. data/lib/asana/resources/task.rb +5 -5
  55. data/lib/asana/resources/team.rb +2 -5
  56. data/lib/asana/resources/team_membership.rb +26 -0
  57. data/lib/asana/resources/typeahead.rb +22 -0
  58. data/lib/asana/resources/user.rb +2 -5
  59. data/lib/asana/resources/user_task_list.rb +2 -5
  60. data/lib/asana/resources/webhook.rb +2 -5
  61. data/lib/asana/resources/workspace.rb +2 -6
  62. data/lib/asana/resources/workspace_membership.rb +32 -0
  63. data/lib/asana/version.rb +1 -1
  64. data/samples/attachments_sample.yaml +41 -0
  65. data/samples/batch_api_sample.yaml +11 -0
  66. data/samples/custom_field_settings_sample.yaml +21 -0
  67. data/samples/custom_fields_sample.yaml +81 -0
  68. data/samples/events_sample.yaml +11 -0
  69. data/samples/jobs_sample.yaml +11 -0
  70. data/samples/organization_exports_sample.yaml +21 -0
  71. data/samples/portfolio_memberships_sample.yaml +31 -0
  72. data/samples/portfolios_sample.yaml +121 -0
  73. data/samples/project_memberships_sample.yaml +21 -0
  74. data/samples/project_statuses_sample.yaml +41 -0
  75. data/samples/projects_sample.yaml +181 -0
  76. data/samples/sections_sample.yaml +71 -0
  77. data/samples/stories_sample.yaml +51 -0
  78. data/samples/tags_sample.yaml +81 -0
  79. data/samples/tasks_sample.yaml +261 -0
  80. data/samples/team_memberships_sample.yaml +41 -0
  81. data/samples/teams_sample.yaml +51 -0
  82. data/samples/typeahead_sample.yaml +11 -0
  83. data/samples/user_task_lists_sample.yaml +21 -0
  84. data/samples/users_sample.yaml +51 -0
  85. data/samples/webhooks_sample.yaml +41 -0
  86. data/samples/workspace_memberships_sample.yaml +31 -0
  87. data/samples/workspaces_sample.yaml +51 -0
  88. data/swagger_templates/api.mustache +41 -0
  89. data/swagger_templates/api_doc.mustache +12 -0
  90. data/swagger_templates/ruby-config.json +6 -0
  91. metadata +70 -13
@@ -1,5 +1,4 @@
1
- ### WARNING: This file is auto-generated by the asana-api-meta repo. Do not
2
- ### edit it manually.
1
+ require_relative 'gen/user_task_lists_base'
3
2
 
4
3
  module Asana
5
4
  module Resources
@@ -14,11 +13,9 @@ module Asana
14
13
  # approach; read up on [task
15
14
  # auto-promotion](/guide/help/fundamentals/my-tasks#gl-auto-promote) for more
16
15
  # infomation.
17
- class UserTaskList < Resource
16
+ class UserTaskList < UserTaskListsBase
18
17
 
19
18
 
20
- attr_reader :id
21
-
22
19
  attr_reader :gid
23
20
 
24
21
  attr_reader :resource_type
@@ -1,5 +1,4 @@
1
- ### WARNING: This file is auto-generated by the asana-api-meta repo. Do not
2
- ### edit it manually.
1
+ require_relative 'gen/webhooks_base'
3
2
 
4
3
  module Asana
5
4
  module Resources
@@ -49,11 +48,9 @@ module Asana
49
48
  #
50
49
  # Webhooks themselves contain only the information necessary to deliver the
51
50
  # events to the desired target as they are generated.
52
- class Webhook < Resource
51
+ class Webhook < WebhooksBase
53
52
 
54
53
 
55
- attr_reader :id
56
-
57
54
  attr_reader :gid
58
55
 
59
56
  attr_reader :resource_type
@@ -1,5 +1,4 @@
1
- ### WARNING: This file is auto-generated by the asana-api-meta repo. Do not
2
- ### edit it manually.
1
+ require_relative 'gen/workspaces_base'
3
2
 
4
3
  module Asana
5
4
  module Resources
@@ -17,10 +16,7 @@ module Asana
17
16
  # using workspace-based APIs for organizations. Currently, and until after
18
17
  # some reasonable grace period following any further announcements, you can
19
18
  # still reference organizations in any `workspace` parameter.
20
- class Workspace < Resource
21
-
22
-
23
- attr_reader :id
19
+ class Workspace < WorkspacesBase
24
20
 
25
21
  attr_reader :gid
26
22
 
@@ -0,0 +1,32 @@
1
+ require_relative 'gen/workspace_memberships_base'
2
+
3
+ module Asana
4
+ module Resources
5
+ class WorkspaceMembership < WorkspaceMembershipsBase
6
+
7
+
8
+ attr_reader :gid
9
+
10
+ attr_reader :resource_type
11
+
12
+ attr_reader :user
13
+
14
+ attr_reader :workspace
15
+
16
+ attr_reader :user_task_list
17
+
18
+ attr_reader :is_admin
19
+
20
+ attr_reader :is_active
21
+
22
+ attr_reader :is_guest
23
+
24
+ class << self
25
+ # Returns the plural name of the resource.
26
+ def plural_name
27
+ 'workspace_memberships'
28
+ end
29
+ end
30
+ end
31
+ end
32
+ end
@@ -1,5 +1,5 @@
1
1
  #:nodoc:
2
2
  module Asana
3
3
  # Public: Version of the gem.
4
- VERSION = '0.9.2'
4
+ VERSION = '0.10.3'
5
5
  end
@@ -0,0 +1,41 @@
1
+ attachments:
2
+ create_attachment_for_task: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.attachments.create_attachment_for_task(task_gid: 'task_gid', field: "value", field: "value", options: {pretty: true})
12
+ delete_attachment: >-
13
+ require 'asana'
14
+
15
+
16
+ client = Asana::Client.new do |c|
17
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
18
+ end
19
+
20
+
21
+ result = client.attachments.delete_attachment(attachment_gid: 'attachment_gid', options: {pretty: true})
22
+ get_attachment: >-
23
+ require 'asana'
24
+
25
+
26
+ client = Asana::Client.new do |c|
27
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
28
+ end
29
+
30
+
31
+ result = client.attachments.get_attachment(attachment_gid: 'attachment_gid', param: "value", param: "value", options: {pretty: true})
32
+ get_attachments_for_task: >-
33
+ require 'asana'
34
+
35
+
36
+ client = Asana::Client.new do |c|
37
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
38
+ end
39
+
40
+
41
+ result = client.attachments.get_attachments_for_task(task_gid: 'task_gid', param: "value", param: "value", options: {pretty: true})
@@ -0,0 +1,11 @@
1
+ batchapi:
2
+ create_batch_request: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.batch_api.create_batch_request(field: "value", field: "value", options: {pretty: true})
@@ -0,0 +1,21 @@
1
+ customfieldsettings:
2
+ get_custom_field_settings_for_portfolio: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.custom_field_settings.get_custom_field_settings_for_portfolio(portfolio_gid: 'portfolio_gid', param: "value", param: "value", options: {pretty: true})
12
+ get_custom_field_settings_for_project: >-
13
+ require 'asana'
14
+
15
+
16
+ client = Asana::Client.new do |c|
17
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
18
+ end
19
+
20
+
21
+ result = client.custom_field_settings.get_custom_field_settings_for_project(project_gid: 'project_gid', param: "value", param: "value", options: {pretty: true})
@@ -0,0 +1,81 @@
1
+ customfields:
2
+ create_custom_field: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.custom_fields.create_custom_field(field: "value", field: "value", options: {pretty: true})
12
+ create_enum_option_for_custom_field: >-
13
+ require 'asana'
14
+
15
+
16
+ client = Asana::Client.new do |c|
17
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
18
+ end
19
+
20
+
21
+ result = client.custom_fields.create_enum_option_for_custom_field(custom_field_gid: 'custom_field_gid', field: "value", field: "value", options: {pretty: true})
22
+ delete_custom_field: >-
23
+ require 'asana'
24
+
25
+
26
+ client = Asana::Client.new do |c|
27
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
28
+ end
29
+
30
+
31
+ result = client.custom_fields.delete_custom_field(custom_field_gid: 'custom_field_gid', options: {pretty: true})
32
+ get_custom_field: >-
33
+ require 'asana'
34
+
35
+
36
+ client = Asana::Client.new do |c|
37
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
38
+ end
39
+
40
+
41
+ result = client.custom_fields.get_custom_field(custom_field_gid: 'custom_field_gid', param: "value", param: "value", options: {pretty: true})
42
+ get_custom_fields_for_workspace: >-
43
+ require 'asana'
44
+
45
+
46
+ client = Asana::Client.new do |c|
47
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
48
+ end
49
+
50
+
51
+ result = client.custom_fields.get_custom_fields_for_workspace(workspace_gid: 'workspace_gid', param: "value", param: "value", options: {pretty: true})
52
+ insert_enum_option_for_custom_field: >-
53
+ require 'asana'
54
+
55
+
56
+ client = Asana::Client.new do |c|
57
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
58
+ end
59
+
60
+
61
+ result = client.custom_fields.insert_enum_option_for_custom_field(custom_field_gid: 'custom_field_gid', field: "value", field: "value", options: {pretty: true})
62
+ update_custom_field: >-
63
+ require 'asana'
64
+
65
+
66
+ client = Asana::Client.new do |c|
67
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
68
+ end
69
+
70
+
71
+ result = client.custom_fields.update_custom_field(custom_field_gid: 'custom_field_gid', field: "value", field: "value", options: {pretty: true})
72
+ update_enum_option: >-
73
+ require 'asana'
74
+
75
+
76
+ client = Asana::Client.new do |c|
77
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
78
+ end
79
+
80
+
81
+ result = client.custom_fields.update_enum_option(enum_option_gid: 'enum_option_gid', field: "value", field: "value", options: {pretty: true})
@@ -0,0 +1,11 @@
1
+ events:
2
+ get_events: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.events.get_events(resource: '&#x27;resource_example&#x27;', param: "value", param: "value", options: {pretty: true})
@@ -0,0 +1,11 @@
1
+ jobs:
2
+ get_job: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.jobs.get_job(job_gid: 'job_gid', param: "value", param: "value", options: {pretty: true})
@@ -0,0 +1,21 @@
1
+ organizationexports:
2
+ create_organization_export: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.organization_exports.create_organization_export(field: "value", field: "value", options: {pretty: true})
12
+ get_organization_export: >-
13
+ require 'asana'
14
+
15
+
16
+ client = Asana::Client.new do |c|
17
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
18
+ end
19
+
20
+
21
+ result = client.organization_exports.get_organization_export(organization_export_gid: 'organization_export_gid', param: "value", param: "value", options: {pretty: true})
@@ -0,0 +1,31 @@
1
+ portfoliomemberships:
2
+ get_portfolio_membership: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.portfolio_memberships.get_portfolio_membership(portfolio_membership_gid: 'portfolio_membership_gid', param: "value", param: "value", options: {pretty: true})
12
+ get_portfolio_memberships: >-
13
+ require 'asana'
14
+
15
+
16
+ client = Asana::Client.new do |c|
17
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
18
+ end
19
+
20
+
21
+ result = client.portfolio_memberships.get_portfolio_memberships(param: "value", param: "value", options: {pretty: true})
22
+ get_portfolio_memberships_for_portfolio: >-
23
+ require 'asana'
24
+
25
+
26
+ client = Asana::Client.new do |c|
27
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
28
+ end
29
+
30
+
31
+ result = client.portfolio_memberships.get_portfolio_memberships_for_portfolio(portfolio_gid: 'portfolio_gid', param: "value", param: "value", options: {pretty: true})
@@ -0,0 +1,121 @@
1
+ portfolios:
2
+ add_custom_field_setting_for_portfolio: >-
3
+ require 'asana'
4
+
5
+
6
+ client = Asana::Client.new do |c|
7
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
8
+ end
9
+
10
+
11
+ result = client.portfolios.add_custom_field_setting_for_portfolio(portfolio_gid: 'portfolio_gid', field: "value", field: "value", options: {pretty: true})
12
+ add_item_for_portfolio: >-
13
+ require 'asana'
14
+
15
+
16
+ client = Asana::Client.new do |c|
17
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
18
+ end
19
+
20
+
21
+ result = client.portfolios.add_item_for_portfolio(portfolio_gid: 'portfolio_gid', field: "value", field: "value", options: {pretty: true})
22
+ add_members_for_portfolio: >-
23
+ require 'asana'
24
+
25
+
26
+ client = Asana::Client.new do |c|
27
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
28
+ end
29
+
30
+
31
+ result = client.portfolios.add_members_for_portfolio(portfolio_gid: 'portfolio_gid', field: "value", field: "value", options: {pretty: true})
32
+ create_portfolio: >-
33
+ require 'asana'
34
+
35
+
36
+ client = Asana::Client.new do |c|
37
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
38
+ end
39
+
40
+
41
+ result = client.portfolios.create_portfolio(field: "value", field: "value", options: {pretty: true})
42
+ delete_portfolio: >-
43
+ require 'asana'
44
+
45
+
46
+ client = Asana::Client.new do |c|
47
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
48
+ end
49
+
50
+
51
+ result = client.portfolios.delete_portfolio(portfolio_gid: 'portfolio_gid', options: {pretty: true})
52
+ get_items_for_portfolio: >-
53
+ require 'asana'
54
+
55
+
56
+ client = Asana::Client.new do |c|
57
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
58
+ end
59
+
60
+
61
+ result = client.portfolios.get_items_for_portfolio(portfolio_gid: 'portfolio_gid', param: "value", param: "value", options: {pretty: true})
62
+ get_portfolio: >-
63
+ require 'asana'
64
+
65
+
66
+ client = Asana::Client.new do |c|
67
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
68
+ end
69
+
70
+
71
+ result = client.portfolios.get_portfolio(portfolio_gid: 'portfolio_gid', param: "value", param: "value", options: {pretty: true})
72
+ get_portfolios: >-
73
+ require 'asana'
74
+
75
+
76
+ client = Asana::Client.new do |c|
77
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
78
+ end
79
+
80
+
81
+ result = client.portfolios.get_portfolios(workspace: '&#x27;workspace_example&#x27;', owner: '&#x27;owner_example&#x27;', param: "value", param: "value", options: {pretty: true})
82
+ remove_custom_field_setting_for_portfolio: >-
83
+ require 'asana'
84
+
85
+
86
+ client = Asana::Client.new do |c|
87
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
88
+ end
89
+
90
+
91
+ result = client.portfolios.remove_custom_field_setting_for_portfolio(portfolio_gid: 'portfolio_gid', field: "value", field: "value", options: {pretty: true})
92
+ remove_item_for_portfolio: >-
93
+ require 'asana'
94
+
95
+
96
+ client = Asana::Client.new do |c|
97
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
98
+ end
99
+
100
+
101
+ result = client.portfolios.remove_item_for_portfolio(portfolio_gid: 'portfolio_gid', field: "value", field: "value", options: {pretty: true})
102
+ remove_members_for_portfolio: >-
103
+ require 'asana'
104
+
105
+
106
+ client = Asana::Client.new do |c|
107
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
108
+ end
109
+
110
+
111
+ result = client.portfolios.remove_members_for_portfolio(portfolio_gid: 'portfolio_gid', field: "value", field: "value", options: {pretty: true})
112
+ update_portfolio: >-
113
+ require 'asana'
114
+
115
+
116
+ client = Asana::Client.new do |c|
117
+ c.authentication :access_token, 'PERSONAL_ACCESS_TOKEN'
118
+ end
119
+
120
+
121
+ result = client.portfolios.update_portfolio(portfolio_gid: 'portfolio_gid', field: "value", field: "value", options: {pretty: true})