> For the complete documentation index, see [llms.txt](https://requestmechanic.gitbook.io/request-mechanic-api-documentation/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://requestmechanic.gitbook.io/request-mechanic-api-documentation/user/mechanic-registration-step-3-update.md).

# Mechanic Registration - Step 3(Update)

The `PUT /user/registration/step3/mechanic/` endpoint allows a mechanic to complete or update their Step 3 registration details. It includes information about car specialties, services offered, education level, workshop location, profile picture, and supporting documents.

***

#### Parameters:

**Request Body**

| **Field**            | **Type**          | **Description**                                         |
| -------------------- | ----------------- | ------------------------------------------------------- |
| `car_speciality_ids` | Array of integers | IDs of the car specialties the user is associated with. |
| `services_id`        | Array of integers | IDs of the services the user provides.                  |
| `education_level`    | String (nullable) | The education level of the user.                        |
| `workshop_location`  | String (nullable) | Location of the user's workshop.                        |
| `profile_pic`        | Object            | Contains the profile picture URL.                       |
| **`profile_pic`**    | String            | URL of the user's profile picture.                      |
| `supported_document` | Object            | Contains details of the supporting document.            |
| **`user`**           | String            | ID of the user.                                         |
| **`document`**       | String            | URL of the uploaded document.                           |
| `update_is_active`   | Boolean           | Indicates if the update is active.                      |

***

#### Responses:

**Success Response**

**Code: 200**\
**Content Type: application/json**

| **Field**            | **Type**          | **Description**                                          |
| -------------------- | ----------------- | -------------------------------------------------------- |
| `id`                 | Integer           | Unique identifier for the mechanic.                      |
| `car_speciality`     | Array of objects  | Array of car specialties associated with the mechanic.   |
| **`id`**             | Integer           | Unique identifier for the car brand.                     |
| **`name`**           | String            | Name of the car brand.                                   |
| `car_speciality_ids` | Array of integers | IDs of the car specialties associated with the mechanic. |
| `services`           | Array of objects  | Array of services provided by the mechanic.              |
| **`id`**             | Integer           | Unique identifier for the service.                       |
| **`name`**           | String            | Name of the service.                                     |
| `services_id`        | Array of integers | IDs of the services provided by the mechanic.            |
| `education_level`    | String            | Education level of the mechanic.                         |
| `workshop_location`  | String            | Location of the mechanic's workshop.                     |
| `profile_pic`        | Object            | Profile picture details.                                 |
| **`profile_pic`**    | String            | URL of the mechanic's profile picture.                   |
| `supported_document` | Object            | Supporting document details.                             |
| **`id`**             | String            | Unique identifier for the document.                      |
| **`user`**           | String            | ID of the user.                                          |
| **`document`**       | String            | URL of the uploaded document.                            |
| **`uploaded_at`**    | DateTime          | Date and time the document was uploaded.                 |
| `update_is_active`   | Boolean           | Indicates if the update is active.                       |

***

#### Example Request:

```json
{
  "car_speciality_ids": [1, 2],
  "services_id": [5, 7],
  "education_level": "Bachelor's Degree",
  "workshop_location": "123 Auto Street, Cityville",
  "profile_pic": {
    "profile_pic": "https://example.com/profile-pic.jpg"
  },
  "supported_document": {
    "user": "12345",
    "document": "https://example.com/supporting-document.pdf"
  },
  "update_is_active": true
}
```

***

#### Example Success Response:

```json
{
  "id": 1001,
  "car_speciality": [
    { "id": 1, "name": "Toyota" },
    { "id": 2, "name": "Honda" }
  ],
  "car_speciality_ids": [1, 2],
  "services": [
    { "id": 5, "name": "Oil Change" },
    { "id": 7, "name": "Brake Repair" }
  ],
  "services_id": [5, 7],
  "education_level": "Bachelor's Degree",
  "workshop_location": "123 Auto Street, Cityville",
  "profile_pic": {
    "profile_pic": "https://example.com/profile-pic.jpg"
  },
  "supported_document": {
    "id": "doc123",
    "user": "12345",
    "document": "https://example.com/supporting-document.pdf",
    "uploaded_at": "2024-12-10T10:00:00Z"
  },
  "update_is_active": true
}
```
