|
Essa macro é utilizada para fazer o upload de arquivos na nuvem utilizando as APIs de Storage do Google, Amazon e DropBox.
Antes de mais nada, é necessário a criação das chaves de utilização da API, seja com a macro ou na interface dos campos.
Após obter as credenciais, siga com a configuração da macro.
Veja abaixo a lista de parâmetros.
| Paramêtros |
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.
Para mais detalhes veja 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' => {upload_nome_do_arquivo},
Lista das opções aceitas:
{upload_nome_do_arquivo}
[variável_global]
‘String do path do arquivo’
|
Este parâmetro recebe o caminho completo até o arquivo está localizado.
Ao utilizar um campo, deve ser do tipo upload nome do arquivo.
|
| parents |
Exemplo de como o parâmetro deve ser informado.
Utilizando um campo
'parents' => {nome_campo_texto},
Informando uma String
'parents' => ‘nome_da_pasta’,
Lista das opções aceitas:
{nome_campo_texto}
[variável_global]
‘Nome da pasta ou caminho local de armazenamento na nuvem’
|
Diretório onde o arquivo será armazenado
Quando não informado, o arquivo será armazenado na raiz do servidor de armazenamento.
|
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_upload([ 'profile' => 'minha_api', 'file' => {arquivo}, 'parents' => 'pasta_no_drive', ]);
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.
Utilizando a macro com 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:
|
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_upload([ 'settings' => [ 'app_name' => 'scriptcase', 'gateway' => 'google_drive', 'json_oauth' => '', 'auth_code' => '', 'token_code' => '', ], 'file' => {arquivo}, 'parents' => '', ]);
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_upload([ 'settings' => [ 'app_name' => 'scriptcase', 'gateway' => 'dropbox', 'api_key' => '', 'api_secret' => '', 'access_token' => '', ], 'file' => {arquivo}, 'parents' => '', ]);
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_upload([ 'settings' => [ 'app_name' => 'scriptcase', 'gateway' => 'S3', 'api_key' => '', 'api_secret' => '', 'region' => '', 'bucket' => '', ], 'file' => {arquivo}, 'parents' => '', ]);
|