1
0
Fork 0
mirror of synced 2024-07-02 13:10:38 +12:00

Updated SDK

This commit is contained in:
eldadfux 2019-09-21 19:53:41 +03:00
parent 503561dad1
commit 58c91febbd
26 changed files with 140 additions and 130 deletions

View file

@ -19,7 +19,7 @@ Add this to your package's pubspec.yaml file:
```yml ```yml
dependencies: dependencies:
appwrite: ^0.0.1 appwrite: ^0.0.2
``` ```
You can install packages from the command line: You can install packages from the command line:

View file

@ -12,7 +12,7 @@ class Client {
this.endPoint = 'https://appwrite.test/v1'; this.endPoint = 'https://appwrite.test/v1';
this.headers = { this.headers = {
'content-type': 'application/json', 'content-type': 'application/json',
'x-sdk-version': 'appwrite:dart:0.0.1', 'x-sdk-version': 'appwrite:dart:0.0.2',
}; };
this.selfSigned = false; this.selfSigned = false;

View file

@ -15,11 +15,11 @@ class Auth extends Service {
/// the only valid redirect URL's are the once from domains you have set when /// the only valid redirect URL's are the once from domains you have set when
/// added your platforms in the console interface. /// added your platforms in the console interface.
/// ///
/// When accessing this route using Javascript from the browser, success and /// When not using the success or failure redirect arguments this endpoint will
/// failure parameter URLs are required. Appwrite server will respond with a /// result with a 200 status code and the user account object on success and
/// 301 redirect status code and will set the user session cookie. This /// with 401 status error on failure. This behavior was applied to help the web
/// behavior is enforced because modern browsers are limiting 3rd party cookies /// clients deal with browsers who don't allow to set 3rd party HTTP cookies
/// in XHR of fetch request to protect user privacy. /// needed for saving the account session token.
Future<Response> login({email, password, success, failure}) async { Future<Response> login({email, password, success, failure}) async {
String path = '/auth/login'; String path = '/auth/login';
@ -80,12 +80,12 @@ class Auth extends Service {
/// values attached to the URL query string. Use the query string params to /// values attached to the URL query string. Use the query string params to
/// submit a request to the /auth/password/reset endpoint to complete the /// submit a request to the /auth/password/reset endpoint to complete the
/// process. /// process.
Future<Response> recovery({email, confirmation}) async { Future<Response> recovery({email, redirect}) async {
String path = '/auth/recovery'; String path = '/auth/recovery';
Map<String, dynamic> params = { Map<String, dynamic> params = {
'email': email, 'email': email,
'confirmation': confirmation, 'redirect': redirect,
}; };
return await this.client.call('post', path: path, params: params); return await this.client.call('post', path: path, params: params);
@ -117,7 +117,7 @@ class Auth extends Service {
/// ///
/// If registration completes successfully user will be sent with a /// If registration completes successfully user will be sent with a
/// confirmation email in order to confirm he is the owner of the account email /// confirmation email in order to confirm he is the owner of the account email
/// address. Use the confirmation parameter to redirect the user from the /// address. Use the redirect parameter to redirect the user from the
/// confirmation email back to your app. When the user is redirected, use the /// confirmation email back to your app. When the user is redirected, use the
/// /auth/confirm endpoint to complete the account confirmation. /// /auth/confirm endpoint to complete the account confirmation.
/// ///
@ -126,18 +126,18 @@ class Auth extends Service {
/// the only valid redirect URL&#039;s are the once from domains you have set when /// the only valid redirect URL&#039;s are the once from domains you have set when
/// added your platforms in the console interface. /// added your platforms in the console interface.
/// ///
/// When accessing this route using Javascript from the browser, success and /// When not using the success or failure redirect arguments this endpoint will
/// failure parameter URLs are required. Appwrite server will respond with a /// result with a 200 status code and the user account object on success and
/// 301 redirect status code and will set the user session cookie. This /// with 401 status error on failure. This behavior was applied to help the web
/// behavior is enforced because modern browsers are limiting 3rd party cookies /// clients deal with browsers who don&#039;t allow to set 3rd party HTTP cookies
/// in XHR of fetch request to protect user privacy. /// needed for saving the account session token.
Future<Response> register({email, password, confirmation, success = null, failure = null, name = null}) async { Future<Response> register({email, password, redirect, success, failure, name = null}) async {
String path = '/auth/register'; String path = '/auth/register';
Map<String, dynamic> params = { Map<String, dynamic> params = {
'email': email, 'email': email,
'password': password, 'password': password,
'confirmation': confirmation, 'redirect': redirect,
'success': success, 'success': success,
'failure': failure, 'failure': failure,
'name': name, 'name': name,
@ -167,11 +167,11 @@ class Auth extends Service {
/// Attacks](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) /// Attacks](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md)
/// the only valid redirect URL&#039;s are the once from domains you have set when /// the only valid redirect URL&#039;s are the once from domains you have set when
/// added your platforms in the console interface. /// added your platforms in the console interface.
Future<Response> confirmResend({confirmation}) async { Future<Response> confirmResend({redirect}) async {
String path = '/auth/register/confirm/resend'; String path = '/auth/register/confirm/resend';
Map<String, dynamic> params = { Map<String, dynamic> params = {
'confirmation': confirmation, 'redirect': redirect,
}; };
return await this.client.call('post', path: path, params: params); return await this.client.call('post', path: path, params: params);

View file

@ -1,5 +1,5 @@
name: appwrite name: appwrite
version: 0.0.1 version: 0.0.2
description: 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) description: 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)
author: Appwrite Team <team@appwrite.io> author: Appwrite Team <team@appwrite.io>
homepage: https://github.com/appwrite/sdk-for-dart homepage: https://github.com/appwrite/sdk-for-dart

View file

@ -4,7 +4,7 @@ sdk
setProject('') setProject('')
; ;
let promise = sdk.auth.register('email@example.com', 'password', 'https://example.com'); let promise = sdk.auth.register('email@example.com', 'password', 'https://example.com', 'https://example.com', 'https://example.com');
promise.then(function (response) { promise.then(function (response) {
console.log(response); console.log(response);

View file

@ -4,7 +4,7 @@ sdk
setProject('') setProject('')
; ;
let promise = sdk.projects.createWebhook('[PROJECT_ID]', '[NAME]', [], '[URL]', 1); let promise = sdk.projects.createWebhook('[PROJECT_ID]', '[NAME]', [], '[URL]', 0);
promise.then(function (response) { promise.then(function (response) {
console.log(response); console.log(response);

View file

@ -4,7 +4,7 @@ sdk
setProject('') setProject('')
; ;
let promise = sdk.projects.updateWebhook('[PROJECT_ID]', '[WEBHOOK_ID]', '[NAME]', [], '[URL]', 0); let promise = sdk.projects.updateWebhook('[PROJECT_ID]', '[WEBHOOK_ID]', '[NAME]', [], '[URL]', 1);
promise.then(function (response) { promise.then(function (response) {
console.log(response); console.log(response);

View file

@ -2,7 +2,7 @@
"name": "appwrite", "name": "appwrite",
"homepage": "https://appwrite.io/support", "homepage": "https://appwrite.io/support",
"description": "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)", "description": "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)",
"version": "v1.0.20", "version": "1.0.21",
"license": "BSD-3-Clause", "license": "BSD-3-Clause",
"main": "src/sdk.js", "main": "src/sdk.js",
"repository": { "repository": {

View file

@ -138,7 +138,7 @@
globalParams.push({key: key, value: value}); globalParams.push({key: key, value: value});
}; };
addGlobalHeader('x-sdk-version', 'appwrite:javascript:v1.0.20'); addGlobalHeader('x-sdk-version', 'appwrite:javascript:1.0.21');
addGlobalHeader('content-type', ''); addGlobalHeader('content-type', '');
/** /**
@ -500,11 +500,11 @@
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* When accessing this route using Javascript from the browser, success and * When not using the success or failure redirect arguments this endpoint will
* failure parameter URLs are required. Appwrite server will respond with a * result with a 200 status code and the user account object on success and
* 301 redirect status code and will set the user session cookie. This * with 401 status error on failure. This behavior was applied to help the web
* behavior is enforced because modern browsers are limiting 3rd party cookies * clients deal with browsers who don't allow to set 3rd party HTTP cookies
* in XHR of fetch request to protect user privacy. * needed for saving the account session token.
* *
* @param {string} email * @param {string} email
* @param {string} password * @param {string} password
@ -648,16 +648,16 @@
* process. * process.
* *
* @param {string} email * @param {string} email
* @param {string} confirmation * @param {string} redirect
* @throws {Error} * @throws {Error}
* @return {Promise} */ * @return {Promise} */
recovery: function(email, confirmation) { recovery: function(email, redirect) {
if(email === undefined) { if(email === undefined) {
throw new Error('Missing required parameter: "email"'); throw new Error('Missing required parameter: "email"');
} }
if(confirmation === undefined) { if(redirect === undefined) {
throw new Error('Missing required parameter: "confirmation"'); throw new Error('Missing required parameter: "redirect"');
} }
let path = '/auth/recovery'; let path = '/auth/recovery';
@ -666,7 +666,7 @@
.post(path, {'content-type': 'application/json'}, .post(path, {'content-type': 'application/json'},
{ {
'email': email, 'email': email,
'confirmation': confirmation 'redirect': redirect
}); });
}, },
@ -727,7 +727,7 @@
* *
* If registration completes successfully user will be sent with a * If registration completes successfully user will be sent with a
* confirmation email in order to confirm he is the owner of the account email * confirmation email in order to confirm he is the owner of the account email
* address. Use the confirmation parameter to redirect the user from the * address. Use the redirect parameter to redirect the user from the
* confirmation email back to your app. When the user is redirected, use the * confirmation email back to your app. When the user is redirected, use the
* /auth/confirm endpoint to complete the account confirmation. * /auth/confirm endpoint to complete the account confirmation.
* *
@ -736,21 +736,21 @@
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* When accessing this route using Javascript from the browser, success and * When not using the success or failure redirect arguments this endpoint will
* failure parameter URLs are required. Appwrite server will respond with a * result with a 200 status code and the user account object on success and
* 301 redirect status code and will set the user session cookie. This * with 401 status error on failure. This behavior was applied to help the web
* behavior is enforced because modern browsers are limiting 3rd party cookies * clients deal with browsers who don't allow to set 3rd party HTTP cookies
* in XHR of fetch request to protect user privacy. * needed for saving the account session token.
* *
* @param {string} email * @param {string} email
* @param {string} password * @param {string} password
* @param {string} confirmation * @param {string} redirect
* @param {string} success * @param {string} success
* @param {string} failure * @param {string} failure
* @param {string} name * @param {string} name
* @throws {Error} * @throws {Error}
* @return {null} */ * @return {null} */
register: function(email, password, confirmation, success = '', failure = '', name = '') { register: function(email, password, redirect, success, failure, name = '') {
if(email === undefined) { if(email === undefined) {
throw new Error('Missing required parameter: "email"'); throw new Error('Missing required parameter: "email"');
} }
@ -759,8 +759,16 @@
throw new Error('Missing required parameter: "password"'); throw new Error('Missing required parameter: "password"');
} }
if(confirmation === undefined) { if(redirect === undefined) {
throw new Error('Missing required parameter: "confirmation"'); throw new Error('Missing required parameter: "redirect"');
}
if(success === undefined) {
throw new Error('Missing required parameter: "success"');
}
if(failure === undefined) {
throw new Error('Missing required parameter: "failure"');
} }
let path = '/auth/register'; let path = '/auth/register';
@ -768,7 +776,7 @@
return iframe('post', path, {project: config.project, return iframe('post', path, {project: config.project,
'email': email, 'email': email,
'password': password, 'password': password,
'confirmation': confirmation, 'redirect': redirect,
'success': success, 'success': success,
'failure': failure, 'failure': failure,
'name': name 'name': name
@ -818,12 +826,12 @@
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* @param {string} confirmation * @param {string} redirect
* @throws {Error} * @throws {Error}
* @return {Promise} */ * @return {Promise} */
confirmResend: function(confirmation) { confirmResend: function(redirect) {
if(confirmation === undefined) { if(redirect === undefined) {
throw new Error('Missing required parameter: "confirmation"'); throw new Error('Missing required parameter: "redirect"');
} }
let path = '/auth/register/confirm/resend'; let path = '/auth/register/confirm/resend';
@ -831,7 +839,7 @@
return http return http
.post(path, {'content-type': 'application/json'}, .post(path, {'content-type': 'application/json'},
{ {
'confirmation': confirmation 'redirect': redirect
}); });
} }
}; };

View file

@ -1,5 +1,5 @@
(function(window){window.Appwrite=function(){let config={endpoint:'https://appwrite.test/v1',project:'',key:'',locale:'',mode:'',};let setEndpoint=function(endpoint){config.endpoint=endpoint;return this};let setProject=function(value){http.addGlobalHeader('X-Appwrite-Project',value);config.project=value;return this};let setKey=function(value){http.addGlobalHeader('X-Appwrite-Key',value);config.key=value;return this};let setLocale=function(value){http.addGlobalHeader('X-Appwrite-Locale',value);config.locale=value;return this};let setMode=function(value){http.addGlobalHeader('X-Appwrite-Mode',value);config.mode=value;return this};let http=function(document){let globalParams=[],globalHeaders=[];let addParam=function(url,param,value){let a=document.createElement('a'),regex=/(?:\?|&amp;|&)+([^=]+)(?:=([^&]*))*/g;let match,str=[];a.href=url;param=encodeURIComponent(param);while(match=regex.exec(a.search))if(param!==match[1])str.push(match[1]+(match[2]?"="+match[2]:""));str.push(param+(value?"="+encodeURIComponent(value):""));a.search=str.join("&");return a.href};let buildQuery=function(params){let str=[];for(let p in params){if(Array.isArray(params[p])){for(let index=0;index<params[p].length;index++){let param=params[p][index];str.push(encodeURIComponent(p+'[]')+"="+encodeURIComponent(param))}}else{str.push(encodeURIComponent(p)+"="+encodeURIComponent(params[p]))}} (function(window){window.Appwrite=function(){let config={endpoint:'https://appwrite.test/v1',project:'',key:'',locale:'',mode:'',};let setEndpoint=function(endpoint){config.endpoint=endpoint;return this};let setProject=function(value){http.addGlobalHeader('X-Appwrite-Project',value);config.project=value;return this};let setKey=function(value){http.addGlobalHeader('X-Appwrite-Key',value);config.key=value;return this};let setLocale=function(value){http.addGlobalHeader('X-Appwrite-Locale',value);config.locale=value;return this};let setMode=function(value){http.addGlobalHeader('X-Appwrite-Mode',value);config.mode=value;return this};let http=function(document){let globalParams=[],globalHeaders=[];let addParam=function(url,param,value){let a=document.createElement('a'),regex=/(?:\?|&amp;|&)+([^=]+)(?:=([^&]*))*/g;let match,str=[];a.href=url;param=encodeURIComponent(param);while(match=regex.exec(a.search))if(param!==match[1])str.push(match[1]+(match[2]?"="+match[2]:""));str.push(param+(value?"="+encodeURIComponent(value):""));a.search=str.join("&");return a.href};let buildQuery=function(params){let str=[];for(let p in params){if(Array.isArray(params[p])){for(let index=0;index<params[p].length;index++){let param=params[p][index];str.push(encodeURIComponent(p+'[]')+"="+encodeURIComponent(param))}}else{str.push(encodeURIComponent(p)+"="+encodeURIComponent(params[p]))}}
return str.join("&")};let addGlobalHeader=function(key,value){globalHeaders[key]={key:key.toLowerCase(),value:value.toLowerCase()}};let addGlobalParam=function(key,value){globalParams.push({key:key,value:value})};addGlobalHeader('x-sdk-version','appwrite:javascript:v1.0.20');addGlobalHeader('content-type','');let call=function(method,path,headers={},params={},progress=null){let i;path=config.endpoint+path;if(-1===['GET','POST','PUT','DELETE','TRACE','HEAD','OPTIONS','CONNECT','PATCH'].indexOf(method)){throw new Error('var method must contain a valid HTTP method name')} return str.join("&")};let addGlobalHeader=function(key,value){globalHeaders[key]={key:key.toLowerCase(),value:value.toLowerCase()}};let addGlobalParam=function(key,value){globalParams.push({key:key,value:value})};addGlobalHeader('x-sdk-version','appwrite:javascript:1.0.21');addGlobalHeader('content-type','');let call=function(method,path,headers={},params={},progress=null){let i;path=config.endpoint+path;if(-1===['GET','POST','PUT','DELETE','TRACE','HEAD','OPTIONS','CONNECT','PATCH'].indexOf(method)){throw new Error('var method must contain a valid HTTP method name')}
if(typeof path!=='string'){throw new Error('var path must be of type string')} if(typeof path!=='string'){throw new Error('var path must be of type string')}
if(typeof headers!=='object'){throw new Error('var headers must be of type object')} if(typeof headers!=='object'){throw new Error('var headers must be of type object')}
for(i=0;i<globalParams.length;i++){path=addParam(path,globalParams[i].key,globalParams[i].value)} for(i=0;i<globalParams.length;i++){path=addParam(path,globalParams[i].key,globalParams[i].value)}
@ -26,19 +26,21 @@ let path='/auth/logout/{id}'.replace(new RegExp('{id}','g'),id);return http.dele
if(provider===undefined){throw new Error('Missing required parameter: "provider"')} if(provider===undefined){throw new Error('Missing required parameter: "provider"')}
if(code===undefined){throw new Error('Missing required parameter: "code"')} if(code===undefined){throw new Error('Missing required parameter: "code"')}
let path='/auth/oauth/callback/{provider}/{projectId}'.replace(new RegExp('{projectId}','g'),projectId).replace(new RegExp('{provider}','g'),provider);return http.get(path,{'content-type':'application/json'},{'code':code,'state':state})},oauth:function(provider,success='',failure=''){if(provider===undefined){throw new Error('Missing required parameter: "provider"')} let path='/auth/oauth/callback/{provider}/{projectId}'.replace(new RegExp('{projectId}','g'),projectId).replace(new RegExp('{provider}','g'),provider);return http.get(path,{'content-type':'application/json'},{'code':code,'state':state})},oauth:function(provider,success='',failure=''){if(provider===undefined){throw new Error('Missing required parameter: "provider"')}
let path='/auth/oauth/{provider}'.replace(new RegExp('{provider}','g'),provider);return http.get(path,{'content-type':'application/json'},{'success':success,'failure':failure})},recovery:function(email,confirmation){if(email===undefined){throw new Error('Missing required parameter: "email"')} let path='/auth/oauth/{provider}'.replace(new RegExp('{provider}','g'),provider);return http.get(path,{'content-type':'application/json'},{'success':success,'failure':failure})},recovery:function(email,redirect){if(email===undefined){throw new Error('Missing required parameter: "email"')}
if(confirmation===undefined){throw new Error('Missing required parameter: "confirmation"')} if(redirect===undefined){throw new Error('Missing required parameter: "redirect"')}
let path='/auth/recovery';return http.post(path,{'content-type':'application/json'},{'email':email,'confirmation':confirmation})},recoveryReset:function(userId,token,passwordA,passwordB){if(userId===undefined){throw new Error('Missing required parameter: "userId"')} let path='/auth/recovery';return http.post(path,{'content-type':'application/json'},{'email':email,'redirect':redirect})},recoveryReset:function(userId,token,passwordA,passwordB){if(userId===undefined){throw new Error('Missing required parameter: "userId"')}
if(token===undefined){throw new Error('Missing required parameter: "token"')} if(token===undefined){throw new Error('Missing required parameter: "token"')}
if(passwordA===undefined){throw new Error('Missing required parameter: "passwordA"')} if(passwordA===undefined){throw new Error('Missing required parameter: "passwordA"')}
if(passwordB===undefined){throw new Error('Missing required parameter: "passwordB"')} if(passwordB===undefined){throw new Error('Missing required parameter: "passwordB"')}
let path='/auth/recovery/reset';return http.put(path,{'content-type':'application/json'},{'userId':userId,'token':token,'password-a':passwordA,'password-b':passwordB})},register:function(email,password,confirmation,success='',failure='',name=''){if(email===undefined){throw new Error('Missing required parameter: "email"')} let path='/auth/recovery/reset';return http.put(path,{'content-type':'application/json'},{'userId':userId,'token':token,'password-a':passwordA,'password-b':passwordB})},register:function(email,password,redirect,success,failure,name=''){if(email===undefined){throw new Error('Missing required parameter: "email"')}
if(password===undefined){throw new Error('Missing required parameter: "password"')} if(password===undefined){throw new Error('Missing required parameter: "password"')}
if(confirmation===undefined){throw new Error('Missing required parameter: "confirmation"')} if(redirect===undefined){throw new Error('Missing required parameter: "redirect"')}
let path='/auth/register';return iframe('post',path,{project:config.project,'email':email,'password':password,'confirmation':confirmation,'success':success,'failure':failure,'name':name})},confirm:function(userId,token){if(userId===undefined){throw new Error('Missing required parameter: "userId"')} if(success===undefined){throw new Error('Missing required parameter: "success"')}
if(failure===undefined){throw new Error('Missing required parameter: "failure"')}
let path='/auth/register';return iframe('post',path,{project:config.project,'email':email,'password':password,'redirect':redirect,'success':success,'failure':failure,'name':name})},confirm:function(userId,token){if(userId===undefined){throw new Error('Missing required parameter: "userId"')}
if(token===undefined){throw new Error('Missing required parameter: "token"')} if(token===undefined){throw new Error('Missing required parameter: "token"')}
let path='/auth/register/confirm';return http.post(path,{'content-type':'application/json'},{'userId':userId,'token':token})},confirmResend:function(confirmation){if(confirmation===undefined){throw new Error('Missing required parameter: "confirmation"')} let path='/auth/register/confirm';return http.post(path,{'content-type':'application/json'},{'userId':userId,'token':token})},confirmResend:function(redirect){if(redirect===undefined){throw new Error('Missing required parameter: "redirect"')}
let path='/auth/register/confirm/resend';return http.post(path,{'content-type':'application/json'},{'confirmation':confirmation})}};let avatars={getBrowser:function(code,width=100,height=100,quality=100){if(code===undefined){throw new Error('Missing required parameter: "code"')} let path='/auth/register/confirm/resend';return http.post(path,{'content-type':'application/json'},{'redirect':redirect})}};let avatars={getBrowser:function(code,width=100,height=100,quality=100){if(code===undefined){throw new Error('Missing required parameter: "code"')}
let path='/avatars/browsers/{code}'.replace(new RegExp('{code}','g'),code);return http.get(path,{'content-type':'application/json'},{'width':width,'height':height,'quality':quality})},getCreditCard:function(code,width=100,height=100,quality=100){if(code===undefined){throw new Error('Missing required parameter: "code"')} let path='/avatars/browsers/{code}'.replace(new RegExp('{code}','g'),code);return http.get(path,{'content-type':'application/json'},{'width':width,'height':height,'quality':quality})},getCreditCard:function(code,width=100,height=100,quality=100){if(code===undefined){throw new Error('Missing required parameter: "code"')}
let path='/avatars/credit-cards/{code}'.replace(new RegExp('{code}','g'),code);return http.get(path,{'content-type':'application/json'},{'width':width,'height':height,'quality':quality})},getFavicon:function(url){if(url===undefined){throw new Error('Missing required parameter: "url"')} let path='/avatars/credit-cards/{code}'.replace(new RegExp('{code}','g'),code);return http.get(path,{'content-type':'application/json'},{'width':width,'height':height,'quality':quality})},getFavicon:function(url){if(url===undefined){throw new Error('Missing required parameter: "url"')}
let path='/avatars/favicon';return http.get(path,{'content-type':'application/json'},{'url':url})},getFlag:function(code,width=100,height=100,quality=100){if(code===undefined){throw new Error('Missing required parameter: "code"')} let path='/avatars/favicon';return http.get(path,{'content-type':'application/json'},{'url':url})},getFlag:function(code,width=100,height=100,quality=100){if(code===undefined){throw new Error('Missing required parameter: "code"')}

View file

@ -10,7 +10,7 @@ client
setKey('') setKey('')
; ;
let promise = auth.register('email@example.com', 'password', 'https://example.com'); let promise = auth.register('email@example.com', 'password', 'https://example.com', 'https://example.com', 'https://example.com');
promise.then(function (response) { promise.then(function (response) {
console.log(response); console.log(response);

View file

@ -10,7 +10,7 @@ client
setKey('') setKey('')
; ;
let promise = projects.createTask('[PROJECT_ID]', '[NAME]', 'play', '', 0, 'GET', 'https://example.com'); let promise = projects.createTask('[PROJECT_ID]', '[NAME]', 'play', '', 1, 'GET', 'https://example.com');
promise.then(function (response) { promise.then(function (response) {
console.log(response); console.log(response);

View file

@ -10,7 +10,7 @@ client
setKey('') setKey('')
; ;
let promise = projects.createWebhook('[PROJECT_ID]', '[NAME]', [], '[URL]', 1); let promise = projects.createWebhook('[PROJECT_ID]', '[NAME]', [], '[URL]', 0);
promise.then(function (response) { promise.then(function (response) {
console.log(response); console.log(response);

View file

@ -7,7 +7,7 @@ class Client {
this.endpoint = 'https://appwrite.test/v1'; this.endpoint = 'https://appwrite.test/v1';
this.headers = { this.headers = {
'content-type': '', 'content-type': '',
'x-sdk-version': 'appwrite:nodejs:v1.0.24', 'x-sdk-version': 'appwrite:nodejs:1.0.25',
}; };
this.selfSigned = false; this.selfSigned = false;
} }

View file

@ -14,11 +14,11 @@ class Auth extends Service {
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* When accessing this route using Javascript from the browser, success and * When not using the success or failure redirect arguments this endpoint will
* failure parameter URLs are required. Appwrite server will respond with a * result with a 200 status code and the user account object on success and
* 301 redirect status code and will set the user session cookie. This * with 401 status error on failure. This behavior was applied to help the web
* behavior is enforced because modern browsers are limiting 3rd party cookies * clients deal with browsers who don't allow to set 3rd party HTTP cookies
* in XHR of fetch request to protect user privacy. * needed for saving the account session token.
* *
* @param string email * @param string email
* @param string password * @param string password
@ -126,17 +126,17 @@ class Auth extends Service {
* process. * process.
* *
* @param string email * @param string email
* @param string confirmation * @param string redirect
* @throws Exception * @throws Exception
* @return {} * @return {}
*/ */
async recovery(email, confirmation) { async recovery(email, redirect) {
let path = '/auth/recovery'; let path = '/auth/recovery';
return await this.client.call('post', path, {'content-type': 'application/json'}, return await this.client.call('post', path, {'content-type': 'application/json'},
{ {
'email': email, 'email': email,
'confirmation': confirmation 'redirect': redirect
}); });
} }
@ -181,7 +181,7 @@ class Auth extends Service {
* *
* If registration completes successfully user will be sent with a * If registration completes successfully user will be sent with a
* confirmation email in order to confirm he is the owner of the account email * confirmation email in order to confirm he is the owner of the account email
* address. Use the confirmation parameter to redirect the user from the * address. Use the redirect parameter to redirect the user from the
* confirmation email back to your app. When the user is redirected, use the * confirmation email back to your app. When the user is redirected, use the
* /auth/confirm endpoint to complete the account confirmation. * /auth/confirm endpoint to complete the account confirmation.
* *
@ -190,29 +190,29 @@ class Auth extends Service {
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* When accessing this route using Javascript from the browser, success and * When not using the success or failure redirect arguments this endpoint will
* failure parameter URLs are required. Appwrite server will respond with a * result with a 200 status code and the user account object on success and
* 301 redirect status code and will set the user session cookie. This * with 401 status error on failure. This behavior was applied to help the web
* behavior is enforced because modern browsers are limiting 3rd party cookies * clients deal with browsers who don't allow to set 3rd party HTTP cookies
* in XHR of fetch request to protect user privacy. * needed for saving the account session token.
* *
* @param string email * @param string email
* @param string password * @param string password
* @param string confirmation * @param string redirect
* @param string success * @param string success
* @param string failure * @param string failure
* @param string name * @param string name
* @throws Exception * @throws Exception
* @return {} * @return {}
*/ */
async register(email, password, confirmation, success = '', failure = '', name = '') { async register(email, password, redirect, success, failure, name = '') {
let path = '/auth/register'; let path = '/auth/register';
return await this.client.call('post', path, {'content-type': 'application/json'}, return await this.client.call('post', path, {'content-type': 'application/json'},
{ {
'email': email, 'email': email,
'password': password, 'password': password,
'confirmation': confirmation, 'redirect': redirect,
'success': success, 'success': success,
'failure': failure, 'failure': failure,
'name': name 'name': name
@ -254,16 +254,16 @@ class Auth extends Service {
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* @param string confirmation * @param string redirect
* @throws Exception * @throws Exception
* @return {} * @return {}
*/ */
async confirmResend(confirmation) { async confirmResend(redirect) {
let path = '/auth/register/confirm/resend'; let path = '/auth/register/confirm/resend';
return await this.client.call('post', path, {'content-type': 'application/json'}, return await this.client.call('post', path, {'content-type': 'application/json'},
{ {
'confirmation': confirmation 'redirect': redirect
}); });
} }
} }

View file

@ -2,7 +2,7 @@
"name": "node-appwrite", "name": "node-appwrite",
"homepage": "https://appwrite.io/support", "homepage": "https://appwrite.io/support",
"description": "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)", "description": "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)",
"version": "v1.0.24", "version": "1.0.25",
"license": "BSD-3-Clause", "license": "BSD-3-Clause",
"main": "index.js", "main": "index.js",
"repository": { "repository": {

View file

@ -10,7 +10,7 @@ POST https://appwrite.test/v1/auth/login
Please notice that in order to avoid a [Redirect Attacks](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URL&#039;s are the once from domains you have set when added your platforms in the console interface. Please notice that in order to avoid a [Redirect Attacks](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URL&#039;s are the once from domains you have set when added your platforms in the console interface.
When accessing this route using Javascript from the browser, success and failure parameter URLs are required. Appwrite server will respond with a 301 redirect status code and will set the user session cookie. This behavior is enforced because modern browsers are limiting 3rd party cookies in XHR of fetch request to protect user privacy. ** When not using the success or failure redirect arguments this endpoint will result with a 200 status code and the user account object on success and with 401 status error on failure. This behavior was applied to help the web clients deal with browsers who don&#039;t allow to set 3rd party HTTP cookies needed for saving the account session token. **
### Parameters ### Parameters
@ -85,7 +85,7 @@ POST https://appwrite.test/v1/auth/recovery
| Field Name | Type | Description | Default | | Field Name | Type | Description | Default |
| --- | --- | --- | --- | | --- | --- | --- | --- |
| email | string | User account email address. | | | email | string | User account email address. | |
| confirmation | string | Reset page URL in your app to redirect user after reset token has been sent to user email. | | | redirect | string | Reset page in your app to redirect user after reset token has been sent to user email. | |
## Password Reset ## Password Reset
@ -114,11 +114,11 @@ POST https://appwrite.test/v1/auth/register
** Use this endpoint to allow a new user to register an account in your project. Use the success and failure URL&#039;s to redirect users back to your application after signup completes. ** Use this endpoint to allow a new user to register an account in your project. Use the success and failure URL&#039;s to redirect users back to your application after signup completes.
If registration completes successfully user will be sent with a confirmation email in order to confirm he is the owner of the account email address. Use the confirmation parameter to redirect the user from the confirmation email back to your app. When the user is redirected, use the /auth/confirm endpoint to complete the account confirmation. If registration completes successfully user will be sent with a confirmation email in order to confirm he is the owner of the account email address. Use the redirect parameter to redirect the user from the confirmation email back to your app. When the user is redirected, use the /auth/confirm endpoint to complete the account confirmation.
Please notice that in order to avoid a [Redirect Attacks](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URL&#039;s are the once from domains you have set when added your platforms in the console interface. Please notice that in order to avoid a [Redirect Attacks](https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Unvalidated_Redirects_and_Forwards_Cheat_Sheet.md) the only valid redirect URL&#039;s are the once from domains you have set when added your platforms in the console interface.
When accessing this route using Javascript from the browser, success and failure parameter URLs are required. Appwrite server will respond with a 301 redirect status code and will set the user session cookie. This behavior is enforced because modern browsers are limiting 3rd party cookies in XHR of fetch request to protect user privacy. ** When not using the success or failure redirect arguments this endpoint will result with a 200 status code and the user account object on success and with 401 status error on failure. This behavior was applied to help the web clients deal with browsers who don&#039;t allow to set 3rd party HTTP cookies needed for saving the account session token. **
### Parameters ### Parameters
@ -126,7 +126,7 @@ When accessing this route using Javascript from the browser, success and failure
| --- | --- | --- | --- | | --- | --- | --- | --- |
| email | string | Account email | | | email | string | Account email | |
| password | string | User password | | | password | string | User password | |
| confirmation | string | Confirmation URL to redirect user after confirm token has been sent to user email | | | redirect | string | Confirmation page to redirect user after confirm token has been sent to user email | |
| success | string | Redirect when registration succeed | | | success | string | Redirect when registration succeed | |
| failure | string | Redirect when registration failed | | | failure | string | Redirect when registration failed | |
| name | string | User name | | | name | string | User name | |
@ -160,5 +160,5 @@ Please notice that in order to avoid a [Redirect Attacks](https://github.com/OWA
| Field Name | Type | Description | Default | | Field Name | Type | Description | Default |
| --- | --- | --- | --- | | --- | --- | --- | --- |
| confirmation | string | Confirmation page to redirect user to your app after confirm token has been sent to user email. | | | redirect | string | Confirmation page to redirect user to your app after confirm token has been sent to user email. | |

View file

@ -12,4 +12,4 @@ $client
$auth = new Auth($client); $auth = new Auth($client);
$result = $auth->register('email@example.com', 'password', 'https://example.com'); $result = $auth->register('email@example.com', 'password', 'https://example.com', 'https://example.com', 'https://example.com');

View file

@ -37,7 +37,7 @@ class Client
*/ */
protected $headers = [ protected $headers = [
'content-type' => '', 'content-type' => '',
'x-sdk-version' => 'appwrite:php:v1.0.7', 'x-sdk-version' => 'appwrite:php:1.0.8',
]; ];
/** /**

View file

@ -20,11 +20,11 @@ class Auth extends Service
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* When accessing this route using Javascript from the browser, success and * When not using the success or failure redirect arguments this endpoint will
* failure parameter URLs are required. Appwrite server will respond with a * result with a 200 status code and the user account object on success and
* 301 redirect status code and will set the user session cookie. This * with 401 status error on failure. This behavior was applied to help the web
* behavior is enforced because modern browsers are limiting 3rd party cookies * clients deal with browsers who don't allow to set 3rd party HTTP cookies
* in XHR of fetch request to protect user privacy. * needed for saving the account session token.
* *
* @param string $email * @param string $email
* @param string $password * @param string $password
@ -142,17 +142,17 @@ class Auth extends Service
* process. * process.
* *
* @param string $email * @param string $email
* @param string $confirmation * @param string $redirect
* @throws Exception * @throws Exception
* @return array * @return array
*/ */
public function recovery($email, $confirmation) public function recovery($email, $redirect)
{ {
$path = str_replace([], [], '/auth/recovery'); $path = str_replace([], [], '/auth/recovery');
$params = []; $params = [];
$params['email'] = $email; $params['email'] = $email;
$params['confirmation'] = $confirmation; $params['redirect'] = $redirect;
return $this->client->call(Client::METHOD_POST, $path, [ return $this->client->call(Client::METHOD_POST, $path, [
], $params); ], $params);
@ -201,7 +201,7 @@ class Auth extends Service
* *
* If registration completes successfully user will be sent with a * If registration completes successfully user will be sent with a
* confirmation email in order to confirm he is the owner of the account email * confirmation email in order to confirm he is the owner of the account email
* address. Use the confirmation parameter to redirect the user from the * address. Use the redirect parameter to redirect the user from the
* confirmation email back to your app. When the user is redirected, use the * confirmation email back to your app. When the user is redirected, use the
* /auth/confirm endpoint to complete the account confirmation. * /auth/confirm endpoint to complete the account confirmation.
* *
@ -210,29 +210,29 @@ class Auth extends Service
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* When accessing this route using Javascript from the browser, success and * When not using the success or failure redirect arguments this endpoint will
* failure parameter URLs are required. Appwrite server will respond with a * result with a 200 status code and the user account object on success and
* 301 redirect status code and will set the user session cookie. This * with 401 status error on failure. This behavior was applied to help the web
* behavior is enforced because modern browsers are limiting 3rd party cookies * clients deal with browsers who don't allow to set 3rd party HTTP cookies
* in XHR of fetch request to protect user privacy. * needed for saving the account session token.
* *
* @param string $email * @param string $email
* @param string $password * @param string $password
* @param string $confirmation * @param string $redirect
* @param string $success * @param string $success
* @param string $failure * @param string $failure
* @param string $name * @param string $name
* @throws Exception * @throws Exception
* @return array * @return array
*/ */
public function register($email, $password, $confirmation, $success = '', $failure = '', $name = '') public function register($email, $password, $redirect, $success, $failure, $name = '')
{ {
$path = str_replace([], [], '/auth/register'); $path = str_replace([], [], '/auth/register');
$params = []; $params = [];
$params['email'] = $email; $params['email'] = $email;
$params['password'] = $password; $params['password'] = $password;
$params['confirmation'] = $confirmation; $params['redirect'] = $redirect;
$params['success'] = $success; $params['success'] = $success;
$params['failure'] = $failure; $params['failure'] = $failure;
$params['name'] = $name; $params['name'] = $name;
@ -278,16 +278,16 @@ class Auth extends Service
* the only valid redirect URL's are the once from domains you have set when * the only valid redirect URL's are the once from domains you have set when
* added your platforms in the console interface. * added your platforms in the console interface.
* *
* @param string $confirmation * @param string $redirect
* @throws Exception * @throws Exception
* @return array * @return array
*/ */
public function confirmResend($confirmation) public function confirmResend($redirect)
{ {
$path = str_replace([], [], '/auth/register/confirm/resend'); $path = str_replace([], [], '/auth/register/confirm/resend');
$params = []; $params = [];
$params['confirmation'] = $confirmation; $params['redirect'] = $redirect;
return $this->client->call(Client::METHOD_POST, $path, [ return $this->client->call(Client::METHOD_POST, $path, [
], $params); ], $params);

View file

@ -7,7 +7,7 @@ class Client:
self._endpoint = 'https://appwrite.test/v1' self._endpoint = 'https://appwrite.test/v1'
self._global_headers = { self._global_headers = {
'content-type': '', 'content-type': '',
'x-sdk-version': 'appwrite:python:v1.0.0', 'x-sdk-version': 'appwrite:python:1.0.0',
} }
def set_self_signed(self, status=True): def set_self_signed(self, status=True):

View file

@ -60,13 +60,13 @@ class Auth(Service):
return self.client.call('get', path, { return self.client.call('get', path, {
}, params) }, params)
def recovery(self, email, confirmation): def recovery(self, email, redirect):
"""Password Recovery""" """Password Recovery"""
params = {} params = {}
path = '/auth/recovery' path = '/auth/recovery'
params['email'] = email params['email'] = email
params['confirmation'] = confirmation params['redirect'] = redirect
return self.client.call('post', path, { return self.client.call('post', path, {
}, params) }, params)
@ -84,14 +84,14 @@ class Auth(Service):
return self.client.call('put', path, { return self.client.call('put', path, {
}, params) }, params)
def register(self, email, password, confirmation, success='', failure='', name=''): def register(self, email, password, redirect, success, failure, name=''):
"""Register User""" """Register User"""
params = {} params = {}
path = '/auth/register' path = '/auth/register'
params['email'] = email params['email'] = email
params['password'] = password params['password'] = password
params['confirmation'] = confirmation params['redirect'] = redirect
params['success'] = success params['success'] = success
params['failure'] = failure params['failure'] = failure
params['name'] = name params['name'] = name
@ -110,12 +110,12 @@ class Auth(Service):
return self.client.call('post', path, { return self.client.call('post', path, {
}, params) }, params)
def confirm_resend(self, confirmation): def confirm_resend(self, redirect):
"""Resend Confirmation""" """Resend Confirmation"""
params = {} params = {}
path = '/auth/register/confirm/resend' path = '/auth/register/confirm/resend'
params['confirmation'] = confirmation params['redirect'] = redirect
return self.client.call('post', path, { return self.client.call('post', path, {
}, params) }, params)

View file

@ -3,7 +3,7 @@ from distutils.core import setup
setup( setup(
name = 'appwrite', name = 'appwrite',
packages = ['appwrite'], packages = ['appwrite'],
version = 'v1.0.0', version = '1.0.0',
license='BSD-3-Clause', license='BSD-3-Clause',
description = '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)', description = '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)',
author = 'Appwrite Team', author = 'Appwrite Team',
@ -11,7 +11,7 @@ setup(
maintainer = 'Appwrite Team', maintainer = 'Appwrite Team',
maintainer_email = 'team@appwrite.io', maintainer_email = 'team@appwrite.io',
url = 'https://appwrite.io/support', url = 'https://appwrite.io/support',
download_url='https://github.com/appwrite/sdk-for-python/archive/v1.0.0.tar.gz', download_url='https://github.com/appwrite/sdk-for-python/archive/1.0.0.tar.gz',
# keywords = ['SOME', 'MEANINGFULL', 'KEYWORDS'], # keywords = ['SOME', 'MEANINGFULL', 'KEYWORDS'],
install_requires=[ install_requires=[
'requests', 'requests',

View file

@ -19,7 +19,7 @@ module Appwrite
@headers = { @headers = {
'content-type': '', 'content-type': '',
'user-agent': RUBY_PLATFORM + ':ruby-' + RUBY_VERSION, 'user-agent': RUBY_PLATFORM + ':ruby-' + RUBY_VERSION,
'x-sdk-version': 'appwrite:ruby:v1.0.0' 'x-sdk-version': 'appwrite:ruby:1.0.1'
} }
@endpoint = 'https://appwrite.test/v1'; @endpoint = 'https://appwrite.test/v1';
end end

View file

@ -63,12 +63,12 @@ module Appwrite
}, params); }, params);
end end
def recovery(email:, confirmation:) def recovery(email:, redirect:)
path = '/auth/recovery' path = '/auth/recovery'
params = { params = {
'email': email, 'email': email,
'confirmation': confirmation 'redirect': redirect
} }
return @client.call('post', path, { return @client.call('post', path, {
@ -89,13 +89,13 @@ module Appwrite
}, params); }, params);
end end
def register(email:, password:, confirmation:, success: '', failure: '', name: '') def register(email:, password:, redirect:, success:, failure:, name: '')
path = '/auth/register' path = '/auth/register'
params = { params = {
'email': email, 'email': email,
'password': password, 'password': password,
'confirmation': confirmation, 'redirect': redirect,
'success': success, 'success': success,
'failure': failure, 'failure': failure,
'name': name 'name': name
@ -117,11 +117,11 @@ module Appwrite
}, params); }, params);
end end
def confirm_resend(confirmation:) def confirm_resend(redirect:)
path = '/auth/register/confirm/resend' path = '/auth/register/confirm/resend'
params = { params = {
'confirmation': confirmation 'redirect': redirect
} }
return @client.call('post', path, { return @client.call('post', path, {

View file

@ -98,7 +98,7 @@ $cli
]; ];
foreach ($clients as $name => $client) { foreach ($clients as $name => $client) {
Console::success('Fetching API Spec for ' . $name . ' (' . $client['platform'] . ')'); Console::info('Fetching API Spec for ' . $name . ' (' . $client['platform'] . ')');
$spec = getSSLPage('https://appwrite.io/v1/open-api-2.json?extensions=1&platform=' . $client['platform']); $spec = getSSLPage('https://appwrite.io/v1/open-api-2.json?extensions=1&platform=' . $client['platform']);
$spec = getSSLPage('https://appwrite.test/v1/open-api-2.json?extensions=1&platform=' . $client['platform']); $spec = getSSLPage('https://appwrite.test/v1/open-api-2.json?extensions=1&platform=' . $client['platform']);