Saltar al contenido principal
POST
/
v1
/
attachments
Upload an attachment
curl --request POST \
  --url https://api.devin.ai/v1/attachments \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form file='@example-file'
"<string>"
Este endpoint carga archivos en nuestros servidores y devuelve una URL que puedes usar como referencia en las sesiones de Devin. El archivo no se envía automáticamente a ninguna sesión; debes incluir la URL en tus mensajes.

Cómo usar archivos subidos

Devin solo reconoce adjuntos cuando están escritos exactamente en el formato ATTACHMENT:"{file_url}" (ATTACHMENT en singular y en mayúsculas). La línea ATTACHMENT: debe estar sola en una línea independiente del prompt, y la URL debe ir entre comillas dobles.Incluir simplemente la URL sin este formato no funcionará. Variantes como ATTACHMENTS: (en plural) tampoco se reconocen.
Para hacer referencia a un archivo subido en una sesión de Devin:
  1. Sube el archivo usando este endpoint para obtener una URL
  2. Incluye la URL en tu prompt al crear una sesión o enviar un mensaje
  3. Da el formato correcto a la URL colocando ATTACHMENT:"{file_url}" en una línea independiente dentro de tu prompt

Ejemplo completo

import os
import requests

DEVIN_API_KEY = os.getenv("DEVIN_API_KEY")

# Paso 1: Cargar el archivo
with open("data.csv", "rb") as f:
    response = requests.post(
        "https://api.devin.ai/v1/attachments",
        headers={"Authorization": f"Bearer {DEVIN_API_KEY}"},
        files={"file": f}
    )
file_url = response.text

# Paso 2: Crear una sesión que haga referencia al archivo cargado
session_response = requests.post(
    "https://api.devin.ai/v1/sessions",
    headers={"Authorization": f"Bearer {DEVIN_API_KEY}"},
    json={
        "prompt": f"""Analiza los datos del archivo CSV adjunto y genera un informe resumen.
Enfócate en identificar tendencias e información clave.

ATTACHMENT:"{file_url}"
"""
    }
)

print(session_response.json())
Importante: El prefijo ATTACHMENT: debe ir en una línea independiente en el prompt, con la URL entre comillas dobles, exactamente como se muestra arriba: ATTACHMENT:"{url}". Para adjuntar varios archivos, añade una línea ATTACHMENT:"{file_url}" por archivo.

Authorizations

Authorization
string
header
required

Personal API Key (apk_user_) or Service API Key (apk_)

Body

multipart/form-data
file
file
required

Response

Successful Response

The response is of type string.