---
title: "Step 2. Start Assessment"
method: PUT
path: "/assessment/api/v1/start/{assessment_id}"
tags: ["Assessments"]
---

# Step 2. Start Assessment

`PUT /assessment/api/v1/start/{assessment_id}`

This API is used to start and get the first question of the assessment. <Tip>Use this API to get the first question.</Tip>

## Path parameters

- `assessment_id` string, required

## Headers

- `client-id` string, required
- `locale` 'en' | 'hi' | 'kn'

## Response `200`

OK

- union
  - MasterComponentResponse
    - `questions` object[], required
      - `qid` integer, required — This is the question id. It is used to identify the question. its an integer, during start it will always be 0
      - `component_code` string, required
      - `question_text` string, required
      - `tip` string
      - `component_data` MasterComponentData, required
        - `url` object — Valid only for **autosuggest component**. This content should be used to get autosuggest choices for users. After combining all the requests, You can get a url like: `https://example.eka.care?gender=m&age=23&src=sn&q`
          - `base_url` string — Base URL for autosuggest API
          - `query_params` object — These are the query params to be sent with URL to get autosuggest choices.
            - `gender` string
            - `age` string
            - `src` string
          - `search_query_param` string
        - `autosuggest_static_choices` object — This is valid only for **autosuggest component**. It contains the section wise static choices to be shown to users at first.
          - `sections` object[]
            - `section_title` string — This is the title of the section
            - `choices` object[]
              - …
        - `choices` object[] — Valid only for **choice type components**- multi choice, radio (single choice) and radio group
          - `choice_id` string, required
          - `choice_label` string, required
          - `qualifier` object, required
            - `id` 'p' | 'a' | 'u', required
            - `label` 'Yes' | 'No' | 'Don't Know', required
            - `is_selected` boolean
          - `is_selected` boolean — This is a boolean value, if `true` this choice is be selected by default
      - `is_mandatory` boolean — This is a boolean value, if true user has to answer this question
    - `progress` number, required — This is the progress of the assessment in percentage format. It is a number **between 0.00 and 100.00**.
    - `is_last_question` boolean, required — This is a **boolean value**. If true, this is the last question of the assessment and you can hit submit API.
  - ATSGComponentResponse
    - `questions` object[], required
      - `qid` integer, required — This is the question id. It is used to identify the question., its an integer, during start it will always be 0
      - `component_code` string, required
      - `question_text` string, required
      - `tip` string
      - `component_data` ATSGComponentData, required
        - `url` object, required — This is **only valid for an autosuggest component**. This content can be used to get autosuggest choices for users. After combining all the requests, You can get a url like: `https://example.eka.care?gender=m&age=23&src=sn&q`
          - `base_url` string — Base URL for autosuggest API
          - `query_params` object — These are the query params to be sent with URL to get autosuggest choices.
            - `gender` string
            - `age` string
            - `src` string
          - `search_query_param` string
        - `autosuggest_static_choices` object, required — This is valid only for **autosuggest component**. It contains the section wise static choices to be shown to users at first.
          - `sections` object[]
            - `section_title` string — This is the title of the section
            - `choices` object[]
              - …
      - `is_mandatory` boolean — This is a boolean value, if true user has to answer this question
    - `progress` number, required — This is the progress of the assessment in percentage format. It is a number **between 0.00 and 100.00**.
    - `is_last_question` boolean, required — This is a **boolean value**. If true, this is the last question of the assessment and you can hit submit API.
  - RadioComponentResponse
    - `questions` object[], required
      - `qid` integer, required — This is the question id. It is used to identify the question., its an integer, during start it will always be 0
      - `component_code` string, required
      - `question_text` string, required
      - `tip` string
      - `component_data` BaseChoiceComponentData, required
        - `choices` QuestionChoice[], required — This is valid for a choice type components, multi, radio (single choice), radio group
          - `choice_id` string, required
          - `choice_label` string, required
          - `is_selected` boolean
      - `is_mandatory` boolean — This is a boolean value, if true user has to answer this question
    - `progress` number, required — This is the progress of the assessment in percentage format. It is a number **between 0.00 and 100.00**.
    - `is_last_question` boolean, required — This is a **boolean value**. If true, this is the last question of the assessment and you can hit submit API.
  - MultiComponentResponse
    - `questions` object[], required
      - `qid` integer, required — This is the question id. It is used to identify the question., its an integer, during start it will always be 0
      - `component_code` string, required
      - `question_text` string, required
      - `tip` string
      - `component_data` BaseChoiceComponentData, required
        - `choices` QuestionChoice[], required — This is valid for a choice type components, multi, radio (single choice), radio group
          - `choice_id` string, required
          - `choice_label` string, required
          - `is_selected` boolean
      - `is_mandatory` boolean — This is a boolean value, if true user has to answer this question
    - `progress` number, required — This is the progress of the assessment in percentage format. It is a number **between 0.00 and 100.00**.
    - `is_last_question` boolean, required — This is a **boolean value**. If true, this is the last question of the assessment and you can hit submit API.
  - RadioGroupComponentResponse
    - `questions` object[], required
      - `qid` integer, required — This is the question id. It is used to identify the question., its an integer, during start it will always be 0
      - `component_code` string, required
      - `question_text` string, required
      - `tip` string
      - `component_data` RadioGroupComponentData, required
        - `choices` QuestionChoiceQualifier[], required — This is valid for a choice type components, multi, radio (single choice), radio group
          - `choice_id` string, required
          - `choice_label` string, required
          - `qualifier` object, required
            - `id` 'p' | 'a' | 'u', required
            - `label` 'Yes' | 'No' | 'Don't Know', required
            - `is_selected` boolean
      - `is_mandatory` boolean — This is a boolean value, if true user has to answer this question
    - `progress` number, required — This is the progress of the assessment in percentage format. It is a number **between 0.00 and 100.00**.
    - `is_last_question` boolean, required — This is a **boolean value**. If true, this is the last question of the assessment and you can hit submit API.

## Other responses

- `400` — Bad Request

---

[API](https://skmtc.net/eka/apis/eka-developer-apis.md) · [All operations](https://skmtc.net/eka/apis/eka-developer-apis/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/eka/eka-developer-apis/revisions/9ea23456f722/schema)
