# Survey session management APIs

Source: [https://docs.qualcomm.com/doc/80-42204-2/topic/survey-session-management-api.html](https://docs.qualcomm.com/doc/80-42204-2/topic/survey-session-management-api.html)

The following table lists the indoor API to manage the survey sessions.

| Method | Endpoint | Description | Success code | Error codes |
| --- | --- | --- | --- | --- |
| [POST](https://docs.qualcomm.com/doc/80-42204-2/topic/survey-session-management-api.html#post-venues-venueid-survey-sessions) | `/venues/{venueId}/survey-sessions` | Create survey session(s) | 201 Created | <ul class="ul" id="survey-session-management-api__ul_trh_mvn_4hc"><br>                                    <li class="li">400 Bad Request</li><br><br>                                    <li class="li">401 Unauthorized</li><br><br>                                    <li class="li">403 Forbidden</li><br><br>                                    <li class="li">404 Venue Not Found</li><br><br>                                    <li class="li">413 Request Entity Too Large</li><br><br>                                    <li class="li">500 Internal Server Error</li><br><br>                                </ul> |

## POST /venues/{venueId}/survey-sessions

Source: [https://docs.qualcomm.com/doc/80-42204-2/topic/survey-session-management-api.html](https://docs.qualcomm.com/doc/80-42204-2/topic/survey-session-management-api.html)

Creates one or more survey sessions for a venue. Accepts either a single object or an
                array of objects.

**Path parameters**

| Parameter | Type | Values | Description |
| --- | --- | --- | --- |
| `venueId` | Integer |  | The ID of the venue |

**Request headers**

    Content-Type: application/jsonCopy to clipboard

**Request body for single session**

    {
      "floorId": 456,
      "path": "s3://bucket/path/to/session.zip",
      "size": 1048576,
      "configuration": "config_001",
      "deviceManufacturer": "Samsung",
      "deviceModel": "Galaxy S21",
      "deviceId": "1a2b3c4d5e6f",
      "generation": 1,
      "gtName": "ground_truth_01",
      "stats": {
        "duration": 300,
        "distance": 150.5
      }Copy to clipboard

**Request body for multiple sessions**

    [
    {
        "floorId": 456,
        "path": "s3://bucket/path/to/session1.zip",
        "size": 1048576,
        "configuration": "config_001",
        "deviceManufacturer": "Samsung",
        "deviceModel": "Galaxy S21",
        "deviceId": "1a2b3c4d5e6f",
        "generation": 1,
        "stats": {
          "duration": 300,
          "distance": 150.5
        }
      },
      {
        "floorId": 457,
        "path": "s3://bucket/path/to/session2.zip",
        "size": 2097152,
        "configuration": "config_002",
        "deviceManufacturer": "Apple",
        "deviceModel": "iPhone 13",
        "deviceId": "a1b2c3d4e5f6",
        "generation": 1,
        "stats": {
          "duration": 500,
          "distance": 350.5
        }
      }
    ]Copy to clipboard

**Request body parameters**

| Parameter | Type | Values | Description |
| --- | --- | --- | --- |
| `floorId` | Integer |  | ID of the floor for this session |
| `path` | String |  | S3 path to survey session data. The path must end with<br>                                    `.zip`. |
| `size` | Integer | Minimum: 1 byte | Size of the session file in bytes |
| `configuration` | String | Must contain alphanumeric characters, underscore (\_), and hyphen<br>                                (-) only. | Configuration identifier |
| `deviceManufacturer` | String |  | Device manufacturer name |
| `deviceModel` | String |  | Device model name |
| `deviceId` | String | Must contain hexadecimal characters only. | Device identifier |
| `generation` | Integer (optional) | <ul class="ul" id="post-venues-venueid-survey-sessions__ul_szl_fr4_4hc"><br>                                    <li class="li">Minimum value: 1 </li><br><br>                                    <li class="li">Default: 1</li><br><br>                                </ul> | Collection generation number |
| `gtName` | String (optional) | Must contain alphanumeric characters, underscore (\_), and hyphen<br>                                (-) only. | Ground truth name |
| `stats` | Object (optional) |  | JSON object for internal tracking and diagnostics; structure may<br>                                vary by release. |

**Response**

- Success responses:
    - Single session: 201 Created

            {
              "sessionId": 1001,
              "message": "Survey session successfully created."
            }Copy to clipboard
    - Multiple sessions: 201
                            Created

            {
              "sessionIds": [1001, 1002],
              "message": "Successfully created 2 survey sessions."
            }Copy to clipboard
- Error responses:
    - 400 Bad Request

            {
              "message": "floorId: This field is required."
            }
            {
              "message": "path: This field is required."
            }
            {
              "message": "size: This field is required."
            }
            {
              "message": "size: Ensure this value is greater than or equal to 1."
            }
            {
              "message": "configuration: This field is required."
            }
            {
              "message": "configuration: Ensure this field has no more than 50 characters."
            }
            {
              "message": "deviceId: This field is required."
            }
            {
              "message": "deviceManufacturer: Ensure this field has no more than 256 characters."
            }
            {
              "message": "deviceModel: Ensure this field has no more than 256 characters."
            }
            {
              "message": "generation: A valid integer is required."
            }
            {
              "message": "Array of survey sessions cannot be empty. Please provide at least one survey session."
            }
            {
              "message": "Floor with id 999999 not found in venue $EXTRACTED_VENUE_ID."
            }
            {
              "message": "Configuration must contain only alphanumeric characters, underscore (_), and hyphen (-)."
            }
            {
              "message": "deviceId must contain only hexadecimal characters (0-9, a-f, A-F)."
            }
            {
              "message": "Request body cannot be empty. Please provide survey session data."
            }
            {
              "message": "Duplicate paths found in survey session request."
            }
            {
              "message": "Survey session path must end with .zip extension."
            }
            {
              "message": "gtName must contain only alphanumeric characters, underscore (_), and hyphen (-)."
            }Copy to clipboard
    - 401 Unauthorized: Missing or invalid Skyhook-Auth-Key
                            header

            {
              "message": "Missing Skyhook-Auth-Key."
            }
            {
              "message": "Invalid Skyhook-Auth-Key."
            }Copy to clipboard
    - 403 Forbidden: Valid API key but insufficient permissions for the
                            requested resource

            {
              "message": "Access Denied."
            }Copy to clipboard
    - 404 Not Found

            {
              "message": "Venue with id <venueId> not found or not associated with this project."
            }Copy to clipboard
    - 409 Conflict

            {
              "message": "Duplicate paths found in survey session request."
            }
            {
              "message": "Survey sessions with paths already exist: <path>."
            }Copy to clipboard
    - 413 Request Entity Too Large

            {
              "message": "Array of survey sessions exceeds maximum limit of 100. Provided: 110 items."
            }Copy to clipboard
    - 500 Internal Server Error

            {
              "message": "An unexpected error occurred while creating survey session."
            }Copy to clipboard

Last Published: May 19, 2026

[Previous Topic
Floor plan management APIs](https://docs.qualcomm.com/bundle/publicresource/80-42204-2/topics/floor-plan-management-apis.md) [Next Topic
Survey management APIs](https://docs.qualcomm.com/bundle/publicresource/80-42204-2/topics/survey-management-apis.md)