Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Accounts request_verification #13

Open
embarbosa opened this issue May 17, 2016 · 6 comments
Open

Accounts request_verification #13

embarbosa opened this issue May 17, 2016 · 6 comments

Comments

@embarbosa
Copy link

Ola Pessoal,
Boa noite!

Gostaria de saber como faço para passar o AccountId no resource Accounts, método request_verification.

Alguém pode me passar um exemplo que funcione?

Muito obrigado.

@vinone
Copy link
Contributor

vinone commented May 17, 2016

var url = "https://" + URL_DA_API_DO_IUGU + "accounts/" + accountId + "/request_verification";

Depois faça um POST para essa URL passando os parametros especificados aqui: https://iugu.com/referencias/api#enviar-verificação-de-sub-conta

@embarbosa
Copy link
Author

Vinicius,

Você está me dizendo para não usar a lib, correto?

No caso estava fazendo teste utilizando a lib.

Você precisou fazer criação e verificação de subconta? Se sim, pode compartilhar o código?

Muito obrigado

On May 17, 2016, at 08:14, Vinicius Mesquita [email protected] wrote:

var url = "https://" + URL_DA_API_DO_IUGU + "accounts/" + accountId + "/request_verification";

Depois faça um POST para essa URL passando os parametros especificados aqui: https://iugu.com/referencias/api#enviar-verificação-de-sub-conta


You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub

@vinone
Copy link
Contributor

vinone commented May 17, 2016

@embarbosa sim, essa parte eu fiz fora da lib.

O código tem muitas referencias a outras lib que uso, mas a estrutura base é essa:

                ...
        requestVerification: function(accountId, userToken, model){         
            var accountVerification = {...}; // Cria o objeto com os parametros da doc

            return getFile(accountVerification["files[id]"])
                .then(function(file){
                    accountVerification["files[id]"] = file;
                    return getFile(accountVerification["files[activity]"]);
                })
                .then(function(file) {
                    accountVerification["files[activity]"] = file;
                    return true;
                })
                .then(function(){
                    var url = "https://" + integration._api.host + integration._api.basePath + "accounts/" + accountId + "/request_verification";

                                     //Fiz a request usando CURL devido a problemas com o envio nos arquivos
                                    //estava quebrando o encoding
                    return low_level_request(userToken, url, accountVerification);
                });
        }

@embarbosa
Copy link
Author

Vinicius,

Este método, low_level_request, pode compartilhar o código? Muito obrigado.

On Tue, May 17, 2016 at 8:52 AM, Vinicius Mesquita <[email protected]

wrote:

@embarbosa https://github.com/embarbosa sim, essa parte eu fiz fora da
lib.

O código tem muitas referencias a outras lib que uso, mas a estrutura base
é essa:

            ...
    requestVerification: function(accountId, userToken, model){
        var accountVerification = {...}; // Cria o objeto com os parametros da doc

        return getFile(accountVerification["files[id]"])
            .then(function(file){
                accountVerification["files[id]"] = file;
                return getFile(accountVerification["files[activity]"]);
            })
            .then(function(file) {
                accountVerification["files[activity]"] = file;
                return true;
            })
            .then(function(){
                var url = "https://" + integration._api.host + integration._api.basePath + "accounts/" + accountId + "/request_verification";

                                 //Fiz a request usando CURL devido a problemas com o envio nos arquivos
                                //estava quebrando o encoding
                return low_level_request(userToken, url, accountVerification);
            });
    }


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#13 (comment)

@embarbosa
Copy link
Author

Ahhhh e se possível, me explique o que é integration._api.basePath no seu
código.

Muito obrigado

2016-05-17 11:50 GMT-03:00 Eduardo Moreira Barbosa <
[email protected]>:

Vinicius,

Este método, low_level_request, pode compartilhar o código? Muito
obrigado.

On Tue, May 17, 2016 at 8:52 AM, Vinicius Mesquita <
[email protected]> wrote:

@embarbosa https://github.com/embarbosa sim, essa parte eu fiz fora da
lib.

O código tem muitas referencias a outras lib que uso, mas a estrutura
base é essa:

            ...
    requestVerification: function(accountId, userToken, model){
        var accountVerification = {...}; // Cria o objeto com os parametros da doc

        return getFile(accountVerification["files[id]"])
            .then(function(file){
                accountVerification["files[id]"] = file;
                return getFile(accountVerification["files[activity]"]);
            })
            .then(function(file) {
                accountVerification["files[activity]"] = file;
                return true;
            })
            .then(function(){
                var url = "https://" + integration._api.host + integration._api.basePath + "accounts/" + accountId + "/request_verification";

                                 //Fiz a request usando CURL devido a problemas com o envio nos arquivos
                                //estava quebrando o encoding
                return low_level_request(userToken, url, accountVerification);
            });
    }


You are receiving this because you were mentioned.
Reply to this email directly or view it on GitHub
#13 (comment)

@vinone
Copy link
Contributor

vinone commented May 17, 2016

@embarbosa essa function faz uso de child process para enviar os documentos, por isso te aconselho a utilizá-la com cautela, eu fiz isso dentro de um contexto totalmente gerenciado

function low_level_request(userToken, url, data){
        var _ = require("underscore");
        var Q = require('q');
        var template = "curl <%= url %> -u <%= userToken %>:'' ";
        var arg = "-F '<%= key %>=<%= val %>'";
        var params = [_.template(template, {"url": url ,"userToken": userToken})];
        var exec = Q.denodeify(require('child_process').exec);
        var quotesLess = /'/g;
        var allowedQuote = "´";

        function cleaner(text){
            if(typeof text === 'string'){
                return text.replace(quotesLess, allowedQuote);
            }
        };

        Object.keys(data).forEach(function(key){
            params.push(_.template(arg, {"key": key, "val": cleaner(data[key])}));
        });

        return exec(params.join(" "));
    }

A variavel "integration._api.basePath" significa a versão da API que estou usando, no caso "/v1"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants