Skip to content

API Route map Sprint 3

Morales Patty Jose Manuel edited this page Dec 3, 2024 · 6 revisions

Endpoints

Jobs

GET /api/users-jobs/jobs/{jobId:guid}/developer/{developerId:guid} 🔴

Auth:

Only develoeprs

Description:

Get if the developer already apply or not to a job

Data:

jobId: The id of the Job developerId: The id of the Developer

Response:

{
  "apply": false
}

PATCH /api/users-jobs/jobs/status/{jobId:guid} 🔴

Auth:

Default Authentication

Data:

{
  "developerId": "The uuid of the developer"
  "newStatus": "The new Job Status" // `Published` | `Viewed` | `Accepted` | `Rejected`
}

Developer

GET /api/users-jobs/developers/{developerId:guid} 🔴

Get a developer by Id

Data:

developerId: THe id of the developer

Response:

{
  "id": "uuid of the developer",
  "name": "the name of the developer",
  "lastName": "the last name of the developer",
  "yearsOfExperience": 5,
  "salaryPerHourExpected": 100,
  "location": "the location of the developer",
  "portfolioUrl": "the url of the portfolio url",
  "profilePictureUrl": "the url of the profile picture",
  "description": "the description",
  "specialization": {
    "id": "the id of the specialization",
    "name": "the name of the specialization"
  },
  "skills": [
    {
      "id": "the id of the skill",
      "name": "the name of the skill"
    },
  ],
  "spokenLanguages": [
    {
      "id": "the id of the language",
      "name": "the name of the language"
    },
  ]
}

GET /api/users-jobs/developers/ 🔴

Get all developers with pagination

{
  "items": [
    {
      "id": "uuid of the developer",
      "name": "the name of the developer",
      "lastName": "the last name of the developer",
      "yearsOfExperience": 5,
      "salaryPerHourExpected": 100,
      "location": "the location of the developer",
      "portfolioUrl": "the url of the portfolio url",
      "profilePictureUrl": "the url of the profile picture",
      "description": "the description",
      "specialization": {
        "id": "the id of the specialization",
        "name": "the name of the specialization"
      },
      "skills": [
        {
          "id": "the id of the skill",
          "name": "the name of the skill"
        },
      ],
      "spokenLanguages": [
        {
          "id": "the id of the language",
          "name": "the name of the language"
        },
      ]
    }
  ],
  "page": "selected page",
  "pageSize": "size of the selected page",
  "totalCount": "total number of jobs",
  "hasNextPage": true,
  "hasPreviousPage": true
}

Clone this wiki locally