Arquivos
Criado para:
- Administrador
Referência de Ponto de Extremidade de Arquivos
As assinaturas do Marketo permitem o armazenamento de arquivos arbitrários como imagens, scripts, documentos e folhas de estilos. Todos esses podem ser trabalhados remotamente por meio da REST API. O armazenamento disponível nas assinaturas do Marketo não é otimizado para aplicativos com uso intenso de largura de banda, portanto, devem ser usadas alternativas para os aplicativos adequados de transmissão contínua de áudio e vídeo.
Consultar
A consulta de arquivos é simples e segue os tipos de consulta padrão para ativos de por id, por nome e navegação.
Por ID
GET /rest/asset/v1/file/{id}.json
{
"success":true,
"warnings":[ ],
"errors":[ ],
"requestId":null,
"result":[
{
"id":147,
"size":61346,
"mimeType":"image/jpeg",
"url":"http://mlm.devlocal.marketo.com/rs/test/assets/rYXNeQFFVu",
"folder":{
"type":"Email",
"id":10613
},
"name":"rYXNeQFFVu",
"description":null,
"createdAt":"2014-12-09T22:33:57Z+0000",
"updatedAt":"2014-12-09T22:33:57Z+0000"
}
]
}
Por nome
Especifique o nome do arquivo usando o parâmetro name
necessário.
GET /rest/asset/v1/file/byName.json?name=foo.png
{
"success": true,
"warnings": [],
"errors": [],
"requestId": "9049#15918a76619",
"result": [
{
"id": 46488,
"size": 13987,
"mimeType": "image/png",
"url": "http://na-abm.marketo.com/rs/mktodemoaccount88/assets/foo.png",
"folder": {
"type": "Image",
"id": 436,
"name": "My Images"
},
"name": "foo.png",
"description": "This is a test file.",
"createdAt": "2015-05-06T22:16:58Z+0000",
"updatedAt": "2015-05-06T22:19:29Z+0000"
}
]
}
Navegar
Há três parâmetros opcionais:
- pasta - pasta pai especificada como bloco JSON contendo atributos "id" e "type"
- offset - número inteiro que especifica onde começar a recuperar as entradas (o padrão é 0); pode ser usado com o parâmetro maxReturn
- maxReturn - número inteiro que especifica o número máximo de entradas para retornar (o padrão é 20, o máximo é 200)
GET /rest/asset/v1/files.json?folder={"id":436, "type": "Folder"}&maxReturn=3
{
"success": true,
"warnings": [],
"errors": [],
"requestId": "17e4e#14e23372d80",
"result": [
{
"id": 46484,
"size": 1454,
"mimeType": "text/plain",
"url": "http://na-abm.marketo.com/rs/mktodemoaccount88/assets/websites.png",
"folder": {
"type": "Image",
"id": 436,
"name": "My Images - deverly"
},
"name": "websites.png",
"description": "This is a test file.",
"createdAt": "2015-05-06T20:15:58Z+0000",
"updatedAt": "2015-06-22T02:12:36Z+0000"
},
{
"id": 46486,
"size": 4169,
"mimeType": "image/png",
"url": "http://na-abm.marketo.com/rs/mktodemoaccount88/assets/mobile.png",
"folder": {
"type": "Image",
"id": 436,
"name": "My Images - deverly"
},
"name": "mobile.png",
"description": null,
"createdAt": "2015-05-06T22:13:33Z+0000",
"updatedAt": "2015-05-06T22:13:33Z+0000"
},
{
"id": 46488,
"size": 13987,
"mimeType": "image/png",
"url": "http://na-abm.marketo.com/rs/mktodemoaccount88/assets/foo.png",
"folder": {
"type": "Image",
"id": 436,
"name": "My Images - deverly"
},
"name": "foo.png",
"description": "This is a test file.",
"createdAt": "2015-05-06T22:16:58Z+0000",
"updatedAt": "2015-05-06T22:19:29Z+0000"
}
]
}
Criar e atualizar
A criação de um arquivo é feita com um tipo de solicitação multipart/form-data. No mínimo, o nome, a pasta e o arquivo são necessários na solicitação, com uma descrição opcional e um sinalizador insertOnly, que impede que uma chamada de criação atualize um arquivo existente com o mesmo nome. Para o parâmetro file, é necessário um "nome de arquivo" no cabeçalho Content-Disposition, além do parâmetro name. Você também deve passar um cabeçalho Content-Type para o arquivo, que será o tipo MIME que o Marketo usará para fornecer o arquivo.
POST /rest/asset/v1/files.json
------WebKitFormBoundary2VyWOacQSupl4gUL
Content-Disposition: form-data; name="file"; filename="marketo.html"
Content-Type: text/html
<html>
<body>
<h1>Test Page - marketo.html</h1>
</body>
</html>
------WebKitFormBoundary2VyWOacQSupl4gUL
Content-Disposition: form-data; name="name"
marketo.html
------WebKitFormBoundary2VyWOacQSupl4gUL
Content-Disposition: form-data; name="folder"
{"id":436,"type":"Folder"}
------WebKitFormBoundary2VyWOacQSupl4gUL
Content-Disposition: form-data; name="description"
This is a test file
------WebKitFormBoundary2VyWOacQSupl4gUL—
{
"success": true,
"warnings": [],
"errors": [],
"requestId": "278d#14e23316f63",
"result": [
{
"id": 46960,
"size": 69,
"mimeType": "text/html",
"url": "http://na-abm.marketo.com/rs/mktodemoaccount88/assets/marketo.html",
"folder": {
"type": "Image",
"id": 436,
"name": "My Images - deverly"
},
"name": "marketo.html",
"description": "This is a test file",
"createdAt": "2015-06-24T01:31:59Z+0000",
"updatedAt": "2015-06-24T01:31:59Z+0000"
}
]
}
A atualização de um arquivo pode ser feita com base em sua ID. O único parâmetro é um parâmetro de arquivo que tem os mesmos requisitos que a criação.
POST /rest/asset/v1/file/{id}/content.json
------WebKitFormBoundary2VyWOacQSupl4gUL
Content-Disposition: form-data; name="file"; filename="marketo.html"
Content-Type: text/html
<html>
<body>
<h1>Test Page - marketo.html</h1>
</body>
</html>
------WebKitFormBoundary2VyWOacQSupl4gUL--
{
"success": true,
"warnings": [],
"errors": [],
"requestId": null,
"result": [
{
"id": 67,
"size": 512000,
"mimeType": "image/png",
"url": "http://pages.devlocal.marketo.com/rs/test/assets/aLZiwCkXor",
"folder": {
"type": "Email",
"id": 10391
},
"name": "aLZiwCkXor",
"description": null,
"createdAt": "2014-12-18T09:03:43Z+0000",
"updatedAt": "2015-01-07T04:40:20Z+0000"
}
]
}