Skip to content

Tutorial: Get Positions List for an Inquiry

This tutorial guides you through how to retrieve all positions attached to a specific inquiry.
Each position represents a job opening or role inside the inquiry, including title, stage, job dates, and requirements.


Step 1: Fetch Positions for an Inquiry

Use this endpoint to retrieve all positions belonging to a single inquiry.

Endpoint

GET /api/public/inquiry/{orderId}/positions

Authorization

This endpoint requires authentication. Use the Bearer token received from login or session.

Request Headers

Authorization: Bearer <your_token_here>
Accept: application/json

Example cURL Command

curl -X GET http://127.0.0.1:8000/api/public/inquiry/1/positions \
  -H "Authorization: Bearer $TOKEN" \
  -H "Accept: application/json"

Step 2: Response Structure

Sample Response

[
  {
    "id": 21,
    "counter": 3,
    "order_id": 1,
    "owner_id": 7,
    "stage": "pending",
    "title": "Cloud Engineer",
    "type": ["external"],
    "description": "",
    "language_reqs": "English",
    "experience_level": "Intermediate",
    "job_start": "2025-11-01 15:00:00",
    "job_end": "2025-11-30 15:00:00",
    "location": "Remote",
    "is_remote_work": "no",
    "allocation": 10,
    "budget": "5000",
    "submitted_at": "2025-11-18T15:49:35",
    "created_at": "2025-11-18T15:49:35.000000Z",
    "updated_at": "2025-11-18T15:49:42.000000Z"
  },
  {
    "id": 27,
    "counter": 4,
    "order_id": 1,
    "owner_id": 7,
    "stage": "cancelled",
    "title": "Backend Developer",
    "type": ["external"],
    "language_reqs": "Finnish",
    "job_start": "2025-12-01 15:00:00",
    "job_end": "2025-12-31 15:00:00",
    "budget": "7000"
  }
]

Step 3: Key Fields Explained

Field Description
id Unique position ID
counter Internal counter for the position within the inquiry
order_id Parent inquiry ID
title Job title (e.g., Cloud Engineer)
stage Status of this position (pending, searching, cancelled)
job_start Expected role start date
job_end Expected role end date
experience_level Required experience level
allocation Workload (hours or percent)
budget Budget allocated for the role
language_reqs Required languages
location Work location (onsite/remote)

Step 4: Use Cases

  • Display a list of job positions for any inquiry
  • Prepare for updating or cancelling a specific position
  • Show detailed position information in dashboards
  • Integrate position data into a mobile or web client
  • Monitor active vs cancelled positions

Step 5: Error Responses

Status Meaning Description
200 OK Positions successfully retrieved
401 Unauthorized Missing or invalid Bearer token
404 Not Found Inquiry does not exist or cannot be accessed