Este tutorial usa a Flow Service API para explorar um sistema de armazenamento em nuvem de terceiros.
Este guia exige uma compreensão prática dos seguintes componentes do Adobe Experience Platform:
As seções a seguir fornecem informações adicionais que você precisará saber para se conectar com êxito a um sistema de armazenamento em nuvem usando a Flow Service API.
Para explorar um armazenamento em nuvem de terceiros usando Platform APIs, é necessário ter uma ID de conexão válida. Se você ainda não tiver uma conexão para o armazenamento com o qual deseja trabalhar, poderá criar uma através dos seguintes tutoriais:
Este tutorial fornece exemplos de chamadas de API para demonstrar como formatar suas solicitações. Isso inclui caminhos, cabeçalhos necessários e cargas de solicitação formatadas corretamente. O JSON de amostra retornado em respostas de API também é fornecido. Para obter informações sobre as convenções usadas na documentação para chamadas de API de amostra, consulte a seção sobre como ler chamadas de API de exemplo no guia de Experience Platform solução de problemas.
Para fazer chamadas para Platform APIs, você deve primeiro concluir o tutorial deautenticação. A conclusão do tutorial de autenticação fornece os valores para cada um dos cabeçalhos necessários em todas as chamadas de Experience Platform API, como mostrado abaixo:
Authorization: Bearer {ACCESS_TOKEN}
x-api-key: {API_KEY}
x-gw-ims-org-id: {IMS_ORG}
Todos os recursos em Experience Platform, incluindo os pertencentes a Flow Service, são isolados para caixas de proteção virtuais específicas. Todas as solicitações para Platform APIs exigem um cabeçalho que especifique o nome da caixa de proteção em que a operação ocorrerá:
x-sandbox-name: {SANDBOX_NAME}
Todas as solicitações que contêm uma carga (POST, PUT, PATCH) exigem um cabeçalho de tipo de mídia adicional:
Content-Type: application/json
Usando a ID de conexão para seu armazenamento em nuvem, você pode explorar arquivos e diretórios executando solicitações de GET. Ao executar solicitações de GET para explorar seu armazenamento em nuvem, você deve incluir os parâmetros de query listados na tabela abaixo:
Parâmetro | Descrição |
---|---|
objectType |
O tipo de objeto que você deseja explorar. Defina esse valor como:
|
object |
Esse parâmetro é necessário somente ao exibir um diretório específico. Seu valor representa o caminho do diretório que você deseja explorar. |
Use a chamada a seguir para localizar o caminho do arquivo que deseja trazer para Platform:
Formato da API
GET /connections/{CONNECTION_ID}/explore?objectType=root
GET /connections/{CONNECTION_ID}/explore?objectType=folder&object={PATH}
Parâmetro | Descrição |
---|---|
{CONNECTION_ID} |
A ID de conexão do conector de origem do armazenamento na nuvem. |
{PATH} |
O caminho de um diretório. |
Solicitação
curl -X GET \
'http://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID}/explore?objectType=folder&object=/some/path/' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida retorna uma matriz de arquivos e pastas encontrados no diretório consultado. Anote a path
propriedade do arquivo que deseja carregar, pois é necessário fornecê-lo na próxima etapa para inspecionar sua estrutura.
[
{
"type": "File",
"name": "data.csv",
"path": "/some/path/data.csv"
},
{
"type": "Folder",
"name": "foobar",
"path": "/some/path/foobar"
}
]
Para inspecionar a estrutura do arquivo de dados do seu armazenamento em nuvem, execute uma solicitação de GET enquanto fornece o caminho do arquivo e digite como um parâmetro de query.
É possível inspecionar a estrutura de um arquivo CSV ou TSV especificando um delimitador personalizado como um perímetro de query. Qualquer valor de caractere único é um delimitador de coluna permitido. Se não fornecido, uma vírgula (,)
é usada como valor padrão.
Formato da API
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&fileType={FILE_TYPE}
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&fileType={FILE_TYPE}&preview=true&fileType=delimited&columnDelimiter=;
GET /connections/{CONNECTION_ID}/explore?objectType=file&object={FILE_PATH}&fileType={FILE_TYPE}&preview=true&fileType=delimited&columnDelimiter=\t
Parâmetro | Descrição |
---|---|
{CONNECTION_ID} |
A ID de conexão do conector de origem do armazenamento na nuvem. |
{FILE_PATH} |
O caminho para o arquivo que você deseja inspecionar. |
{FILE_TYPE} |
O tipo do arquivo. Os tipos de arquivos suportados incluem:
|
columnDelimiter |
O valor de caractere único especificado como delimitador de coluna para inspecionar arquivos CSV ou TSV. Se o parâmetro não for fornecido, o valor assumirá como padrão uma vírgula (,) . |
Solicitação
curl -X GET \
'http://platform.adobe.io/data/foundation/flowservice/connections/{CONNECTION_ID}/explore?objectType=file&object=/some/path/data.csv&fileType=DELIMITED' \
-H 'Authorization: Bearer {ACCESS_TOKEN}' \
-H 'x-api-key: {API_KEY}' \
-H 'x-gw-ims-org-id: {IMS_ORG}' \
-H 'x-sandbox-name: {SANDBOX_NAME}'
Resposta
Uma resposta bem-sucedida retorna a estrutura do arquivo consultado, incluindo nomes de tabela e tipos de dados.
[
{
"name": "Id",
"type": "String"
},
{
"name": "FirstName",
"type": "String"
},
{
"name": "LastName",
"type": "String"
},
{
"name": "Email",
"type": "String"
},
{
"name": "Phone",
"type": "String"
}
]
Ao seguir este tutorial, você explorou seu sistema de armazenamento em nuvem, encontrou o caminho do arquivo que deseja inserir Platforme visualizou sua estrutura. Você pode usar essas informações no próximo tutorial para coletar dados do seu armazenamento em nuvem e trazê-los para a plataforma.