Criar contêiner
curl --request POST \
--url https://cloud.datafyapi.com.br/ig/me/media \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"image_url": "https://exemplo.com/foto.jpg",
"caption": "Lançamento da semana. #novidade"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
image_url: 'https://exemplo.com/foto.jpg',
caption: 'Lançamento da semana. #novidade'
})
};
fetch('https://cloud.datafyapi.com.br/ig/me/media', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://cloud.datafyapi.com.br/ig/me/media"
payload = {
"image_url": "https://exemplo.com/foto.jpg",
"caption": "Lançamento da semana. #novidade"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "17900000000000002"
}{
"error": {
"message": "Invalid parameter",
"type": "OAuthException",
"code": 100,
"error_subcode": 2207076,
"error_user_title": "Falha ao baixar a mídia."
}
}{
"statusCode": 401,
"message": "Token inválido ou não encontrado."
}Publicações
Criar contêiner
Primeira etapa da publicação: envie a URL do arquivo e a legenda.
POST
/
ig
/
me
/
media
Criar contêiner
curl --request POST \
--url https://cloud.datafyapi.com.br/ig/me/media \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"image_url": "https://exemplo.com/foto.jpg",
"caption": "Lançamento da semana. #novidade"
}
'const options = {
method: 'POST',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({
image_url: 'https://exemplo.com/foto.jpg',
caption: 'Lançamento da semana. #novidade'
})
};
fetch('https://cloud.datafyapi.com.br/ig/me/media', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://cloud.datafyapi.com.br/ig/me/media"
payload = {
"image_url": "https://exemplo.com/foto.jpg",
"caption": "Lançamento da semana. #novidade"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text){
"id": "17900000000000002"
}{
"error": {
"message": "Invalid parameter",
"type": "OAuthException",
"code": 100,
"error_subcode": 2207076,
"error_user_title": "Falha ao baixar a mídia."
}
}{
"statusCode": 401,
"message": "Token inválido ou não encontrado."
}Cria o contêiner e devolve o
O
Com os IDs em mãos, crie o contêiner do carrossel, aí sim com a legenda:
São aceitos de 2 a 10 itens. O contêiner do carrossel é o que vai para
creation_id, que é consumido por Publicar.
O contêiner não aparece no feed. Ele é um rascunho do lado da Meta e expira sozinho se não for publicado.
Imagem
{
"image_url": "https://exemplo.com/foto.jpg",
"caption": "Lançamento da semana. #novidade"
}
media_type pode ser omitido: a ausência equivale a IMAGE.
Reel
{
"media_type": "REELS",
"video_url": "https://exemplo.com/video.mp4",
"caption": "Bastidores da produção."
}
Para vídeo, a resposta
200 não significa que o arquivo foi aceito. A Meta baixa e processa o vídeo depois de responder. Um video_url inexistente também devolve um creation_id válido, e a falha só aparece em Consultar status.Carrossel
Cada item é um contêiner próprio, criado comis_carousel_item: true e sem legenda:
{ "image_url": "https://exemplo.com/foto-1.jpg", "is_carousel_item": true }
{
"media_type": "CAROUSEL",
"caption": "Três novidades desta semana.",
"children": ["17900000000000003", "17900000000000004"]
}
media_publish; os filhos não são publicados individualmente.
Legenda
A legenda aceita quebras de linha, hashtags e menções. Menção só notifica se o perfil mencionado existir.Autorizações
Token do canal do Instagram, gerado no painel da Datafy. Formato: sk_live_xxx.
Corpo
application/json
Omitido equivale a IMAGE.
Opções disponíveis:
IMAGE, REELS, STORIES, CAROUSEL Obrigatório para imagem. URL pública e direta.
Exemplo:
"https://exemplo.com/foto.jpg"
Obrigatório para REELS. URL pública e direta.
Legenda da publicação. Aceita hashtags e menções.
Exemplo:
"Lançamento da semana. #novidade"
Marca o contêiner como item de um carrossel.
Só em CAROUSEL. IDs dos contêineres filhos, de 2 a 10.
ID da localização a marcar.
Resposta
Operação aceita.