Generar URL de descarga de un archivo
POST
/dms/download-url
const url = 'https://api.dev.lade.com.mx/dms/download-url';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"teamId":"550e8400-e29b-41d4-a716-446655440000","key":"drivers/770e8400-e29b-41d4-a716-446655440002/licencia.pdf","bucket":"documents"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request POST \ --url https://api.dev.lade.com.mx/dms/download-url \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "teamId": "550e8400-e29b-41d4-a716-446655440000", "key": "drivers/770e8400-e29b-41d4-a716-446655440002/licencia.pdf", "bucket": "documents" }'Genera una URL de descarga a partir de un key de S3 ya conocido. Si bucket=assets devuelve la URL pública de CloudFront (sin expiración); si bucket=documents genera una URL prefirmada que expira en 900s.
Authorizations
Sección titulada «Authorizations»Request Bodyrequired
Sección titulada «Request Bodyrequired»Media typeapplication/json
object
teamId
required
string format: uuid
key
required
S3 key del archivo, ej. drivers/abc123/photo.jpg
string
bucket
string
Example
{ "teamId": "550e8400-e29b-41d4-a716-446655440000", "key": "drivers/770e8400-e29b-41d4-a716-446655440002/licencia.pdf", "bucket": "documents"}Responses
Sección titulada «Responses»URL de descarga generada
Media typeapplication/json
object
downloadUrl
string format: uri
Example
{ "downloadUrl": "https://lade-dev-documents.s3.amazonaws.com/drivers/770e8400.../licencia.pdf?X-Amz-Signature=..."}Solicitud inválida
Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{ "error": "Validation failed", "field": "email", "message": "Invalid email format"}Sin permisos
Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{ "error": "Forbidden", "message": "You don't have permission to access this resource"}