appwrite 1.0.8 → 1.0.9

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: d0bc4cb6c3724f6a09863b99a8d64cc370a095be
4
- data.tar.gz: 966ffe662214c48443f00d5c5cbe71fd22886fc9
2
+ SHA256:
3
+ metadata.gz: 435a9e4f801ceb45d990c57a8f5aaffdb8c4068978527c8b1d9ce619ea6a7e1c
4
+ data.tar.gz: 2171bf4a196ba398f3444dbe5d53e4082fc970a97eea5d7b13560c7250411220
5
5
  SHA512:
6
- metadata.gz: ec38335ee5fcfcf366b12d2127661473b5a3c7c4ca8c9874a7bf0d3cd43ea4dff518b839e70cafa465b1897ee738386b76d94352089d1a3e7f970c4a22327748
7
- data.tar.gz: 7c87448f83c74460b50f16ea1cdcbce645d2894d80b388b92323467d761e90928eb5f396655c464da3ba56fd1d7269234bc4474ca4086277c58f5bd8e4d3015e
6
+ metadata.gz: 06a40d4c714c50b9ab205e90c2bfe3adcd6814c9c53193c8266c295b4559bd04e253b5cd70a4adfe801ba1141a4669e66eef6b21101fcbd4ad85294aba4a98f3
7
+ data.tar.gz: dd3d40be334f7650b8664959f246063d55b2e0b8563bf0d592c64f229582fc05dc868f20194e9ed2f379f9a47d95d944bd2e2412936fc9b6bb4b1fa1ba98facc
data/README.md CHANGED
@@ -1,9 +1,9 @@
1
1
  # Appwrite SDK for Ruby
2
2
 
3
3
  ![License](https://img.shields.io/github/license/appwrite/sdk-for-ruby.svg?v=1)
4
- ![Version](https://img.shields.io/badge/api%20version-0.3.0-blue.svg?v=1)
4
+ ![Version](https://img.shields.io/badge/api%20version-0.5.0-blue.svg?v=1)
5
5
 
6
- **WORK IN PROGRESS - NOT READY FOR USAGE - Want to help us improve this client SDK? Send a pull request to Appwrite [SDK generator repository](https://github.com/appwrite/sdk-generator).**
6
+ **This SDK is compatible with Appwrite server version . For older versions, please check previous releases.**
7
7
 
8
8
  Appwrite backend as a service cuts up to 70% of the time and costs required for building a modern application. We abstract and simplify common development tasks behind a REST APIs, to help you develop your app in a fast and secure way. For full API documentation and tutorials go to [https://appwrite.io/docs](https://appwrite.io/docs)
9
9
 
data/appwrite.gemspec CHANGED
@@ -1,7 +1,7 @@
1
1
  Gem::Specification.new do |s|
2
2
 
3
3
  s.name = 'appwrite'
4
- s.version = '1.0.8'
4
+ s.version = '1.0.9'
5
5
  s.summary = "Appwrite backend as a service cuts up to 70% of the time and costs required for building a modern application. We abstract and simplify common development tasks behind a REST APIs, to help you develop your app in a fast and secure way. For full API documentation and tutorials go to [https://appwrite.io/docs](https://appwrite.io/docs)"
6
6
  s.author = 'Appwrite Team'
7
7
  s.homepage = 'https://appwrite.io/support'
data/lib/appwrite.rb CHANGED
@@ -3,12 +3,9 @@ require 'uri'
3
3
  require 'json'
4
4
  require_relative 'appwrite/client'
5
5
  require_relative 'appwrite/service'
6
- require_relative 'appwrite/services/account'
7
- require_relative 'appwrite/services/auth'
8
6
  require_relative 'appwrite/services/avatars'
9
7
  require_relative 'appwrite/services/database'
10
8
  require_relative 'appwrite/services/locale'
11
- require_relative 'appwrite/services/projects'
12
9
  require_relative 'appwrite/services/storage'
13
10
  require_relative 'appwrite/services/teams'
14
11
  require_relative 'appwrite/services/users'
@@ -20,7 +20,7 @@ module Appwrite
20
20
  @headers = {
21
21
  'content-type' => '',
22
22
  'user-agent' => RUBY_PLATFORM + ':ruby-' + RUBY_VERSION,
23
- 'x-sdk-version' => 'appwrite:ruby:1.0.8'
23
+ 'x-sdk-version' => 'appwrite:ruby:1.0.9'
24
24
  }
25
25
  @endpoint = 'https://appwrite.io/v1';
26
26
  end
@@ -62,7 +62,17 @@ module Appwrite
62
62
  end
63
63
 
64
64
  def call(method, path = '', headers = {}, params = {})
65
- uri = URI.parse(@endpoint + path + ((method == METHOD_GET) ? '?' + encode(params) : ''))
65
+ uri = URI.parse(@endpoint + path + ((method == METHOD_GET && params.length) ? '?' + encode(params) : ''))
66
+ return fetch(method, uri, headers, params)
67
+ end
68
+
69
+ protected
70
+
71
+ private
72
+
73
+ def fetch(method, uri, headers, params, limit = 5)
74
+ raise ArgumentError, 'Too Many HTTP Redirects' if limit == 0
75
+
66
76
  http = Net::HTTP.new(uri.host, uri.port)
67
77
  http.use_ssl = (uri.scheme == 'https')
68
78
  payload = ''
@@ -83,14 +93,18 @@ module Appwrite
83
93
  rescue => error
84
94
  raise 'Request Failed: ' + error.message
85
95
  end
96
+
97
+ # Handle Redirects
98
+ if (response.class == Net::HTTPRedirection || response.class == Net::HTTPMovedPermanently)
99
+ location = response['location']
100
+ uri = URI.parse(uri.scheme + "://" + uri.host + "" + location)
101
+
102
+ return fetch(method, uri, headers, {}, limit - 1)
103
+ end
86
104
 
87
105
  return JSON.parse(response.body);
88
106
  end
89
107
 
90
- protected
91
-
92
- private
93
-
94
108
  def encode(value, key = nil)
95
109
  case value
96
110
  when Hash then value.map { |k,v| encode(v, append_key(key,k)) }.join('&')
@@ -2,7 +2,7 @@ module Appwrite
2
2
  class Database < Service
3
3
 
4
4
  def list_collections(search: '', limit: 25, offset: 0, order_type: 'ASC')
5
- path = '/database'
5
+ path = '/database/collections'
6
6
 
7
7
  params = {
8
8
  'search': search,
@@ -17,7 +17,7 @@ module Appwrite
17
17
  end
18
18
 
19
19
  def create_collection(name:, read:, write:, rules:)
20
- path = '/database'
20
+ path = '/database/collections'
21
21
 
22
22
  params = {
23
23
  'name': name,
@@ -32,7 +32,7 @@ module Appwrite
32
32
  end
33
33
 
34
34
  def get_collection(collection_id:)
35
- path = '/database/{collectionId}'
35
+ path = '/database/collections/{collectionId}'
36
36
  .gsub('{collection_id}', collection_id)
37
37
 
38
38
  params = {
@@ -44,7 +44,7 @@ module Appwrite
44
44
  end
45
45
 
46
46
  def update_collection(collection_id:, name:, read:, write:, rules: [])
47
- path = '/database/{collectionId}'
47
+ path = '/database/collections/{collectionId}'
48
48
  .gsub('{collection_id}', collection_id)
49
49
 
50
50
  params = {
@@ -60,7 +60,7 @@ module Appwrite
60
60
  end
61
61
 
62
62
  def delete_collection(collection_id:)
63
- path = '/database/{collectionId}'
63
+ path = '/database/collections/{collectionId}'
64
64
  .gsub('{collection_id}', collection_id)
65
65
 
66
66
  params = {
@@ -71,8 +71,8 @@ module Appwrite
71
71
  }, params);
72
72
  end
73
73
 
74
- def list_documents(collection_id:, filters: [], offset: 0, limit: 50, order_field: '$uid', order_type: 'ASC', order_cast: 'string', search: '', first: 0, last: 0)
75
- path = '/database/{collectionId}/documents'
74
+ def list_documents(collection_id:, filters: [], offset: 0, limit: 50, order_field: '$id', order_type: 'ASC', order_cast: 'string', search: '', first: 0, last: 0)
75
+ path = '/database/collections/{collectionId}/documents'
76
76
  .gsub('{collection_id}', collection_id)
77
77
 
78
78
  params = {
@@ -93,7 +93,7 @@ module Appwrite
93
93
  end
94
94
 
95
95
  def create_document(collection_id:, data:, read:, write:, parent_document: '', parent_property: '', parent_property_type: 'assign')
96
- path = '/database/{collectionId}/documents'
96
+ path = '/database/collections/{collectionId}/documents'
97
97
  .gsub('{collection_id}', collection_id)
98
98
 
99
99
  params = {
@@ -111,7 +111,7 @@ module Appwrite
111
111
  end
112
112
 
113
113
  def get_document(collection_id:, document_id:)
114
- path = '/database/{collectionId}/documents/{documentId}'
114
+ path = '/database/collections/{collectionId}/documents/{documentId}'
115
115
  .gsub('{collection_id}', collection_id)
116
116
  .gsub('{document_id}', document_id)
117
117
 
@@ -124,7 +124,7 @@ module Appwrite
124
124
  end
125
125
 
126
126
  def update_document(collection_id:, document_id:, data:, read:, write:)
127
- path = '/database/{collectionId}/documents/{documentId}'
127
+ path = '/database/collections/{collectionId}/documents/{documentId}'
128
128
  .gsub('{collection_id}', collection_id)
129
129
  .gsub('{document_id}', document_id)
130
130
 
@@ -140,7 +140,7 @@ module Appwrite
140
140
  end
141
141
 
142
142
  def delete_document(collection_id:, document_id:)
143
- path = '/database/{collectionId}/documents/{documentId}'
143
+ path = '/database/collections/{collectionId}/documents/{documentId}'
144
144
  .gsub('{collection_id}', collection_id)
145
145
  .gsub('{document_id}', document_id)
146
146
 
@@ -1,7 +1,7 @@
1
1
  module Appwrite
2
2
  class Locale < Service
3
3
 
4
- def get_locale()
4
+ def get()
5
5
  path = '/locale'
6
6
 
7
7
  params = {
@@ -16,11 +16,11 @@ module Appwrite
16
16
  }, params);
17
17
  end
18
18
 
19
- def create_file(files:, read:, write:)
19
+ def create_file(file:, read:, write:)
20
20
  path = '/storage/files'
21
21
 
22
22
  params = {
23
- 'files': files,
23
+ 'file': file,
24
24
  'read': read,
25
25
  'write': write
26
26
  }
@@ -1,7 +1,7 @@
1
1
  module Appwrite
2
2
  class Teams < Service
3
3
 
4
- def list_teams(search: '', limit: 25, offset: 0, order_type: 'ASC')
4
+ def list(search: '', limit: 25, offset: 0, order_type: 'ASC')
5
5
  path = '/teams'
6
6
 
7
7
  params = {
@@ -16,7 +16,7 @@ module Appwrite
16
16
  }, params);
17
17
  end
18
18
 
19
- def create_team(name:, roles: ["owner"])
19
+ def create(name:, roles: ["owner"])
20
20
  path = '/teams'
21
21
 
22
22
  params = {
@@ -29,7 +29,7 @@ module Appwrite
29
29
  }, params);
30
30
  end
31
31
 
32
- def get_team(team_id:)
32
+ def get(team_id:)
33
33
  path = '/teams/{teamId}'
34
34
  .gsub('{team_id}', team_id)
35
35
 
@@ -41,7 +41,7 @@ module Appwrite
41
41
  }, params);
42
42
  end
43
43
 
44
- def update_team(team_id:, name:)
44
+ def update(team_id:, name:)
45
45
  path = '/teams/{teamId}'
46
46
  .gsub('{team_id}', team_id)
47
47
 
@@ -54,7 +54,7 @@ module Appwrite
54
54
  }, params);
55
55
  end
56
56
 
57
- def delete_team(team_id:)
57
+ def delete(team_id:)
58
58
  path = '/teams/{teamId}'
59
59
  .gsub('{team_id}', team_id)
60
60
 
@@ -66,8 +66,8 @@ module Appwrite
66
66
  }, params);
67
67
  end
68
68
 
69
- def get_team_members(team_id:)
70
- path = '/teams/{teamId}/members'
69
+ def get_memberships(team_id:)
70
+ path = '/teams/{teamId}/memberships'
71
71
  .gsub('{team_id}', team_id)
72
72
 
73
73
  params = {
@@ -78,7 +78,7 @@ module Appwrite
78
78
  }, params);
79
79
  end
80
80
 
81
- def create_team_membership(team_id:, email:, roles:, redirect:, name: '')
81
+ def create_membership(team_id:, email:, roles:, url:, name: '')
82
82
  path = '/teams/{teamId}/memberships'
83
83
  .gsub('{team_id}', team_id)
84
84
 
@@ -86,7 +86,7 @@ module Appwrite
86
86
  'email': email,
87
87
  'name': name,
88
88
  'roles': roles,
89
- 'redirect': redirect
89
+ 'url': url
90
90
  }
91
91
 
92
92
  return @client.call('post', path, {
@@ -94,7 +94,7 @@ module Appwrite
94
94
  }, params);
95
95
  end
96
96
 
97
- def delete_team_membership(team_id:, invite_id:)
97
+ def delete_membership(team_id:, invite_id:)
98
98
  path = '/teams/{teamId}/memberships/{inviteId}'
99
99
  .gsub('{team_id}', team_id)
100
100
  .gsub('{invite_id}', invite_id)
@@ -107,37 +107,6 @@ module Appwrite
107
107
  }, params);
108
108
  end
109
109
 
110
- def create_team_membership_resend(team_id:, invite_id:, redirect:)
111
- path = '/teams/{teamId}/memberships/{inviteId}/resend'
112
- .gsub('{team_id}', team_id)
113
- .gsub('{invite_id}', invite_id)
114
-
115
- params = {
116
- 'redirect': redirect
117
- }
118
-
119
- return @client.call('post', path, {
120
- 'content-type' => 'application/json',
121
- }, params);
122
- end
123
-
124
- def update_team_membership_status(team_id:, invite_id:, user_id:, secret:, success: '', failure: '')
125
- path = '/teams/{teamId}/memberships/{inviteId}/status'
126
- .gsub('{team_id}', team_id)
127
- .gsub('{invite_id}', invite_id)
128
-
129
- params = {
130
- 'userId': user_id,
131
- 'secret': secret,
132
- 'success': success,
133
- 'failure': failure
134
- }
135
-
136
- return @client.call('patch', path, {
137
- 'content-type' => 'application/json',
138
- }, params);
139
- end
140
-
141
110
 
142
111
  protected
143
112
 
@@ -1,7 +1,7 @@
1
1
  module Appwrite
2
2
  class Users < Service
3
3
 
4
- def list_users(search: '', limit: 25, offset: 0, order_type: 'ASC')
4
+ def list(search: '', limit: 25, offset: 0, order_type: 'ASC')
5
5
  path = '/users'
6
6
 
7
7
  params = {
@@ -16,7 +16,7 @@ module Appwrite
16
16
  }, params);
17
17
  end
18
18
 
19
- def create_user(email:, password:, name: '')
19
+ def create(email:, password:, name: '')
20
20
  path = '/users'
21
21
 
22
22
  params = {
@@ -30,7 +30,7 @@ module Appwrite
30
30
  }, params);
31
31
  end
32
32
 
33
- def get_user(user_id:)
33
+ def get(user_id:)
34
34
  path = '/users/{userId}'
35
35
  .gsub('{user_id}', user_id)
36
36
 
@@ -42,7 +42,7 @@ module Appwrite
42
42
  }, params);
43
43
  end
44
44
 
45
- def get_user_logs(user_id:)
45
+ def get_logs(user_id:)
46
46
  path = '/users/{userId}/logs'
47
47
  .gsub('{user_id}', user_id)
48
48
 
@@ -54,7 +54,7 @@ module Appwrite
54
54
  }, params);
55
55
  end
56
56
 
57
- def get_user_prefs(user_id:)
57
+ def get_prefs(user_id:)
58
58
  path = '/users/{userId}/prefs'
59
59
  .gsub('{user_id}', user_id)
60
60
 
@@ -66,7 +66,7 @@ module Appwrite
66
66
  }, params);
67
67
  end
68
68
 
69
- def update_user_prefs(user_id:, prefs:)
69
+ def update_prefs(user_id:, prefs:)
70
70
  path = '/users/{userId}/prefs'
71
71
  .gsub('{user_id}', user_id)
72
72
 
@@ -79,7 +79,7 @@ module Appwrite
79
79
  }, params);
80
80
  end
81
81
 
82
- def get_user_sessions(user_id:)
82
+ def get_sessions(user_id:)
83
83
  path = '/users/{userId}/sessions'
84
84
  .gsub('{user_id}', user_id)
85
85
 
@@ -91,7 +91,7 @@ module Appwrite
91
91
  }, params);
92
92
  end
93
93
 
94
- def delete_user_sessions(user_id:)
94
+ def delete_sessions(user_id:)
95
95
  path = '/users/{userId}/sessions'
96
96
  .gsub('{user_id}', user_id)
97
97
 
@@ -103,7 +103,7 @@ module Appwrite
103
103
  }, params);
104
104
  end
105
105
 
106
- def delete_user_session(user_id:, session_id:)
106
+ def delete_session(user_id:, session_id:)
107
107
  path = '/users/{userId}/sessions/:session'
108
108
  .gsub('{user_id}', user_id)
109
109
 
@@ -116,7 +116,7 @@ module Appwrite
116
116
  }, params);
117
117
  end
118
118
 
119
- def update_user_status(user_id:, status:)
119
+ def update_status(user_id:, status:)
120
120
  path = '/users/{userId}/status'
121
121
  .gsub('{user_id}', user_id)
122
122
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: appwrite
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.8
4
+ version: 1.0.9
5
5
  platform: ruby
6
6
  authors:
7
7
  - Appwrite Team
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-12-07 00:00:00.000000000 Z
11
+ date: 2020-03-19 00:00:00.000000000 Z
12
12
  dependencies: []
13
13
  description:
14
14
  email: team@appwrite.io
@@ -23,12 +23,9 @@ files:
23
23
  - lib/appwrite.rb
24
24
  - lib/appwrite/client.rb
25
25
  - lib/appwrite/service.rb
26
- - lib/appwrite/services/account.rb
27
- - lib/appwrite/services/auth.rb
28
26
  - lib/appwrite/services/avatars.rb
29
27
  - lib/appwrite/services/database.rb
30
28
  - lib/appwrite/services/locale.rb
31
- - lib/appwrite/services/projects.rb
32
29
  - lib/appwrite/services/storage.rb
33
30
  - lib/appwrite/services/teams.rb
34
31
  - lib/appwrite/services/users.rb
@@ -50,8 +47,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
50
47
  - !ruby/object:Gem::Version
51
48
  version: '0'
52
49
  requirements: []
53
- rubyforge_project:
54
- rubygems_version: 2.5.2.3
50
+ rubygems_version: 3.0.3
55
51
  signing_key:
56
52
  specification_version: 4
57
53
  summary: Appwrite backend as a service cuts up to 70% of the time and costs required
@@ -1,114 +0,0 @@
1
- module Appwrite
2
- class Account < Service
3
-
4
- def get()
5
- path = '/account'
6
-
7
- params = {
8
- }
9
-
10
- return @client.call('get', path, {
11
- 'content-type' => 'application/json',
12
- }, params);
13
- end
14
-
15
- def delete()
16
- path = '/account'
17
-
18
- params = {
19
- }
20
-
21
- return @client.call('delete', path, {
22
- 'content-type' => 'application/json',
23
- }, params);
24
- end
25
-
26
- def update_email(email:, password:)
27
- path = '/account/email'
28
-
29
- params = {
30
- 'email': email,
31
- 'password': password
32
- }
33
-
34
- return @client.call('patch', path, {
35
- 'content-type' => 'application/json',
36
- }, params);
37
- end
38
-
39
- def update_name(name:)
40
- path = '/account/name'
41
-
42
- params = {
43
- 'name': name
44
- }
45
-
46
- return @client.call('patch', path, {
47
- 'content-type' => 'application/json',
48
- }, params);
49
- end
50
-
51
- def update_password(password:, old_password:)
52
- path = '/account/password'
53
-
54
- params = {
55
- 'password': password,
56
- 'old-password': old_password
57
- }
58
-
59
- return @client.call('patch', path, {
60
- 'content-type' => 'application/json',
61
- }, params);
62
- end
63
-
64
- def get_prefs()
65
- path = '/account/prefs'
66
-
67
- params = {
68
- }
69
-
70
- return @client.call('get', path, {
71
- 'content-type' => 'application/json',
72
- }, params);
73
- end
74
-
75
- def update_prefs(prefs:)
76
- path = '/account/prefs'
77
-
78
- params = {
79
- 'prefs': prefs
80
- }
81
-
82
- return @client.call('patch', path, {
83
- 'content-type' => 'application/json',
84
- }, params);
85
- end
86
-
87
- def get_security()
88
- path = '/account/security'
89
-
90
- params = {
91
- }
92
-
93
- return @client.call('get', path, {
94
- 'content-type' => 'application/json',
95
- }, params);
96
- end
97
-
98
- def get_sessions()
99
- path = '/account/sessions'
100
-
101
- params = {
102
- }
103
-
104
- return @client.call('get', path, {
105
- 'content-type' => 'application/json',
106
- }, params);
107
- end
108
-
109
-
110
- protected
111
-
112
- private
113
- end
114
- end
@@ -1,131 +0,0 @@
1
- module Appwrite
2
- class Auth < Service
3
-
4
- def login(email:, password:, success: '', failure: '')
5
- path = '/auth/login'
6
-
7
- params = {
8
- 'email': email,
9
- 'password': password,
10
- 'success': success,
11
- 'failure': failure
12
- }
13
-
14
- return @client.call('post', path, {
15
- 'content-type' => 'application/json',
16
- }, params);
17
- end
18
-
19
- def oauth(provider:, success:, failure:)
20
- path = '/auth/login/oauth/{provider}'
21
- .gsub('{provider}', provider)
22
-
23
- params = {
24
- 'success': success,
25
- 'failure': failure
26
- }
27
-
28
- return @client.call('get', path, {
29
- 'content-type' => 'application/json',
30
- }, params);
31
- end
32
-
33
- def logout()
34
- path = '/auth/logout'
35
-
36
- params = {
37
- }
38
-
39
- return @client.call('delete', path, {
40
- 'content-type' => 'application/json',
41
- }, params);
42
- end
43
-
44
- def logout_by_session(id:)
45
- path = '/auth/logout/{id}'
46
- .gsub('{id}', id)
47
-
48
- params = {
49
- }
50
-
51
- return @client.call('delete', path, {
52
- 'content-type' => 'application/json',
53
- }, params);
54
- end
55
-
56
- def recovery(email:, reset:)
57
- path = '/auth/recovery'
58
-
59
- params = {
60
- 'email': email,
61
- 'reset': reset
62
- }
63
-
64
- return @client.call('post', path, {
65
- 'content-type' => 'application/json',
66
- }, params);
67
- end
68
-
69
- def recovery_reset(user_id:, token:, password_a:, password_b:)
70
- path = '/auth/recovery/reset'
71
-
72
- params = {
73
- 'userId': user_id,
74
- 'token': token,
75
- 'password-a': password_a,
76
- 'password-b': password_b
77
- }
78
-
79
- return @client.call('put', path, {
80
- 'content-type' => 'application/json',
81
- }, params);
82
- end
83
-
84
- def register(email:, password:, confirm:, success: '', failure: '', name: '')
85
- path = '/auth/register'
86
-
87
- params = {
88
- 'email': email,
89
- 'password': password,
90
- 'confirm': confirm,
91
- 'success': success,
92
- 'failure': failure,
93
- 'name': name
94
- }
95
-
96
- return @client.call('post', path, {
97
- 'content-type' => 'application/json',
98
- }, params);
99
- end
100
-
101
- def confirm(user_id:, token:)
102
- path = '/auth/register/confirm'
103
-
104
- params = {
105
- 'userId': user_id,
106
- 'token': token
107
- }
108
-
109
- return @client.call('post', path, {
110
- 'content-type' => 'application/json',
111
- }, params);
112
- end
113
-
114
- def confirm_resend(confirm:)
115
- path = '/auth/register/confirm/resend'
116
-
117
- params = {
118
- 'confirm': confirm
119
- }
120
-
121
- return @client.call('post', path, {
122
- 'content-type' => 'application/json',
123
- }, params);
124
- end
125
-
126
-
127
- protected
128
-
129
- private
130
- end
131
- end
@@ -1,410 +0,0 @@
1
- module Appwrite
2
- class Projects < Service
3
-
4
- def list_projects()
5
- path = '/projects'
6
-
7
- params = {
8
- }
9
-
10
- return @client.call('get', path, {
11
- 'content-type' => 'application/json',
12
- }, params);
13
- end
14
-
15
- def create_project(name:, team_id:, description: '', logo: '', url: '', legal_name: '', legal_country: '', legal_state: '', legal_city: '', legal_address: '', legal_tax_id: '')
16
- path = '/projects'
17
-
18
- params = {
19
- 'name': name,
20
- 'teamId': team_id,
21
- 'description': description,
22
- 'logo': logo,
23
- 'url': url,
24
- 'legalName': legal_name,
25
- 'legalCountry': legal_country,
26
- 'legalState': legal_state,
27
- 'legalCity': legal_city,
28
- 'legalAddress': legal_address,
29
- 'legalTaxId': legal_tax_id
30
- }
31
-
32
- return @client.call('post', path, {
33
- 'content-type' => 'application/json',
34
- }, params);
35
- end
36
-
37
- def get_project(project_id:)
38
- path = '/projects/{projectId}'
39
- .gsub('{project_id}', project_id)
40
-
41
- params = {
42
- }
43
-
44
- return @client.call('get', path, {
45
- 'content-type' => 'application/json',
46
- }, params);
47
- end
48
-
49
- def update_project(project_id:, name:, description: '', logo: '', url: '', legal_name: '', legal_country: '', legal_state: '', legal_city: '', legal_address: '', legal_tax_id: '')
50
- path = '/projects/{projectId}'
51
- .gsub('{project_id}', project_id)
52
-
53
- params = {
54
- 'name': name,
55
- 'description': description,
56
- 'logo': logo,
57
- 'url': url,
58
- 'legalName': legal_name,
59
- 'legalCountry': legal_country,
60
- 'legalState': legal_state,
61
- 'legalCity': legal_city,
62
- 'legalAddress': legal_address,
63
- 'legalTaxId': legal_tax_id
64
- }
65
-
66
- return @client.call('patch', path, {
67
- 'content-type' => 'application/json',
68
- }, params);
69
- end
70
-
71
- def delete_project(project_id:)
72
- path = '/projects/{projectId}'
73
- .gsub('{project_id}', project_id)
74
-
75
- params = {
76
- }
77
-
78
- return @client.call('delete', path, {
79
- 'content-type' => 'application/json',
80
- }, params);
81
- end
82
-
83
- def list_keys(project_id:)
84
- path = '/projects/{projectId}/keys'
85
- .gsub('{project_id}', project_id)
86
-
87
- params = {
88
- }
89
-
90
- return @client.call('get', path, {
91
- 'content-type' => 'application/json',
92
- }, params);
93
- end
94
-
95
- def create_key(project_id:, name:, scopes:)
96
- path = '/projects/{projectId}/keys'
97
- .gsub('{project_id}', project_id)
98
-
99
- params = {
100
- 'name': name,
101
- 'scopes': scopes
102
- }
103
-
104
- return @client.call('post', path, {
105
- 'content-type' => 'application/json',
106
- }, params);
107
- end
108
-
109
- def get_key(project_id:, key_id:)
110
- path = '/projects/{projectId}/keys/{keyId}'
111
- .gsub('{project_id}', project_id)
112
- .gsub('{key_id}', key_id)
113
-
114
- params = {
115
- }
116
-
117
- return @client.call('get', path, {
118
- 'content-type' => 'application/json',
119
- }, params);
120
- end
121
-
122
- def update_key(project_id:, key_id:, name:, scopes:)
123
- path = '/projects/{projectId}/keys/{keyId}'
124
- .gsub('{project_id}', project_id)
125
- .gsub('{key_id}', key_id)
126
-
127
- params = {
128
- 'name': name,
129
- 'scopes': scopes
130
- }
131
-
132
- return @client.call('put', path, {
133
- 'content-type' => 'application/json',
134
- }, params);
135
- end
136
-
137
- def delete_key(project_id:, key_id:)
138
- path = '/projects/{projectId}/keys/{keyId}'
139
- .gsub('{project_id}', project_id)
140
- .gsub('{key_id}', key_id)
141
-
142
- params = {
143
- }
144
-
145
- return @client.call('delete', path, {
146
- 'content-type' => 'application/json',
147
- }, params);
148
- end
149
-
150
- def update_project_o_auth(project_id:, provider:, app_id: '', secret: '')
151
- path = '/projects/{projectId}/oauth'
152
- .gsub('{project_id}', project_id)
153
-
154
- params = {
155
- 'provider': provider,
156
- 'appId': app_id,
157
- 'secret': secret
158
- }
159
-
160
- return @client.call('patch', path, {
161
- 'content-type' => 'application/json',
162
- }, params);
163
- end
164
-
165
- def list_platforms(project_id:)
166
- path = '/projects/{projectId}/platforms'
167
- .gsub('{project_id}', project_id)
168
-
169
- params = {
170
- }
171
-
172
- return @client.call('get', path, {
173
- 'content-type' => 'application/json',
174
- }, params);
175
- end
176
-
177
- def create_platform(project_id:, type:, name:, key: '', store: '', url: '')
178
- path = '/projects/{projectId}/platforms'
179
- .gsub('{project_id}', project_id)
180
-
181
- params = {
182
- 'type': type,
183
- 'name': name,
184
- 'key': key,
185
- 'store': store,
186
- 'url': url
187
- }
188
-
189
- return @client.call('post', path, {
190
- 'content-type' => 'application/json',
191
- }, params);
192
- end
193
-
194
- def get_platform(project_id:, platform_id:)
195
- path = '/projects/{projectId}/platforms/{platformId}'
196
- .gsub('{project_id}', project_id)
197
- .gsub('{platform_id}', platform_id)
198
-
199
- params = {
200
- }
201
-
202
- return @client.call('get', path, {
203
- 'content-type' => 'application/json',
204
- }, params);
205
- end
206
-
207
- def update_platform(project_id:, platform_id:, name:, key: '', store: '', url: '')
208
- path = '/projects/{projectId}/platforms/{platformId}'
209
- .gsub('{project_id}', project_id)
210
- .gsub('{platform_id}', platform_id)
211
-
212
- params = {
213
- 'name': name,
214
- 'key': key,
215
- 'store': store,
216
- 'url': url
217
- }
218
-
219
- return @client.call('put', path, {
220
- 'content-type' => 'application/json',
221
- }, params);
222
- end
223
-
224
- def delete_platform(project_id:, platform_id:)
225
- path = '/projects/{projectId}/platforms/{platformId}'
226
- .gsub('{project_id}', project_id)
227
- .gsub('{platform_id}', platform_id)
228
-
229
- params = {
230
- }
231
-
232
- return @client.call('delete', path, {
233
- 'content-type' => 'application/json',
234
- }, params);
235
- end
236
-
237
- def list_tasks(project_id:)
238
- path = '/projects/{projectId}/tasks'
239
- .gsub('{project_id}', project_id)
240
-
241
- params = {
242
- }
243
-
244
- return @client.call('get', path, {
245
- 'content-type' => 'application/json',
246
- }, params);
247
- end
248
-
249
- def create_task(project_id:, name:, status:, schedule:, security:, http_method:, http_url:, http_headers: [], http_user: '', http_pass: '')
250
- path = '/projects/{projectId}/tasks'
251
- .gsub('{project_id}', project_id)
252
-
253
- params = {
254
- 'name': name,
255
- 'status': status,
256
- 'schedule': schedule,
257
- 'security': security,
258
- 'httpMethod': http_method,
259
- 'httpUrl': http_url,
260
- 'httpHeaders': http_headers,
261
- 'httpUser': http_user,
262
- 'httpPass': http_pass
263
- }
264
-
265
- return @client.call('post', path, {
266
- 'content-type' => 'application/json',
267
- }, params);
268
- end
269
-
270
- def get_task(project_id:, task_id:)
271
- path = '/projects/{projectId}/tasks/{taskId}'
272
- .gsub('{project_id}', project_id)
273
- .gsub('{task_id}', task_id)
274
-
275
- params = {
276
- }
277
-
278
- return @client.call('get', path, {
279
- 'content-type' => 'application/json',
280
- }, params);
281
- end
282
-
283
- def update_task(project_id:, task_id:, name:, status:, schedule:, security:, http_method:, http_url:, http_headers: [], http_user: '', http_pass: '')
284
- path = '/projects/{projectId}/tasks/{taskId}'
285
- .gsub('{project_id}', project_id)
286
- .gsub('{task_id}', task_id)
287
-
288
- params = {
289
- 'name': name,
290
- 'status': status,
291
- 'schedule': schedule,
292
- 'security': security,
293
- 'httpMethod': http_method,
294
- 'httpUrl': http_url,
295
- 'httpHeaders': http_headers,
296
- 'httpUser': http_user,
297
- 'httpPass': http_pass
298
- }
299
-
300
- return @client.call('put', path, {
301
- 'content-type' => 'application/json',
302
- }, params);
303
- end
304
-
305
- def delete_task(project_id:, task_id:)
306
- path = '/projects/{projectId}/tasks/{taskId}'
307
- .gsub('{project_id}', project_id)
308
- .gsub('{task_id}', task_id)
309
-
310
- params = {
311
- }
312
-
313
- return @client.call('delete', path, {
314
- 'content-type' => 'application/json',
315
- }, params);
316
- end
317
-
318
- def get_project_usage(project_id:)
319
- path = '/projects/{projectId}/usage'
320
- .gsub('{project_id}', project_id)
321
-
322
- params = {
323
- }
324
-
325
- return @client.call('get', path, {
326
- 'content-type' => 'application/json',
327
- }, params);
328
- end
329
-
330
- def list_webhooks(project_id:)
331
- path = '/projects/{projectId}/webhooks'
332
- .gsub('{project_id}', project_id)
333
-
334
- params = {
335
- }
336
-
337
- return @client.call('get', path, {
338
- 'content-type' => 'application/json',
339
- }, params);
340
- end
341
-
342
- def create_webhook(project_id:, name:, events:, url:, security:, http_user: '', http_pass: '')
343
- path = '/projects/{projectId}/webhooks'
344
- .gsub('{project_id}', project_id)
345
-
346
- params = {
347
- 'name': name,
348
- 'events': events,
349
- 'url': url,
350
- 'security': security,
351
- 'httpUser': http_user,
352
- 'httpPass': http_pass
353
- }
354
-
355
- return @client.call('post', path, {
356
- 'content-type' => 'application/json',
357
- }, params);
358
- end
359
-
360
- def get_webhook(project_id:, webhook_id:)
361
- path = '/projects/{projectId}/webhooks/{webhookId}'
362
- .gsub('{project_id}', project_id)
363
- .gsub('{webhook_id}', webhook_id)
364
-
365
- params = {
366
- }
367
-
368
- return @client.call('get', path, {
369
- 'content-type' => 'application/json',
370
- }, params);
371
- end
372
-
373
- def update_webhook(project_id:, webhook_id:, name:, events:, url:, security:, http_user: '', http_pass: '')
374
- path = '/projects/{projectId}/webhooks/{webhookId}'
375
- .gsub('{project_id}', project_id)
376
- .gsub('{webhook_id}', webhook_id)
377
-
378
- params = {
379
- 'name': name,
380
- 'events': events,
381
- 'url': url,
382
- 'security': security,
383
- 'httpUser': http_user,
384
- 'httpPass': http_pass
385
- }
386
-
387
- return @client.call('put', path, {
388
- 'content-type' => 'application/json',
389
- }, params);
390
- end
391
-
392
- def delete_webhook(project_id:, webhook_id:)
393
- path = '/projects/{projectId}/webhooks/{webhookId}'
394
- .gsub('{project_id}', project_id)
395
- .gsub('{webhook_id}', webhook_id)
396
-
397
- params = {
398
- }
399
-
400
- return @client.call('delete', path, {
401
- 'content-type' => 'application/json',
402
- }, params);
403
- end
404
-
405
-
406
- protected
407
-
408
- private
409
- end
410
- end