sc_api_download(profile, settings, file, destination)

Essa macro é utilizada para fazer o download dos arquivos armazenados nos serviços de Storage disponíveis no Scriptcase, são eles: Google Drive, DropBox e Amazon S3.

Antes de mais nada, é necessário a criação das chaves de utilização destas APIs, seja para utilização com a macro ou através da interface da ferramenta.

Veja abaixo como obter as credenciais de cada uma delas.

Veja a baixo os parâmetros em detalhes.

Parâmetro  Valor Descrição
profile

Exemplo de como o parâmetro deve ser informado.

'profile' => 'minha_api',

Este parâmetro aceita apenas o nome do perfil criado.

Clique aqui, para ver como criar um perfil.

Devemos informar o nome do perfil criando na opção APIs no menu Ferramentas.

Quando utilizado, este parâmetro carrega as configurações informadas na criação do perfil.

Quando utilizado, o parâmetro settings não precisar ser informado.

Veja o exemplo: Utilizando a macro com profile
settings

Exemplo de como o parâmetro deve ser informado.

'settings' => [
'app_name' => 'scriptcase',
'gateway' => 'dropbox',
'api_key' => '',
'api_secret' => '',
'access_token' => '',
],

Obs: Para mais informações sobre o parâmetro, veja a tabela exclusive do settings abaixo, para cada uma das APIs

Recebe um array com as credenciais de acesso referentes API que será utilizada.

Quando utilizado, o parâmetro profile não precisar ser informado.

file

Exemplo de como o parâmetro deve ser informado.

'file' => 'nome_do_arquivo.pdf',

Lista das opções aceitas:

  • {nome_do_campo}
  • [variável_global]
  • ‘nome_do_arquivo.doc’

Este parâmetro recebe o nome do arquivo que será baixando do servidor.

O nome do arquivo deve está acompanhado de sua extensão.

destination

Exemplo de como o parâmetro deve ser informado.

Utilizando um campo
'destination' => {nome_do_campo},

Informando uma String
'destination' => ‘caminho_do_arquivo/novo_nome.pdf’,

Lista das opções aceitas:

  • {nome_campo}
  • [variável_global]
  • ‘String’

Caminho local onde o arquivo será salvo após o download.

Devemos informar também um nome, com o qual o arquivo será salvo e sua extensão.

Obs:
O nome do arquivo não precisa ser o mesmo do arquivo original.

Como visto acima, o parâmetro settings recebe um o array com as credenciais de acesso referentes API utilizada.

Este parâmetro deve ser utilizado apenas quando não definimos um perfil no menu Ferramentas > API

Cada API possui suas próprias configurações para o parâmetro settings, veja abaixo como cada uma deve ser configurada.

Utilizando a macro com profile

A utilização da macro com um perfil, pede a criação prévia do mesmo.
Clique aqui, para ver como criar um perfil em cada uma das APIs de armazenamento disponíveis.

O perfil ou profile, contém os dados para utilização da API desejada, desta forma, ao utilizar um perfil na macro não se faz necessário utilizar o parâmetro settings.

O parâmetro profile aceita apenas o nome do perfil criado, para a utilização dinâmica da macro, será necessário utilizar o parâmetros settings.

Exemplo de uso da macro com o profile.

sc_api_download([
'profile' => 'minha_api'
 'file' => {arquivo},
 'destination' => {destination},
]);

Utilizando a macro com parâmetro settings

O array com as credenciais de acesso que deve ser passado na parâmetro settings varia de acordo com a API utilizada.

Veja abaixo como utilizar este parâmetro de acordo com cada uma das APIs disponíveis.

Ao utilizar o parâmetro settings na configuração na macro, não é necessário informar um profile.

Exemplo utilizando o parâmetro settings - API Google Drive

Primeiramente, devemos ter em mãos as credenciais para a utilização da API do Google Drive, clique aqui para saber como obtê-las.

Após a configuração das credenciais, veja abaixo todos os valores do array que devem ser passados no parâmetro settings utilizando a API do Google Drive.

Todos os valores abaixo são obrigatórios ao utilizarmos o parâmetro settings

Índice Valor Descrição
app_name

Exemplo de como o parâmetro deve ser informado.

'app_name' => 'scriptcase',

Este índice aceita apenas string

Nome da app informado na criação das credenciais de acesso.

 

gateway

Exemplo de como o parâmetro deve ser informado.

'gateway'  => 'google_driver',

Este índice aceita apenas string

Nome do gateway para identificar a API utilizada.

json_oauth

Exemplo de como o parâmetro deve ser informado.

'json_oauth'  => 'JSON',

Lista das opções aceitas:

  • ‘string’
  • {nome_campo}
  • $variavel

Recebe o conteúdo do arquivo (JSON) de autenticação gerado pelo usuário.

Este arquivo deve ser baixado após a criação das credenciais no site do google.

auth_code

Exemplo de como o parâmetro deve ser informado.

'auth_code'  => '5/4wHt7TBTY4MtvQ',

Lista das opções aceitas:

  • {nome_campo}
  • $variavel

Recebe o código auth_code, gerado após a configuração da API seguindo os passos descritos no tutorial:

Como gerar o auth_code para utilização da API do Google Driver

token_code

Exemplo de como o parâmetro deve ser informado.

'token_code'  => '4/4wHt7TBTY4MtvQ',

Lista das opções aceitas:

  • ‘string’
  • {nome_campo}
  • $variavel
É possível gerar o token_code utilizando nossa macro sc_api_gc_get_obj


Exemplos de utilização da macro com o Google Drive, utilizando o parâmetro settings

sc_api_download([
  'settings' => [
  'app_name' => {appname},
  'gateway' => 'google_drive',
  'json_oauth' => {jsonoauth},
  'auth_code' => {authcode},
  'token_code' => {tokencode},
  ],
'file' => {arquivo},
'destination' => {destination},
]);

Utilizando A Macro Com Settings - Dropbox

Primeiramente, devemos ter em mãos as credenciais para a utilização da API do Dropbox, clique aqui para saber como obtê-las.

Após a configuração das credenciais, veja abaixo todos os valores do array que devem ser passados no parâmetro settings utilizando a API do Dropbox.

Todos os valores abaixo são obrigatórios ao utilizarmos o parâmetro settings

Índice Valor Descrição
app_name

Exemplo de como o parâmetro deve ser informado.

'app_name' => 'scriptcase',

Este índice aceita apenas string

Nome da app informado na criação das credenciais de acesso.

 

gateway

Exemplo de como o parâmetro deve ser informado.

'gateway'  => 'google_driver',

Este índice aceita apenas string

Nome do gateway para identificar a API utilizada.

api_key

Exemplo de como o parâmetro deve ser informado.

'api_key’  => {nome_campo},

Lista das opções aceitas:

  • ‘string’
  • {nome_campo}
  • $variavel

Recebe o app key, disponibilizado ao configurar as credenciais da API.

 

api_secret

Exemplo de como o parâmetro deve ser informado.

'api_secret’  => {nome_campo},

Lista das opções aceitas:

  • ‘string’
  • {nome_campo}
  • $variavel

Recebe o app secret, disponibilizado ao configurar as credenciais da API.

 

 

Exemplos de utilização da macro com o Dropbox, utilizando o parâmetro settings

sc_api_download([
'settings' => [

  'gateway' => 'dropbox',
  'api_key' => {apikey},
  'api_secret' => {apisecret},
  'access_token' => {accesstoken},
  ],
'file' => {arquivo},
'destination' => {destination},
]);

 

Utilizando A Macro Com Settings - Amazon S3

Devemos ter em mãos as credenciais para a utilização da API de armazenamento do Amazon S3, clique aqui para saber como obtê-las.

Após a configuração das credenciais, veja abaixo todos os valores do array que devem ser passados no parâmetro settings utilizando a API da Amazon S3.

Todos os valores abaixo são obrigatórios ao utilizarmos o parâmetro settings

Índice Valor Descrição
app_name

Exemplo de como o parâmetro deve ser informado.

'app_name' => 'scriptcase',

Este índice aceita apenas string

Nome da app informado na criação das credenciais de acesso.

 

gateway

Exemplo de como o parâmetro deve ser informado.

'gateway'  => 'google_driver',

Este índice aceita apenas string

Nome do gateway para identificar a API utilizada.

api_key

Exemplo de como o parâmetro deve ser informado.

'api_key’  => {nome_campo},

Lista das opções aceitas:

  • ‘string’
  • {nome_campo}
  • $variavel

Recebe o app key, disponibilizado ao configurar as credenciais da API.

 

api_secret

Exemplo de como o parâmetro deve ser informado.

'api_secret’  => {nome_campo},

Lista das opções aceitas:

  • ‘string’
  • {nome_campo}
  • $variavel

Recebe o app secret, disponibilizado ao configurar as credenciais da API.

 

region

Exemplo de como o parâmetro deve ser informado.

'region'  => 'us-east-1',

O parâmetro region da macro aceita apenas o código da região.
Para facilitar, segue link para verificação do código de cada região.

https://docs.aws.amazon.com/general/latest/gr/rande.html

Recebe o código da região, o mesmo utilizado na criação das credenciais.

 

bucket

Exemplo de como o parâmetro deve ser informado.

'bucket'  => 'bucket_name',

Lista das opções aceitas:

  • ‘string’
  • {nome_campo}
  • $variavel

Recebe o nome do bucket criado ao configurar as credenciais da API.

Exemplos de utilização da macro com o Amazon S3, utilizando o parâmetro settings

sc_api_download([
  'settings' => [
    'app_name' => 'scriptcase',
    'gateway' => 'S3',
    'api_key' => {apikey},
    'api_secret' => {apisecret},
    'region' => {api_region},
    'bucket' => {api_bucket},
  ],
'file' => {arquivo},
'destination' => {destination},
]);