Update profile
PATCH {{baseUrl}}/runners/{{userId}}
Updates one or more fields on the driver’s own profile. Source: models/users.ts updateProfile(). Accepts a partial body — only send the fields you’re changing (the server’s updateRunnerSchema Joi validation rejects unknown keys).
Response: 200 with the updated user row — the same shape as the top-level fields of GET /me (no current_operator/retreat_points wrapper, just the raw row).
Request body
Section titled “Request body”{ "first_name": "Jane", "last_name": "Doe", "phone": "5551234567", "location_status": "always"}Examples
Section titled “Examples”curl --request PATCH 'https://api.firstdelivery.com/api/runners/REPLACE_WITH_USER_ID' \ --header 'Content-Type: application/json' \ --data '{ "first_name": "Jane", "last_name": "Doe", "phone": "5551234567", "location_status": "always"}'const response = await fetch("https://api.firstdelivery.com/api/runners/REPLACE_WITH_USER_ID", { "method": "PATCH", "headers": { "Content-Type": "application/json" }, "body": "{\n \"first_name\": \"Jane\",\n \"last_name\": \"Doe\",\n \"phone\": \"5551234567\",\n \"location_status\": \"always\"\n}"})const data = await response.json()import requests
response = requests.request( "PATCH", "https://api.firstdelivery.com/api/runners/REPLACE_WITH_USER_ID", headers={ 'Content-Type': 'application/json'}, data="{\n \"first_name\": \"Jane\",\n \"last_name\": \"Doe\",\n \"phone\": \"5551234567\",\n \"location_status\": \"always\"\n}",)response.raise_for_status()Saved responses
Section titled “Saved responses”{ "id": "8e17d5db-da6e-453c-966f-bfc72c125094", "first_name": "Jane", "last_name": "Doe", "phone": "5551234567", "location_status": "always", "active_territory_id": "b2b1c1a0-1111-4a2b-9c3d-4e5f6a7b8c9d", "operator_id": 42, "role": "runner"}
