> ## Documentation Index
> Fetch the complete documentation index at: https://docs.repdata.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Fetch Analysis (heatmap)

> # Description

Get heatmap question reactions points.

# Payload

```json
{
    "fromDate": string,
    "toDate": string,
    "filter": array,
    "projectId": string
}
```

where:

* `fromDate`: start date in ISO format. __(Required)__.
* `toDate`: end date in ISO format. __(Required)__.
* `filter`: array of filters to filter the responses. (Optional).
* `projectId`: project unique identifier. Only used in case projectId is missing as query param(Optional).
# Response 

## 200 OK

```json
{
  "projectId": string,
  "fromDate": string,
  "toDate": string,
  "filter": array,
  "responses": object,
  "responsesByQuestion": object
}
```
where:

* `fromDate`: Starting date to filter responses.
* `toDate`: End date to filter responses.
* `filter`: List of filters used to apply to the constant sum answers.
* `projectId`: Id of the project this analysis belongs to.
* `responses`: An object indexed by question id prefixed with `q`.
* `responses.qQuestionID`: An object indexed by reaction position associated with an array containing objects with the `x` and `y` coordinate for that reaction.
* `responsesByQuestion`: An object indexed by question id prefixed with `q` associated with the number of responses for it.

## 401 Unauthorized
> Invalid authorization.

## 404 Not Found
> Resource not found.

## 500 Internal Server Error
> Error occurred in the service.

# Description

Get heatmap question reactions points.

# Payload

```json theme={null}
{
    "fromDate": string,
    "toDate": string,
    "filter": array,
    "projectId": string
}
```

where:

* `fromDate`: start date in ISO format. **(Required)**.
* `toDate`: end date in ISO format. **(Required)**.
* `filter`: array of filters to filter the responses. (Optional).
* `projectId`: project unique identifier. Only used in case projectId is missing as query param(Optional).

# Response

## 200 OK

```json theme={null}
{
  "projectId": string,
  "fromDate": string,
  "toDate": string,
  "filter": array,
  "responses": object,
  "responsesByQuestion": object
}
```

where:

* `fromDate`: Starting date to filter responses.
* `toDate`: End date to filter responses.
* `filter`: List of filters used to apply to the constant sum answers.
* `projectId`: Id of the project this analysis belongs to.
* `responses`: An object indexed by question id prefixed with `q`.
* `responses.qQuestionID`: An object indexed by reaction position associated with an array containing objects with the `x` and `y` coordinate for that reaction.
* `responsesByQuestion`: An object indexed by question id prefixed with `q` associated with the number of responses for it.

## 401 Unauthorized

> Invalid authorization.

## 404 Not Found

> Resource not found.

## 500 Internal Server Error

> Error occurred in the service.

##### Query Parameters

| Parameter   | Description | Required | Example |
| ----------- | ----------- | -------- | ------- |
| `projectId` | —           | No       | —       |


## OpenAPI

````yaml POST /v1/analysis
openapi: 3.0.3
info:
  title: SightX API
  version: 1.0.0
  description: >-
    SightX REST API documentation. Most responses are JSON; some export
    endpoints return files. API access is a paid add-on — contact
    sales@sightx.io for details.
servers:
  - url: https://auth.admin.sightx.io
    description: Authentication (Production)
  - url: https://auth.staging-admin.sightx.io
    description: Authentication (Staging)
security:
  - AuthorizationHeader: []
paths:
  /v1/analysis:
    post:
      summary: Fetch Analysis (heatmap)
      description: >-
        # Description


        Get heatmap question reactions points.


        # Payload


        ```json

        {
            "fromDate": string,
            "toDate": string,
            "filter": array,
            "projectId": string
        }

        ```


        where:


        * `fromDate`: start date in ISO format. __(Required)__.

        * `toDate`: end date in ISO format. __(Required)__.

        * `filter`: array of filters to filter the responses. (Optional).

        * `projectId`: project unique identifier. Only used in case projectId is
        missing as query param(Optional).

        # Response 


        ## 200 OK


        ```json

        {
          "projectId": string,
          "fromDate": string,
          "toDate": string,
          "filter": array,
          "responses": object,
          "responsesByQuestion": object
        }

        ```

        where:


        * `fromDate`: Starting date to filter responses.

        * `toDate`: End date to filter responses.

        * `filter`: List of filters used to apply to the constant sum answers.

        * `projectId`: Id of the project this analysis belongs to.

        * `responses`: An object indexed by question id prefixed with `q`.

        * `responses.qQuestionID`: An object indexed by reaction position
        associated with an array containing objects with the `x` and `y`
        coordinate for that reaction.

        * `responsesByQuestion`: An object indexed by question id prefixed with
        `q` associated with the number of responses for it.


        ## 401 Unauthorized

        > Invalid authorization.


        ## 404 Not Found

        > Resource not found.


        ## 500 Internal Server Error

        > Error occurred in the service.
      operationId: fetch-analysis-heatmap-post-v1-analysis
      parameters:
        - name: Authorization
          in: header
          required: true
          description: Authorization token
          schema:
            type: string
        - name: projectId
          in: query
          required: false
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              additionalProperties: true
            example:
              fromDate: '2020-01-01'
              toDate: '2022-12-31'
              filter: []
              groups:
                qQuestionId:
                  - qRelatedQuestionId1
                  - qRelatedQuestionId1
      responses:
        '200':
          description: Successful response
        '400':
          description: Bad request
        '401':
          description: Unauthorized
        '500':
          description: Internal server error
      servers:
        - url: https://heatmap-analysis-service.sightx.io
components:
  securitySchemes:
    AuthorizationHeader:
      type: apiKey
      in: header
      name: Authorization
      description: Access token obtained from the m2m-token endpoint.

````