El conductor marca su viaje como finalizado
POST
/trips/{tripId}/complete
const url = 'https://api.dev.lade.com.mx/trips/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/complete';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"lat":19.4326,"lng":-99.1332}'};
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/trips/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/complete \ --header 'Authorization: Bearer <token>' \ --header 'Content-Type: application/json' \ --data '{ "lat": 19.4326, "lng": -99.1332 }'Transiciona el viaje de EN_PROCESO a FINALIZADO_A_TIEMPO o FINALIZADO_CON_RETRASO — a diferencia de PATCH /trips/{tripId}/status, aquí el estado final no lo elige quien llama: se calcula server-side comparando la hora actual contra trip.endDate. Solo el conductor asignado puede completarlo.
Authorizations
Sección titulada «Authorizations»Parameters
Sección titulada «Parameters»Path Parameters
Sección titulada «Path Parameters»tripId
required
string format: uuid
ID del viaje (UUID)
Request Body
Sección titulada «Request Body»Media typeapplication/json
Coordenadas opcionales del punto de finalización
object
lat
number
lng
number
Example
{ "lat": 19.4326, "lng": -99.1332}Responses
Sección titulada «Responses»Viaje finalizado
Media typeapplication/json
object
message
string
tripId
string format: uuid
previousStatus
Estado del viaje
string
newStatus
Estado del viaje
string
Example
{ "message": "Trip status updated successfully", "tripId": "880e8400-e29b-41d4-a716-446655440003", "previousStatus": "EN_PROCESO", "newStatus": "FINALIZADO_A_TIEMPO"}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"}Recurso no encontrado
Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{ "error": "Not found", "message": "Resource not found"}Conflicto con recurso existente
Media typeapplication/json
object
error
required
string
message
string
field
string
Example
{ "error": "Conflict", "message": "Resource already exists"}