Ir al contenido

Generar URL prefirmada para subir un documento propio

POST
/drivers/me/documents/upload-url
curl --request POST \
--url https://api.dev.lade.com.mx/drivers/me/documents/upload-url \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "folder": "drivers-files", "fileName": "licencia.pdf", "contentType": "application/pdf" }'

Versión del DMS (/dms/upload-url) restringida a conductores: vive detrás del authorizer dedicado a conductores y fuerza el entityId al propio driverId server-side — el conductor nunca puede generar una URL de subida a la carpeta de otro conductor ni a carpetas administrativas, ni pasando otros valores en el body. Carpetas permitidas: drivers-profile (foto de perfil) y drivers-files (documentos).

Media typeapplication/json
object
folder
required
string
Allowed values: drivers-profile drivers-files
fileName
required
string
contentType
required
string
Allowed values: image/jpeg image/png image/webp application/pdf
Example
{
"folder": "drivers-files",
"fileName": "licencia.pdf",
"contentType": "application/pdf"
}

URL prefirmada generada (expira en 300s)

Media typeapplication/json
object
uploadUrl
string format: uri
key
string
publicUrl
string
Example
{
"uploadUrl": "https://lade-dev-documents.s3.amazonaws.com/drivers-files/770e8400.../licencia.pdf?X-Amz-Signature=...",
"key": "drivers-files/770e8400-e29b-41d4-a716-446655440002/licencia.pdf",
"publicUrl": ""
}

Solicitud inválida

Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{
"error": "Validation failed",
"field": "email",
"message": "Invalid email format"
}

No autenticado

Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{
"error": "Unauthorized",
"message": "Invalid or expired token"
}

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"
}