• Show samples

        The HackerRank for Work API is organized around REST. Our API has predictable, resource-oriented URLs, and uses HTTP response codes to indicate API errors. We use built-in HTTP features, like HTTP authentication and HTTP verbs, which are understood by off-the-shelf HTTP clients. We support cross-origin resource sharing, allowing you to interact securely with our API from a client-side web application (though you should never expose your secret API key in any public website's client-side code). JSON is returned by all API responses, including errors.

      • Show samples

        Any tool that is fluent in HTTP can communicate with the API simply by requesting the correct URI. Requests should be made using the HTTPS protocol so that traffic is encrypted. The interface responds to different methods depending on the action required.

        Method Usage
        GET

        For simple retrieval of information about a resource (user, team, etc) you should use the GET method. The information you request will be returned to you as a JSON object.

        The attributes defined by the JSON object can be used to form additional requests. Any request using the GET method is read-only and will not affect any of the objects you are querying.

        DELETE

        To destroy a resource and remove it from your account and environment, the DELETE method should be used. This will remove the specified object if it is found. If it is not found, the operation will return a response indicating that the object was not found.

        This idempotency means that you do not have to check for a resource's availability prior to issuing a delete command, the final state will be the same regardless of its existence.

        PUT

        To update the information about a resource in your account, the PUT method is available.

        Like the DELETE Method, the PUT method is idempotent. It sets the state of the target using the provided values, regardless of their current values. Requests using the PUT method do not need to check the current attributes of the object.

        POST

        To create a new object, your request should specify the POST method.

        The POST request must include all of the attributes necessary to create a new object. When you wish to create a new object, send a POST request to the resource endpoint.

        OPTIONS

        Finally, to retrieve header information, you should use the OPTIONS method to get the headers. This returns only the header of what would be returned with an associated GET request.

        Response headers contain some useful information about your API access and the results that are available for your request.

        For instance, the headers contain your current rate-limit value and the amount of time available until the limit resets. It also contains metrics about the total number of objects found, pagination information, and the total content length.

        In any of the resources, non mandatory new fields can be added without any prior intimation. Please make sure that your implementation which uses this API do not fails in such a case.

      • Show samples

        Along with the HTTP methods that the API responds to, it will also return standard HTTP statuses, including error codes.

        In the event of a problem, the status will contain the error code, while the body of the response will usually contain additional information about the problem that was encountered.

        Code RangeDescription
        2xxThis range of response code indicates that request was fulfilled successfully and no error was encountered.
        400This return code indicates that there was an error in fulfilling the request because the syntax of URL was incorrect. The detail of the error will present in the body of response. Please do not repeat this request without modification
        401This return code means that we are not able to authenticate your request. Please make sure that a correct access token is provided in the request in the appropriate format.
        403This error code indicates that the user identified by the access token does not have permission to perform the requested action. If your account is locked, response code will always be 403.
        404This response indicates that the resource you are trying to access does not exists. Please note that this error will also be returned when the resource exists but belongs to a different account than is indicated by the access code.
        422This error code indicate that while the syntax was correct, request cannot be fulfilled because there was an issue in processing request body. An example of this could be getting inviting a candidate to a test for which they are already invited. More details about the error code can be found in the response body.
        429This response code indicates that you have exceeded rate limit for using the API. Please see the section on Rate Limiting for more details
        5xxThis response code indicates that there was an internal server error while processing the request. We are automatically notified of these errors, however if you are seeing these for extended amount of time, then please report to support@hackerrank.com
      • Show samples

        Authenticate your account when using the API by including your secret API key in the request. You can manage your API keys in the Settings page. Your API keys carry many privileges, so be sure to keep them secret!

        Do not share your secret API keys in publicly accessible areas such GitHub, client-side code, and so forth.
        

        Authentication to the API is performed via HTTP Basic Auth. Provide your API key as the basic auth username value. You do not need to provide a password.

        If you need to authenticate via bearer auth (e.g., for a cross-origin request), use -H "Authorization: Bearer hackerrank_api_key" instead of -u hackerrank_api_key:.

        All API requests must be made over HTTPS. Calls made over plain HTTP will fail. API requests without authentication will also fail.

      • Show samples

        By default, the server sends back the default representation of a resource after processing requests. For better performance and saving bandwidth, you can ask the server to send only the fields you really need and get a partial response instead.

        To request a partial response, use the fields request parameter to specify the fields you want returned. You can use this parameter with any request that returns response data.

        For example, /users?fields=id,email will fetch only the id and email of users.

      • Show samples

        Many resources also have various additional attributes that will not be the part of the basic response. To query them you have to specify those attributes in fields query.

        You can provide a comma separated list of the all the fields you want to query, including the basic fields as well as the additional fields

        All the additional fields that are available for the resources will be documented in the resource page.

      • Show samples

        Many objects contain the ID of a related object in their response properties. For example, a Test may have an associated User ID. Those objects can be expanded inline with the expand request parameter. Objects that can be expanded will be tagged as [Expandable] in this documentation. This parameter is available on all API requests, and applies to the response of that request only.

        You can expand multiple objects at once by identifying multiple items in the expand array.

        All the attributes that can be expanded will be tagged as expandable

        Nesting object expanding is not allowed.

      • Show samples

        Most API resources have support for bulk fetches.

        All bulk fetch calls also support Partial response, additional response and expanding objects.

      • Show samples

        All bulk fetch responses are paginated. Paginated requests share a common structure, taking at least these two parameters: offset and limit. The default value for offset is 0 and default value for limit is 10.

        The pagination info is included in the response body. It is important to follow link values that are returned instead of constructing your own URLs.

        If not provided, then the value of limit will be assumed as 10

        Please note than maximum value of limit can be 100

      • Show samples

        In bulk fetch calls, sorting is also supported for some attributes in the resource. To query sorted items, you can provide comma separated list of fields by which you the want result to be sorted.

        By default the order of sorting is DESC. However if you want to sort in ascending order for a particular field, you can prepend a - sign in that field.

        Please note that not all attributes support sorting, the attributes that will support sorting will be marked as such in the documentation

      • Show samples

        Similar to sorting, bulk fetch calls also support filtering. To implement a filter in a request, just provide the attribute name and its value you want to filter as a query parameter

        Not all attributes support filter, attributes supporting filter will be marked as such.

        Filters are applied differently depending upon the data type:

        DatatypeDescriptionExample
        DateTimeFilters on datetime are applied in form of from..to. Both from and to are in form of YYYY-MM-DDThh:mm:ss±zzz where zzz is offset form UTC timezone in form of hh:mm including a leading zero for single digit hour value. All time values are 24 hour formatGET: /resource?created_at=2016-12-24T09:00:00-08:00..2016-12-28T13:30:00-08:00
        StringAttributes with string datatype only support exact match filter. Partial match and regex/wildcard match is not supported. GET /resource?email=abc@example.com
        IntegerInteger datatype support both exact match filter and from..to notationGET /resource?state=1..7
        GET /resource?state=5
        BooleanBoolean datatype filters support exact match which can be true, false or nullGET /resource?valid=true

      • User object

        options /users

        Show samples

        User object represents the members of your team who have a valid HackerRank for Work account. The API allows you to create, delete and update your users. You can retrieve individual users as well as a list of all the users in your company.

        Permission can be applied on candidates, interviews, questions and tests separately.

        Value for the permission will mean following:

        Permission ValueAccess level
        0User cannot access the resource
        1User has read access for this resources
        2User has read and write access for this resource
        3User has read, write and delete access for this resource

        Default permissions for each role are:

        RolePermissions
        RecruiterLevel 3 permission for all resources
        DeveloperLevel 3 permission for all resources
        InterviewerLevel 3 permission for questions and interviews. 0 for rest

        Response Sample

        {
          "id": "jox1JH13",
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "send_email": true,
          "status": "locked",
          "phone": "+1-202-28490",
          "timezone": "America/New_York",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "activated": false,
          "last_activity_time": "2025-02-11T23:31:55+0000"
        }
        {} User
        idstringID of the user
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        send_emailbooleanWhether to send activation mail to user. Please note that this should be set to false only when you are using SSO to login to HackerRank
        statusstringCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        activatedbooleanWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.

        Response Sample

        {
          "id": "jox1JH13",
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "send_email": true,
          "status": "locked",
          "phone": "+1-202-28490",
          "timezone": "America/New_York",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "activated": false,
          "last_activity_time": "2025-02-11T23:31:55+0000"
        }
        {} User
        idstringID of the user
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        send_emailbooleanWhether to send activation mail to user. Please note that this should be set to false only when you are using SSO to login to HackerRank
        statusstringCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        activatedbooleanWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.
      • Create user

        post /x/api/v3/users

        Show samples

        Create a new user object.

        Parameters

        body

        User
        Response Type

        Request Body Sample

        {
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "send_email": true,
          "phone": "+1-202-28490",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "teams": [
            {
              "id": "09a38d2bd70a"
            }
          ]
        }
        {} User
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestring(optional)last name of user
        countrystring(optional)country of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        send_emailboolean(optional)Whether to send activation mail to user. Please note that this should be set to false only when you are using SSO to login to HackerRank
        phonestring(optional)Phone number of the user
        questions_permissioninteger(optional)Whether user has permission to create questions
        Can be 0 or 3
        tests_permissioninteger(optional)Whether user has permission to create tests
        Can be 0 or 3
        interviews_permissioninteger(optional)Whether user has permission to create interviews
        Can be 0 or 3
        candidates_permissioninteger(optional)Whether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissioninteger(optional)Whether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissioninteger(optional)Whether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissioninteger(optional)Whether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissioninteger(optional)Whether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminboolean(optional)Whether the user is a company admin or not.
        team_adminboolean(optional)Whether the user is a team admin of the teams that it is a part of.
        teamsarray[UserTeam]List of teams user belongs to.
        {} UserTeam
        idstringId of the team

        Response Sample

        {
          "id": "jox1JH13",
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "status": "locked",
          "phone": "+1-202-28490",
          "timezone": "America/New_York",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "teams": [
            "jia12KNa"
          ],
          "activated": false,
          "last_activity_time": "2025-02-11T23:31:55+0000"
        }
        {} User
        idstringID of the user
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]expandableList of teams user belongs to.
        activatedbooleanWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.

        Request Body Sample

        {
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "send_email": true,
          "phone": "+1-202-28490",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "teams": [
            {
              "id": "09a38d2bd70a"
            }
          ]
        }
        {} User
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestring(optional)last name of user
        countrystring(optional)country of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        send_emailboolean(optional)Whether to send activation mail to user. Please note that this should be set to false only when you are using SSO to login to HackerRank
        phonestring(optional)Phone number of the user
        questions_permissioninteger(optional)Whether user has permission to create questions
        Can be 0 or 3
        tests_permissioninteger(optional)Whether user has permission to create tests
        Can be 0 or 3
        interviews_permissioninteger(optional)Whether user has permission to create interviews
        Can be 0 or 3
        candidates_permissioninteger(optional)Whether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissioninteger(optional)Whether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissioninteger(optional)Whether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissioninteger(optional)Whether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissioninteger(optional)Whether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminboolean(optional)Whether the user is a company admin or not.
        team_adminboolean(optional)Whether the user is a team admin of the teams that it is a part of.
        teamsarray[UserTeam]List of teams user belongs to.
        {} UserTeam
        idstringId of the team

        Response Sample

        {
          "id": "jox1JH13",
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "status": "locked",
          "phone": "+1-202-28490",
          "timezone": "America/New_York",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "teams": [
            "jia12KNa"
          ],
          "activated": false,
          "last_activity_time": "2025-02-11T23:31:55+0000"
        }
        {} User
        idstringID of the user
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]expandableList of teams user belongs to.
        activatedbooleanWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.
      • Show samples

        Returns the list of your users.

        Parameters

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "jox1JH13",
              "email": "mark@example.com",
              "firstname": "Mark",
              "lastname": "Peirson",
              "country": "U.S.A.",
              "role": "recruiter",
              "status": "locked",
              "phone": "+1-202-28490",
              "timezone": "America/New_York",
              "questions_permission": 0,
              "tests_permission": 0,
              "interviews_permission": 0,
              "candidates_permission": 0,
              "shared_questions_permission": 0,
              "shared_tests_permission": 0,
              "shared_interviews_permission": 0,
              "shared_candidates_permission": 0,
              "company_admin": false,
              "team_admin": false,
              "teams": [
                "jia12KNa"
              ],
              "activated": false,
              "last_activity_time": "2025-02-11T23:31:55+0000"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[User]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} User
        idstringfilterableID of the user
        emailstringfilterableEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringfilterableWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringfilterableCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanfilterableWhether the user is a company admin or not.
        team_adminbooleanfilterableWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]filterableexpandableList of teams user belongs to.
        activatedbooleanfilterableWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.

        Response Sample

        {
          "data": [
            {
              "id": "jox1JH13",
              "email": "mark@example.com",
              "firstname": "Mark",
              "lastname": "Peirson",
              "country": "U.S.A.",
              "role": "recruiter",
              "status": "locked",
              "phone": "+1-202-28490",
              "timezone": "America/New_York",
              "questions_permission": 0,
              "tests_permission": 0,
              "interviews_permission": 0,
              "candidates_permission": 0,
              "shared_questions_permission": 0,
              "shared_tests_permission": 0,
              "shared_interviews_permission": 0,
              "shared_candidates_permission": 0,
              "company_admin": false,
              "team_admin": false,
              "teams": [
                "jia12KNa"
              ],
              "activated": false,
              "last_activity_time": "2025-02-11T23:31:55+0000"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[User]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} User
        idstringfilterableID of the user
        emailstringfilterableEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringfilterableWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringfilterableCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanfilterableWhether the user is a company admin or not.
        team_adminbooleanfilterableWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]filterableexpandableList of teams user belongs to.
        activatedbooleanfilterableWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.
      • Retrieve user

        get /x/api/v3/users/{id}

        Show samples

        Retrieves the details of an existing user. You need only supply the unique customer identifier that was returned upon user creation.

        Parameters

        id
        string

        ID of user to retrieve

        Response Type

        Response Sample

        {
          "id": "jox1JH13",
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "status": "locked",
          "phone": "+1-202-28490",
          "timezone": "America/New_York",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "teams": [
            "jia12KNa"
          ],
          "activated": false,
          "last_activity_time": "2025-02-11T23:31:55+0000"
        }
        {} User
        idstringID of the user
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]expandableList of teams user belongs to.
        activatedbooleanWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.

        Response Sample

        {
          "id": "jox1JH13",
          "email": "mark@example.com",
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "status": "locked",
          "phone": "+1-202-28490",
          "timezone": "America/New_York",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false,
          "teams": [
            "jia12KNa"
          ],
          "activated": false,
          "last_activity_time": "2025-02-11T23:31:55+0000"
        }
        {} User
        idstringID of the user
        emailstringEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]expandableList of teams user belongs to.
        activatedbooleanWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.
      • Show samples

        Updates the specified user by setting the values of the parameters passed. Any parameters not provided will be left unchanged. This request accepts mostly the same arguments as the user creation call.

        Parameters

        id
        string

        ID of user to update

        body

        User

        Request Body Sample

        {
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "phone": "+1-202-28490",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false
        }
        {} User
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        phonestringPhone number of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.

        Request Body Sample

        {
          "firstname": "Mark",
          "lastname": "Peirson",
          "country": "U.S.A.",
          "role": "recruiter",
          "phone": "+1-202-28490",
          "questions_permission": 0,
          "tests_permission": 0,
          "interviews_permission": 0,
          "candidates_permission": 0,
          "shared_questions_permission": 0,
          "shared_tests_permission": 0,
          "shared_interviews_permission": 0,
          "shared_candidates_permission": 0,
          "company_admin": false,
          "team_admin": false
        }
        {} User
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        phonestringPhone number of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanWhether the user is a company admin or not.
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
      • Show samples

        Lock a user. This will also remove user from all the team that they are currently part of.

        Parameters

        id
        string

        ID of user to lock

        Response Messages

        204 User locked
      • Show samples

        Parameters

        search_string

        Name or email

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "jox1JH13",
              "email": "mark@example.com",
              "firstname": "Mark",
              "lastname": "Peirson",
              "country": "U.S.A.",
              "role": "recruiter",
              "status": "locked",
              "phone": "+1-202-28490",
              "timezone": "America/New_York",
              "questions_permission": 0,
              "tests_permission": 0,
              "interviews_permission": 0,
              "candidates_permission": 0,
              "shared_questions_permission": 0,
              "shared_tests_permission": 0,
              "shared_interviews_permission": 0,
              "shared_candidates_permission": 0,
              "company_admin": false,
              "team_admin": false,
              "teams": [
                "jia12KNa"
              ],
              "activated": false,
              "last_activity_time": "2025-02-11T23:31:55+0000"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[User]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} User
        idstringfilterableID of the user
        emailstringfilterableEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringfilterableWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringfilterableCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanfilterableWhether the user is a company admin or not.
        team_adminbooleanfilterableWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]filterableexpandableList of teams user belongs to.
        activatedbooleanfilterableWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.

        Response Sample

        {
          "data": [
            {
              "id": "jox1JH13",
              "email": "mark@example.com",
              "firstname": "Mark",
              "lastname": "Peirson",
              "country": "U.S.A.",
              "role": "recruiter",
              "status": "locked",
              "phone": "+1-202-28490",
              "timezone": "America/New_York",
              "questions_permission": 0,
              "tests_permission": 0,
              "interviews_permission": 0,
              "candidates_permission": 0,
              "shared_questions_permission": 0,
              "shared_tests_permission": 0,
              "shared_interviews_permission": 0,
              "shared_candidates_permission": 0,
              "company_admin": false,
              "team_admin": false,
              "teams": [
                "jia12KNa"
              ],
              "activated": false,
              "last_activity_time": "2025-02-11T23:31:55+0000"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[User]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} User
        idstringfilterableID of the user
        emailstringfilterableEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        countrystringcountry of user
        rolestringfilterableWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        statusstringfilterableCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        shared_questions_permissionintegerWhether user has permission to view/edit/delete questions shared with it.
        Can be 0, 1, 2 or 3
        shared_tests_permissionintegerWhether user has permission to view/edit/delete tests shared with it.
        Can be 0, 1, 2 or 3
        shared_interviews_permissionintegerWhether user has permission to view/edit/delete interviews shared with it.
        Can be 0, 1, 2 or 3
        shared_candidates_permissionintegerWhether user has permission to view/edit/delete candidates shared with it.
        Can be 0, 1, 2 or 3
        company_adminbooleanfilterableWhether the user is a company admin or not.
        team_adminbooleanfilterableWhether the user is a team admin of the teams that it is a part of.
        teamsarray[string]filterableexpandableList of teams user belongs to.
        activatedbooleanfilterableWhether the user email is activated or not.
        last_activity_timedateTimeTimestamp when the user was last active.
      • Team object

        options /teams

        Show samples

        You can manage teams in your company account using this API. Use teams to group users based on access control and permission groups.

        Response Sample

        {
          "id": "14bd8ec8b071",
          "name": "Owners",
          "created_at": "2025-02-11T23:31:55+0000",
          "recruiter_count": 1,
          "developer_count": 1,
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        idstringID of the team
        namestringName of the team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team

        Response Sample

        {
          "id": "14bd8ec8b071",
          "name": "Owners",
          "created_at": "2025-02-11T23:31:55+0000",
          "recruiter_count": 1,
          "developer_count": 1,
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        idstringID of the team
        namestringName of the team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team
      • Create team

        post /x/api/v3/teams

        Show samples

        Parameters

        body

        Team
        Response Type

        Request Body Sample

        {
          "name": "Owners",
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        namestringName of the team
        recruiter_capinteger(optional)Limit of recruiters of this team
        developer_capinteger(optional)Limit of developers of this team
        invite_asstring(optional)The display name for invite emails sent to candidates
        locationsarray[string](optional)Locations of this team
        departmentsarray[string](optional)Departments of developers of this team

        Response Sample

        {
          "id": "14bd8ec8b071",
          "name": "Owners",
          "owner": "fb0a3f2b430a",
          "created_at": "2025-02-11T23:31:55+0000",
          "recruiter_count": 1,
          "developer_count": 1,
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        idstringID of the team
        namestringName of the team
        ownerstringexpandableUser who created this team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team

        Request Body Sample

        {
          "name": "Owners",
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        namestringName of the team
        recruiter_capinteger(optional)Limit of recruiters of this team
        developer_capinteger(optional)Limit of developers of this team
        invite_asstring(optional)The display name for invite emails sent to candidates
        locationsarray[string](optional)Locations of this team
        departmentsarray[string](optional)Departments of developers of this team

        Response Sample

        {
          "id": "14bd8ec8b071",
          "name": "Owners",
          "owner": "fb0a3f2b430a",
          "created_at": "2025-02-11T23:31:55+0000",
          "recruiter_count": 1,
          "developer_count": 1,
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        idstringID of the team
        namestringName of the team
        ownerstringexpandableUser who created this team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team
      • Show samples

        Parameters

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "14bd8ec8b071",
              "name": "Owners",
              "owner": "fb0a3f2b430a",
              "created_at": "2025-02-11T23:31:55+0000",
              "recruiter_count": 1,
              "developer_count": 1,
              "recruiter_cap": 3,
              "developer_cap": 2,
              "invite_as": "HackerRank Tech Team",
              "locations": [
                "New York",
                "Boston"
              ],
              "departments": [
                "HR",
                "Technology"
              ]
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/teams?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/teams?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/teams?limit=1&offset=12",
          "total": 13
        }
        dataarray[Team]List of requested teams
        page_totalintegerCount of total teams in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Team
        idstringfilterableID of the team
        namestringName of the team
        ownerstringexpandableUser who created this team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team

        Response Sample

        {
          "data": [
            {
              "id": "14bd8ec8b071",
              "name": "Owners",
              "owner": "fb0a3f2b430a",
              "created_at": "2025-02-11T23:31:55+0000",
              "recruiter_count": 1,
              "developer_count": 1,
              "recruiter_cap": 3,
              "developer_cap": 2,
              "invite_as": "HackerRank Tech Team",
              "locations": [
                "New York",
                "Boston"
              ],
              "departments": [
                "HR",
                "Technology"
              ]
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/teams?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/teams?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/teams?limit=1&offset=12",
          "total": 13
        }
        dataarray[Team]List of requested teams
        page_totalintegerCount of total teams in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Team
        idstringfilterableID of the team
        namestringName of the team
        ownerstringexpandableUser who created this team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team
      • Retrieve team

        get /x/api/v3/teams/{id}

        Show samples

        Parameters

        id

        ID of the team to retrieve

        Response Type

        Response Sample

        {
          "id": "14bd8ec8b071",
          "name": "Owners",
          "owner": "fb0a3f2b430a",
          "created_at": "2025-02-11T23:31:55+0000",
          "recruiter_count": 1,
          "developer_count": 1,
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        idstringID of the team
        namestringName of the team
        ownerstringexpandableUser who created this team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team

        Response Sample

        {
          "id": "14bd8ec8b071",
          "name": "Owners",
          "owner": "fb0a3f2b430a",
          "created_at": "2025-02-11T23:31:55+0000",
          "recruiter_count": 1,
          "developer_count": 1,
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        idstringID of the team
        namestringName of the team
        ownerstringexpandableUser who created this team
        created_atdateTimeTimestamp at which this team is created
        recruiter_countintegerCount of recruiters of this team
        developer_countintegerCount of developers of this team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team
      • Show samples

        Parameters

        id

        ID of the team to update

        body

        Team

        Request Body Sample

        {
          "name": "Owners",
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        namestringName of the team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team

        Request Body Sample

        {
          "name": "Owners",
          "recruiter_cap": 3,
          "developer_cap": 2,
          "invite_as": "HackerRank Tech Team",
          "locations": [
            "New York",
            "Boston"
          ],
          "departments": [
            "HR",
            "Technology"
          ]
        }
        {} Team
        namestringName of the team
        recruiter_capintegerLimit of recruiters of this team
        developer_capintegerLimit of developers of this team
        invite_asstringThe display name for invite emails sent to candidates
        locationsarray[string]Locations of this team
        departmentsarray[string]Departments of developers of this team
      • Show samples

        Parameters

        team_id

        ID of the team to retrieve

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "team": "09a38d2bd70a",
              "user": "01kmimas1"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/teams/1/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/teams/1/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/teams/1/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[UserTeamMembership]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} UserTeamMembership
        teamstringexpandableId of the team
        userstringexpandableId of user who belongs to this team

        Response Sample

        {
          "data": [
            {
              "team": "09a38d2bd70a",
              "user": "01kmimas1"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/teams/1/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/teams/1/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/teams/1/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[UserTeamMembership]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} UserTeamMembership
        teamstringexpandableId of the team
        userstringexpandableId of user who belongs to this team
      • Show samples

        Parameters

        team_id

        ID of the team

        user_id

        ID of the user

        Response Type

        Response Sample

        {
          "team": "09a38d2bd70a",
          "user": "01kmimas1"
        }
        {} UserTeamMembership
        teamstringexpandableId of the team
        userstringexpandableId of user who belongs to this team

        Response Sample

        {
          "team": "09a38d2bd70a",
          "user": "01kmimas1"
        }
        {} UserTeamMembership
        teamstringexpandableId of the team
        userstringexpandableId of user who belongs to this team
      • Test object

        options /tests

        Show samples

        API allows you to perform CRUD actions on tests resource for your account. As of now, manupulation of questions is not supported in tests API.

        Response Sample

        {
          "id": "1PxfG1348",
          "unique_id": "pxJk121",
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+0000",
          "endtime": "2025-02-18T23:31:55+0000",
          "duration": 60,
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "starred": true,
          "created_at": "2025-02-11T23:31:55+0000",
          "state": "active",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "sections": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "secure": false,
          "short_login_url": null,
          "public_login_url": null,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]List of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]List of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegerIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringIf set, candidates can login to the test using this password
        hide_compile_testbooleanIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegerScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegerScore to add to total score per correct MCQ question
        securebooleanIf set to true then test will be fulllscreened for candidates
        short_login_urlstringLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanIf true than questions will be shuffled
        test_adminsarray[string]Test admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git

        Response Sample

        {
          "id": "1PxfG1348",
          "unique_id": "pxJk121",
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+0000",
          "endtime": "2025-02-18T23:31:55+0000",
          "duration": 60,
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "starred": true,
          "created_at": "2025-02-11T23:31:55+0000",
          "state": "active",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "sections": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "secure": false,
          "short_login_url": null,
          "public_login_url": null,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]List of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]List of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegerIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringIf set, candidates can login to the test using this password
        hide_compile_testbooleanIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegerScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegerScore to add to total score per correct MCQ question
        securebooleanIf set to true then test will be fulllscreened for candidates
        short_login_urlstringLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanIf true than questions will be shuffled
        test_adminsarray[string]Test admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git
      • Show samples

        Parameters

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "1PxfG1348",
              "unique_id": "pxJk121",
              "name": "Java Challenge",
              "starttime": "2025-02-11T23:31:55+0000",
              "endtime": "2025-02-18T23:31:55+0000",
              "duration": 60,
              "owner": "p12xLmj23",
              "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
              "starred": true,
              "created_at": "2025-02-11T23:31:55+0000",
              "state": "active",
              "locked": false,
              "draft": true,
              "languages": [
                "java",
                "cpp"
              ],
              "candidate_details": [
                {
                  "predefined_label": "full_name",
                  "required": true
                },
                {
                  "predefined_label": "work_experience",
                  "required": true
                }
              ],
              "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
              "cutoff_score": 85,
              "master_password": null,
              "hide_compile_test": null,
              "tags": [
                "Java",
                "Hard",
                "Senior"
              ],
              "role_ids": [
                "e9861a782033"
              ],
              "experience": [
                "New Graduate",
                "0-2 years"
              ],
              "questions": null,
              "sections": null,
              "mcq_incorrect_score": -1,
              "mcq_correct_score": 4,
              "locked_by": null,
              "secure": false,
              "short_login_url": null,
              "public_login_url": null,
              "shuffle_questions": null,
              "test_admins": null,
              "hide_template": null,
              "enable_acknowledgement": null,
              "enable_proctoring": false,
              "candidate_tab_switch": false,
              "track_editor_paste": true,
              "ide_config": "ide_and_git"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/tests?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/tests?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/tests?limit=1&offset=12",
          "total": 13
        }
        dataarray[Tests]List of requested tests
        page_totalintegerCount of total tests in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        ownerstringexpandableUser who created this test.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringfilterableCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]additionalList of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]additionalList of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringadditionalCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegeradditionalIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringadditionalIf set, candidates can login to the test using this password
        hide_compile_testbooleanadditionalIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]filterableList of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegeradditionalScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegeradditionalScore to add to total score per correct MCQ question
        locked_bystringadditionalexpandableUser who locked this test (if any).
        securebooleanadditionalIf set to true then test will be fulllscreened for candidates
        short_login_urlstringadditionalLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringadditionalPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanadditionalIf true than questions will be shuffled
        test_adminsarray[string]additionalTest admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanadditionalIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanadditionalIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanadditionalIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanadditionalIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanadditionalIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringadditionalConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git

        Response Sample

        {
          "data": [
            {
              "id": "1PxfG1348",
              "unique_id": "pxJk121",
              "name": "Java Challenge",
              "starttime": "2025-02-11T23:31:55+0000",
              "endtime": "2025-02-18T23:31:55+0000",
              "duration": 60,
              "owner": "p12xLmj23",
              "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
              "starred": true,
              "created_at": "2025-02-11T23:31:55+0000",
              "state": "active",
              "locked": false,
              "draft": true,
              "languages": [
                "java",
                "cpp"
              ],
              "candidate_details": [
                {
                  "predefined_label": "full_name",
                  "required": true
                },
                {
                  "predefined_label": "work_experience",
                  "required": true
                }
              ],
              "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
              "cutoff_score": 85,
              "master_password": null,
              "hide_compile_test": null,
              "tags": [
                "Java",
                "Hard",
                "Senior"
              ],
              "role_ids": [
                "e9861a782033"
              ],
              "experience": [
                "New Graduate",
                "0-2 years"
              ],
              "questions": null,
              "sections": null,
              "mcq_incorrect_score": -1,
              "mcq_correct_score": 4,
              "locked_by": null,
              "secure": false,
              "short_login_url": null,
              "public_login_url": null,
              "shuffle_questions": null,
              "test_admins": null,
              "hide_template": null,
              "enable_acknowledgement": null,
              "enable_proctoring": false,
              "candidate_tab_switch": false,
              "track_editor_paste": true,
              "ide_config": "ide_and_git"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/tests?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/tests?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/tests?limit=1&offset=12",
          "total": 13
        }
        dataarray[Tests]List of requested tests
        page_totalintegerCount of total tests in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        ownerstringexpandableUser who created this test.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringfilterableCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]additionalList of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]additionalList of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringadditionalCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegeradditionalIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringadditionalIf set, candidates can login to the test using this password
        hide_compile_testbooleanadditionalIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]filterableList of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegeradditionalScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegeradditionalScore to add to total score per correct MCQ question
        locked_bystringadditionalexpandableUser who locked this test (if any).
        securebooleanadditionalIf set to true then test will be fulllscreened for candidates
        short_login_urlstringadditionalLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringadditionalPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanadditionalIf true than questions will be shuffled
        test_adminsarray[string]additionalTest admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanadditionalIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanadditionalIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanadditionalIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanadditionalIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanadditionalIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringadditionalConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git
      • Create test

        post /x/api/v3/tests

        Show samples

        Parameters

        body

        Tests
        Response Type

        Request Body Sample

        {
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+00:00",
          "endtime": "2025-02-18T23:31:55+00:00",
          "duration": 60,
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "secure": false,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        namestringName of the test.
        starttimedatetime(optional)If set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetime(optional)If set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        instructionsstring(optional)HTML for instructions displayed to candidate in the test login page.
        lockedboolean(optional)Whether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftboolean(optional)Describes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string](optional)List of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string](optional)List of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstring(optional)Candidate will be asked to agree to this text before logging into the test.
        cutoff_scoreinteger(optional)If set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstring(optional)If set, candidates can login to the test using this password
        hide_compile_testboolean(optional)If set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string](optional)List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string](optional)List of question ids associated with this test.
        mcq_incorrect_scoreinteger(optional)Score to deduct from total score per incorect MCQ question
        mcq_correct_scoreinteger(optional)Score to add to total score per correct MCQ question
        secureboolean(optional)If set to true then test will be fulllscreened for candidates
        shuffle_questionsboolean(optional)If true than questions will be shuffled
        test_adminsarray[string](optional)Test admins will also receive summary report mails when candidate completes a test.
        hide_templateboolean(optional)If set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementboolean(optional)If set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringboolean(optional)If set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchboolean(optional)If set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pasteboolean(optional)If set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstring(optional)Configure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git

        Response Sample

        {
          "id": "1PxfG1348",
          "unique_id": "pxJk121",
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+0000",
          "endtime": "2025-02-18T23:31:55+0000",
          "duration": 60,
          "owner": "p12xLmj23",
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "starred": true,
          "created_at": "2025-02-11T23:31:55+0000",
          "state": "active",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "sections": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "locked_by": null,
          "secure": false,
          "short_login_url": null,
          "public_login_url": null,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        ownerstringexpandableUser who created this test.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]additionalList of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]additionalList of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringadditionalCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegeradditionalIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringadditionalIf set, candidates can login to the test using this password
        hide_compile_testbooleanadditionalIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegeradditionalScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegeradditionalScore to add to total score per correct MCQ question
        locked_bystringadditionalexpandableUser who locked this test (if any).
        securebooleanadditionalIf set to true then test will be fulllscreened for candidates
        short_login_urlstringadditionalLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringadditionalPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanadditionalIf true than questions will be shuffled
        test_adminsarray[string]additionalTest admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanadditionalIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanadditionalIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanadditionalIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanadditionalIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanadditionalIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringadditionalConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git

        Request Body Sample

        {
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+00:00",
          "endtime": "2025-02-18T23:31:55+00:00",
          "duration": 60,
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "secure": false,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        namestringName of the test.
        starttimedatetime(optional)If set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetime(optional)If set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        instructionsstring(optional)HTML for instructions displayed to candidate in the test login page.
        lockedboolean(optional)Whether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftboolean(optional)Describes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string](optional)List of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string](optional)List of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstring(optional)Candidate will be asked to agree to this text before logging into the test.
        cutoff_scoreinteger(optional)If set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstring(optional)If set, candidates can login to the test using this password
        hide_compile_testboolean(optional)If set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string](optional)List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string](optional)List of question ids associated with this test.
        mcq_incorrect_scoreinteger(optional)Score to deduct from total score per incorect MCQ question
        mcq_correct_scoreinteger(optional)Score to add to total score per correct MCQ question
        secureboolean(optional)If set to true then test will be fulllscreened for candidates
        shuffle_questionsboolean(optional)If true than questions will be shuffled
        test_adminsarray[string](optional)Test admins will also receive summary report mails when candidate completes a test.
        hide_templateboolean(optional)If set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementboolean(optional)If set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringboolean(optional)If set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchboolean(optional)If set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pasteboolean(optional)If set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstring(optional)Configure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git

        Response Sample

        {
          "id": "1PxfG1348",
          "unique_id": "pxJk121",
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+0000",
          "endtime": "2025-02-18T23:31:55+0000",
          "duration": 60,
          "owner": "p12xLmj23",
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "starred": true,
          "created_at": "2025-02-11T23:31:55+0000",
          "state": "active",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "sections": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "locked_by": null,
          "secure": false,
          "short_login_url": null,
          "public_login_url": null,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        ownerstringexpandableUser who created this test.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]additionalList of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]additionalList of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringadditionalCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegeradditionalIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringadditionalIf set, candidates can login to the test using this password
        hide_compile_testbooleanadditionalIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegeradditionalScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegeradditionalScore to add to total score per correct MCQ question
        locked_bystringadditionalexpandableUser who locked this test (if any).
        securebooleanadditionalIf set to true then test will be fulllscreened for candidates
        short_login_urlstringadditionalLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringadditionalPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanadditionalIf true than questions will be shuffled
        test_adminsarray[string]additionalTest admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanadditionalIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanadditionalIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanadditionalIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanadditionalIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanadditionalIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringadditionalConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git
      • Retrieve test

        get /x/api/v3/tests/{id}

        Show samples

        Parameters

        id

        ID of the Test

        Response Type

        Response Sample

        {
          "id": "1PxfG1348",
          "unique_id": "pxJk121",
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+0000",
          "endtime": "2025-02-18T23:31:55+0000",
          "duration": 60,
          "owner": "p12xLmj23",
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "starred": true,
          "created_at": "2025-02-11T23:31:55+0000",
          "state": "active",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "sections": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "locked_by": null,
          "secure": false,
          "short_login_url": null,
          "public_login_url": null,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        ownerstringexpandableUser who created this test.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]additionalList of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]additionalList of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringadditionalCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegeradditionalIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringadditionalIf set, candidates can login to the test using this password
        hide_compile_testbooleanadditionalIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegeradditionalScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegeradditionalScore to add to total score per correct MCQ question
        locked_bystringadditionalexpandableUser who locked this test (if any).
        securebooleanadditionalIf set to true then test will be fulllscreened for candidates
        short_login_urlstringadditionalLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringadditionalPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanadditionalIf true than questions will be shuffled
        test_adminsarray[string]additionalTest admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanadditionalIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanadditionalIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanadditionalIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanadditionalIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanadditionalIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringadditionalConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git

        Response Sample

        {
          "id": "1PxfG1348",
          "unique_id": "pxJk121",
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+0000",
          "endtime": "2025-02-18T23:31:55+0000",
          "duration": 60,
          "owner": "p12xLmj23",
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "starred": true,
          "created_at": "2025-02-11T23:31:55+0000",
          "state": "active",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "sections": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "locked_by": null,
          "secure": false,
          "short_login_url": null,
          "public_login_url": null,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        idstringID of the test
        unique_idstringCandidate facing ID of the test
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        ownerstringexpandableUser who created this test.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        starredbooleanWhether this test has been 'starred' by the user of the api
        created_atdateTimeTimestamp when this test was created
        statestringCurrent state of the test
        Can be active or archived
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]additionalList of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]additionalList of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringadditionalCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegeradditionalIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringadditionalIf set, candidates can login to the test using this password
        hide_compile_testbooleanadditionalIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        sectionsobjectSection slot data for the test.
        mcq_incorrect_scoreintegeradditionalScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegeradditionalScore to add to total score per correct MCQ question
        locked_bystringadditionalexpandableUser who locked this test (if any).
        securebooleanadditionalIf set to true then test will be fulllscreened for candidates
        short_login_urlstringadditionalLogin URL for the test. This requires master password to be setup for test.
        public_login_urlstringadditionalPublic login URL for the test. This URL do not require a password.
        shuffle_questionsbooleanadditionalIf true than questions will be shuffled
        test_adminsarray[string]additionalTest admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanadditionalIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanadditionalIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanadditionalIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanadditionalIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanadditionalIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringadditionalConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git
      • Show samples

        Parameters

        id

        ID of the Test

        body

        Tests

        Request Body Sample

        {
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+00:00",
          "endtime": "2025-02-18T23:31:55+00:00",
          "duration": 60,
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "secure": false,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]List of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]List of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegerIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringIf set, candidates can login to the test using this password
        hide_compile_testbooleanIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        mcq_incorrect_scoreintegerScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegerScore to add to total score per correct MCQ question
        securebooleanIf set to true then test will be fulllscreened for candidates
        shuffle_questionsbooleanIf true than questions will be shuffled
        test_adminsarray[string]Test admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git

        Request Body Sample

        {
          "name": "Java Challenge",
          "starttime": "2025-02-11T23:31:55+00:00",
          "endtime": "2025-02-18T23:31:55+00:00",
          "duration": 60,
          "instructions": "<ul><li>Please take this challenge in a single sitting</li><li>All the best</li>",
          "locked": false,
          "draft": true,
          "languages": [
            "java",
            "cpp"
          ],
          "candidate_details": [
            {
              "predefined_label": "full_name",
              "required": true
            },
            {
              "predefined_label": "work_experience",
              "required": true
            }
          ],
          "custom_acknowledge_text": " I will not consult/copy code from any source including a website, book, or friend/colleague to complete these tests, though may refer language documentation or use an IDE that has code completion features.",
          "cutoff_score": 85,
          "master_password": null,
          "hide_compile_test": null,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "role_ids": [
            "e9861a782033"
          ],
          "experience": [
            "New Graduate",
            "0-2 years"
          ],
          "questions": null,
          "mcq_incorrect_score": -1,
          "mcq_correct_score": 4,
          "secure": false,
          "shuffle_questions": null,
          "test_admins": null,
          "hide_template": null,
          "enable_acknowledgement": null,
          "enable_proctoring": false,
          "candidate_tab_switch": false,
          "track_editor_paste": true,
          "ide_config": "ide_and_git"
        }
        {} Tests
        namestringName of the test.
        starttimedatetimeIf set, then logins before this time will be disabled. Candidates already logged in will not be affected.
        endtimedatetimeIf set, then logins after this time will be disabled. Candidates who are already logged in will be able to give the test normally even after endtime.
        durationintegerDuration of test in minutes.
        instructionsstringHTML for instructions displayed to candidate in the test login page.
        lockedbooleanWhether this test is locked or not. Locked test cannot be edited, however candidates can be invited to the test.
        draftbooleanDescribes if this test is currently in Draft(true)/Published(false) state. Candidates can only be invited for published tests.
        Can be true or false
        languagesarray[string]List of languages available in the test for coding and approximate questions. Note: *null* in this fields means that all languages are enabled
        candidate_detailsarray[string]List of details that candidates will be asked to enter before logging into the test. These details will be available in the report view of the test. It should be an Array of JSON.

        List of default fields:[full_name, city, work_experience, roll_number, email_address, year_of_graduation, cgpa, univ, phone_number, contact_recruiter, branch, gender, degree, role, resume, pgdegree, city_graduation, gpa, major, linkedin]
        For default fields add field in following way {predefined_label: 'roll_number', required: true} in the array.

        If you want to add another field to candidate_details not present in default list, you can add in the following way:
        {title: 'First Name', required: true, type: 'input'}. Following are the supported input types: [input, select, radio, checkbox, file]

        In case of input being select, you can send options for select in following way: {title: 'Age', required: true, type: 'select', options: ['<20', '20-30', '>30']}

        Order of candidate_details will be same as order of array
        custom_acknowledge_textstringCandidate will be asked to agree to this text before logging into the test.
        cutoff_scoreintegerIf set, then candidates scoring equal or more than this value will automatically be placed into "Qualified" bucket, while candidates scoring less will be placed in "Failed" bucket
        master_passwordstringIf set, candidates can login to the test using this password
        hide_compile_testbooleanIf set to true then candidate will not be able to see compile button for coding and approximate type questions.
        tagsarray[string]List of tags associated with this test
        role_idsarray[string]List of role ids associated with this test.
        experiencearray[string]Experience levels associated with this test.
        Can be Intern, New Graduate, 0-2 years, 2-5 years, >5 years or All Experience Levels
        questionsarray[string]List of question ids associated with this test.
        mcq_incorrect_scoreintegerScore to deduct from total score per incorect MCQ question
        mcq_correct_scoreintegerScore to add to total score per correct MCQ question
        securebooleanIf set to true then test will be fulllscreened for candidates
        shuffle_questionsbooleanIf true than questions will be shuffled
        test_adminsarray[string]Test admins will also receive summary report mails when candidate completes a test.
        hide_templatebooleanIf set to true then head and tail templates will not be shown to candidates.
        enable_acknowledgementbooleanIf set to false, then candidate will not be asked to agree to acknowledgement text.
        enable_proctoringbooleanIf set to true, then this will force the candidate to turn their webcam on before starting the Test.We will take snapshots periodically during the Test, and you can view them in the Candidate's report.
        By default this field is set to false.
        candidate_tab_switchbooleanIf set to true, then this will track if the candidate moved out of the tab during the test.
        By default this field is set to false.
        track_editor_pastebooleanIf set to true, this will track candidate's editor paste activity.If they still copy/paste code, you can view the pasted code in the candidate's report.
        By default this field is set to true.
        Note: This flag only works for Coding, Approximate & Database questions.
        ide_configstringConfigure IDE for candidates to solve Front-end, Back-end, and Full-stack questions.
        Default is set to ide_and_git.
        OptionUsage
        ide_and_gitUse the online IDE or download via Git.
        ideOnly use the online IDE (downloading via Git is disabled).
        gitDownload via Git and work offline (Online IDE is disabled).
        Can be ide_and_git, ide or git
      • List all inviters for a test

        get /x/api/v3/tests/{id}/inviters

        Show samples

        Parameters

        id

        ID of the test

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "jox1JH13",
              "email": "mark@example.com",
              "firstname": "Mark",
              "lastname": "Peirson",
              "role": "recruiter",
              "status": "locked",
              "phone": "+1-202-28490",
              "timezone": "America/New_York",
              "questions_permission": 0,
              "tests_permission": 0,
              "interviews_permission": 0,
              "candidates_permission": 0,
              "teams": [
                "jia12KNa"
              ],
              "candidates_invited": 1,
              "activated": false
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[Inviters]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Inviters
        idstringfilterableID of the user
        emailstringfilterableEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        rolestringfilterableRole of user
        Can be recruiter, developer or admin
        statusstringfilterableCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        teamsarray[string]expandableList of teams user belongs to.
        candidates_invitedintegerNumber of candidates invited by the user
        activatedbooleanfilterableWhether the user email is activated or not.

        Response Sample

        {
          "data": [
            {
              "id": "jox1JH13",
              "email": "mark@example.com",
              "firstname": "Mark",
              "lastname": "Peirson",
              "role": "recruiter",
              "status": "locked",
              "phone": "+1-202-28490",
              "timezone": "America/New_York",
              "questions_permission": 0,
              "tests_permission": 0,
              "interviews_permission": 0,
              "candidates_permission": 0,
              "teams": [
                "jia12KNa"
              ],
              "candidates_invited": 1,
              "activated": false
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/users?limit=1&offset=12",
          "total": 13
        }
        dataarray[Inviters]List of requested users
        page_totalintegerCount of total users in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Inviters
        idstringfilterableID of the user
        emailstringfilterableEmail address of user
        firstnamestringFirst name of user
        lastnamestringlast name of user
        rolestringfilterableRole of user
        Can be recruiter, developer or admin
        statusstringfilterableCurrent status of user. While querying, by default only active users will be returned
        Can be locked, active or all
        phonestringPhone number of the user
        timezonestringTimezone of the user
        questions_permissionintegerWhether user has permission to create questions
        Can be 0 or 3
        tests_permissionintegerWhether user has permission to create tests
        Can be 0 or 3
        interviews_permissionintegerWhether user has permission to create interviews
        Can be 0 or 3
        candidates_permissionintegerWhether user has permission to create candidates
        Can be 0 or 3
        teamsarray[string]expandableList of teams user belongs to.
        candidates_invitedintegerNumber of candidates invited by the user
        activatedbooleanfilterableWhether the user email is activated or not.
      • Test Candidate object

        options /candidates

        Show samples

        This object represents candidate that are invited or have attempted a test (or both). As such, a candidate object always exists in context of test.

        Response Sample

        {
          "id": "98Sjnbj12",
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "score": 32.5,
          "attempt_starttime": "2016-05-24T06:27:25+0000",
          "attempt_endtime": "2016-05-24T11:57:25+0000",
          "status": -1,
          "ats_state": 0,
          "invite_email_done": true,
          "invite_valid": true,
          "invited_on": "2016-05-14T11:57:25+0000",
          "invite_valid_from": "2025-02-10T23:31:55+0000",
          "invite_valid_to": "2025-02-11T23:31:55+0000",
          "invite_link": "hackerrank.com/test/sample/auth_string",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "subject": null,
          "message": null,
          "template": null,
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "send_email": true,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "force": null,
          "force_reattempt": null,
          "accommodations": null,
          "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
          "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
          "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
          "scores_tags_split": {
            "Java": 20,
            "Hard": 2,
            "Senior": 10
          },
          "scores_skills_split": {
            "Problem Solving (Basic)": 100,
            ".NET (Intermediate)": 0
          },
          "added_time": 0,
          "unclaimed_added_time": 0,
          "comments": null,
          "plagiarism": null,
          "plagiarism_status": null,
          "max_code_similarity": null,
          "feedback": "Nice experience",
          "percentage_score": 50,
          "candidate_details": [
            {
              "field_name": "year_of_graduation",
              "title": "Year of graduation",
              "value": "2015"
            }
          ],
          "out_of_window_events": 0,
          "out_of_window_duration": 0,
          "editor_paste_count": 0,
          "proctor_images": []
        }
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        attempt_starttimedatetimeTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimeTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanWhether this invite is still valid or not.
        invited_ondatetimeTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        subjectstringSubject of the candidate invite mail.
        messagestringCustom message that will be prepended to the candidate invite mail body.
        templatestringID of the template to be used for inviting candidate.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        send_emailbooleanFlag to send the invite email to the candidate. By default this flag is "false" and email would not be sent. In order to send invite emails please pass this parameter with value "true"
        tagsarray[string]List of tags associated with this candidate.
        forcebooleanFlag which forces sending an email even when the candidate has already been invited.
        force_reattemptbooleanForce re-invite even when the candidate has already attempted the test.
        accommodationsobjectObject containing candidate accommodations.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field

        Response Sample

        {
          "id": "98Sjnbj12",
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "score": 32.5,
          "attempt_starttime": "2016-05-24T06:27:25+0000",
          "attempt_endtime": "2016-05-24T11:57:25+0000",
          "status": -1,
          "ats_state": 0,
          "invite_email_done": true,
          "invite_valid": true,
          "invited_on": "2016-05-14T11:57:25+0000",
          "invite_valid_from": "2025-02-10T23:31:55+0000",
          "invite_valid_to": "2025-02-11T23:31:55+0000",
          "invite_link": "hackerrank.com/test/sample/auth_string",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "subject": null,
          "message": null,
          "template": null,
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "send_email": true,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "force": null,
          "force_reattempt": null,
          "accommodations": null,
          "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
          "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
          "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
          "scores_tags_split": {
            "Java": 20,
            "Hard": 2,
            "Senior": 10
          },
          "scores_skills_split": {
            "Problem Solving (Basic)": 100,
            ".NET (Intermediate)": 0
          },
          "added_time": 0,
          "unclaimed_added_time": 0,
          "comments": null,
          "plagiarism": null,
          "plagiarism_status": null,
          "max_code_similarity": null,
          "feedback": "Nice experience",
          "percentage_score": 50,
          "candidate_details": [
            {
              "field_name": "year_of_graduation",
              "title": "Year of graduation",
              "value": "2015"
            }
          ],
          "out_of_window_events": 0,
          "out_of_window_duration": 0,
          "editor_paste_count": 0,
          "proctor_images": []
        }
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        attempt_starttimedatetimeTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimeTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanWhether this invite is still valid or not.
        invited_ondatetimeTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        subjectstringSubject of the candidate invite mail.
        messagestringCustom message that will be prepended to the candidate invite mail body.
        templatestringID of the template to be used for inviting candidate.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        send_emailbooleanFlag to send the invite email to the candidate. By default this flag is "false" and email would not be sent. In order to send invite emails please pass this parameter with value "true"
        tagsarray[string]List of tags associated with this candidate.
        forcebooleanFlag which forces sending an email even when the candidate has already been invited.
        force_reattemptbooleanForce re-invite even when the candidate has already attempted the test.
        accommodationsobjectObject containing candidate accommodations.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field
      • Show samples

        Parameters

        test_id

        ID of the test

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "98Sjnbj12",
              "full_name": "Alice Wonders",
              "email": "alice.wonders@email.com",
              "score": 32.5,
              "test": "p132983al",
              "user": "1ok2njXJi",
              "attempt_starttime": "2016-05-24T06:27:25+0000",
              "attempt_endtime": "2016-05-24T11:57:25+0000",
              "status": -1,
              "ats_state": 0,
              "invite_email_done": true,
              "invite_valid": true,
              "invited_on": "2016-05-14T11:57:25+0000",
              "invite_valid_from": "2025-02-10T23:31:55+0000",
              "invite_valid_to": "2025-02-11T23:31:55+0000",
              "invite_link": "hackerrank.com/test/sample/auth_string",
              "invite_metadata": {
                "ats_candidate_id": 1
              },
              "evaluator_email": null,
              "test_finish_url": null,
              "test_result_url": null,
              "accept_result_updates": false,
              "tags": [
                "Java",
                "Hard",
                "Senior"
              ],
              "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
              "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
              "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
              "scores_tags_split": {
                "Java": 20,
                "Hard": 2,
                "Senior": 10
              },
              "scores_skills_split": {
                "Problem Solving (Basic)": 100,
                ".NET (Intermediate)": 0
              },
              "added_time": 0,
              "unclaimed_added_time": 0,
              "comments": null,
              "questions": {
                "score": 5,
                "answered": true,
                "answer": "",
                "name": "",
                "preview": ""
              },
              "plagiarism": null,
              "plagiarism_status": null,
              "max_code_similarity": null,
              "feedback": "Nice experience",
              "percentage_score": 50,
              "candidate_details": [
                {
                  "field_name": "year_of_graduation",
                  "title": "Year of graduation",
                  "value": "2015"
                }
              ],
              "out_of_window_events": 0,
              "out_of_window_duration": 0,
              "editor_paste_count": 0,
              "proctor_images": []
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=12",
          "total": 13
        }
        dataarray[TestCandidate]List of requested candidates
        page_totalintegerCount of total candidates in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringfilterableEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringfilterableexpandableUser who invited this candidate.
        attempt_starttimedatetimefilterableTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimefilterableTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerfilterableThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerfilterableThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanfilterableWhether this invite is still valid or not.
        invited_ondatetimefilterableTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimefilterableTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimefilterableTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]filterableList of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field

        Response Sample

        {
          "data": [
            {
              "id": "98Sjnbj12",
              "full_name": "Alice Wonders",
              "email": "alice.wonders@email.com",
              "score": 32.5,
              "test": "p132983al",
              "user": "1ok2njXJi",
              "attempt_starttime": "2016-05-24T06:27:25+0000",
              "attempt_endtime": "2016-05-24T11:57:25+0000",
              "status": -1,
              "ats_state": 0,
              "invite_email_done": true,
              "invite_valid": true,
              "invited_on": "2016-05-14T11:57:25+0000",
              "invite_valid_from": "2025-02-10T23:31:55+0000",
              "invite_valid_to": "2025-02-11T23:31:55+0000",
              "invite_link": "hackerrank.com/test/sample/auth_string",
              "invite_metadata": {
                "ats_candidate_id": 1
              },
              "evaluator_email": null,
              "test_finish_url": null,
              "test_result_url": null,
              "accept_result_updates": false,
              "tags": [
                "Java",
                "Hard",
                "Senior"
              ],
              "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
              "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
              "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
              "scores_tags_split": {
                "Java": 20,
                "Hard": 2,
                "Senior": 10
              },
              "scores_skills_split": {
                "Problem Solving (Basic)": 100,
                ".NET (Intermediate)": 0
              },
              "added_time": 0,
              "unclaimed_added_time": 0,
              "comments": null,
              "questions": {
                "score": 5,
                "answered": true,
                "answer": "",
                "name": "",
                "preview": ""
              },
              "plagiarism": null,
              "plagiarism_status": null,
              "max_code_similarity": null,
              "feedback": "Nice experience",
              "percentage_score": 50,
              "candidate_details": [
                {
                  "field_name": "year_of_graduation",
                  "title": "Year of graduation",
                  "value": "2015"
                }
              ],
              "out_of_window_events": 0,
              "out_of_window_duration": 0,
              "editor_paste_count": 0,
              "proctor_images": []
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=12",
          "total": 13
        }
        dataarray[TestCandidate]List of requested candidates
        page_totalintegerCount of total candidates in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringfilterableEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringfilterableexpandableUser who invited this candidate.
        attempt_starttimedatetimefilterableTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimefilterableTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerfilterableThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerfilterableThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanfilterableWhether this invite is still valid or not.
        invited_ondatetimefilterableTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimefilterableTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimefilterableTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]filterableList of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field
      • Show samples

        Invites a single candidate to the test. Note: Multiple invitations are not supported through this endpoint.

        Parameters

        test_id

        ID of the test

        body

        TestCandidate
        Response Type

        Request Body Sample

        {
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "ats_state": 0,
          "invite_valid_from": "2025-02-10T23:31:55+00:00",
          "invite_valid_to": "2025-02-11T23:31:55+00:00",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "subject": null,
          "message": null,
          "template": null,
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "send_email": true,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "force": null,
          "force_reattempt": null,
          "accommodations": {
            "additional_time_percent": 25
          }
        }
        {} TestCandidate
        full_namestring(optional)Full name of the candidate.
        emailstringEmail address of the candidate.
        ats_stateinteger(optional)This indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_valid_fromdatetime(optional)Time from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetime(optional)Time till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_metadataobject(optional)Customizable metadata that can be set for a candidate. This must be a valid JSON object.
        subjectstring(optional)Subject of the candidate invite mail.
        messagestring(optional)Custom message that will be prepended to the candidate invite mail body.
        templatestring(optional)ID of the template to be used for inviting candidate.
        evaluator_emailstring(optional)Email address of the evaluator, if different from the test admins and owner.
        test_finish_urlstring(optional)Candidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstring(optional)Webhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesboolean(optional)Flag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        send_emailboolean(optional)Flag to send the invite email to the candidate. By default this flag is "false" and email would not be sent. In order to send invite emails please pass this parameter with value "true"
        tagsarray[string](optional)List of tags associated with this candidate.
        forceboolean(optional)Flag which forces sending an email even when the candidate has already been invited.
        force_reattemptboolean(optional)Force re-invite even when the candidate has already attempted the test.
        accommodationsCandidateAccommodations(optional)Object containing candidate accommodations.
        {} CandidateAccommodations
        additional_time_percentinteger(optional)A percentage of the test duration to be added as additional time. Value must be greater than 0.

        Response Sample

        {
          "test_link": "https://www.hackerrank.com/tests/bdsiod7sd22/login?b=efJ1c2VybmFtZSI6ImRhbm55LnBldGVyc29uQGhff2tlcnJhbmsuY19tIiwidGFzc3dvcmQiOiI0ZTQ4OWJjNSIsImhpZGUiOnRydWV9",
          "email": "alice.wonders@email.com",
          "id": "10000"
        }
        test_linkstringA link sent to the candidate where they can attempt the test.
        emailstringEmail address of the candidate.
        idintegerID of the test candidate.

        Request Body Sample

        {
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "ats_state": 0,
          "invite_valid_from": "2025-02-10T23:31:55+00:00",
          "invite_valid_to": "2025-02-11T23:31:55+00:00",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "subject": null,
          "message": null,
          "template": null,
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "send_email": true,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "force": null,
          "force_reattempt": null,
          "accommodations": {
            "additional_time_percent": 25
          }
        }
        {} TestCandidate
        full_namestring(optional)Full name of the candidate.
        emailstringEmail address of the candidate.
        ats_stateinteger(optional)This indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_valid_fromdatetime(optional)Time from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetime(optional)Time till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_metadataobject(optional)Customizable metadata that can be set for a candidate. This must be a valid JSON object.
        subjectstring(optional)Subject of the candidate invite mail.
        messagestring(optional)Custom message that will be prepended to the candidate invite mail body.
        templatestring(optional)ID of the template to be used for inviting candidate.
        evaluator_emailstring(optional)Email address of the evaluator, if different from the test admins and owner.
        test_finish_urlstring(optional)Candidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstring(optional)Webhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesboolean(optional)Flag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        send_emailboolean(optional)Flag to send the invite email to the candidate. By default this flag is "false" and email would not be sent. In order to send invite emails please pass this parameter with value "true"
        tagsarray[string](optional)List of tags associated with this candidate.
        forceboolean(optional)Flag which forces sending an email even when the candidate has already been invited.
        force_reattemptboolean(optional)Force re-invite even when the candidate has already attempted the test.
        accommodationsCandidateAccommodations(optional)Object containing candidate accommodations.
        {} CandidateAccommodations
        additional_time_percentinteger(optional)A percentage of the test duration to be added as additional time. Value must be greater than 0.

        Response Sample

        {
          "test_link": "https://www.hackerrank.com/tests/bdsiod7sd22/login?b=efJ1c2VybmFtZSI6ImRhbm55LnBldGVyc29uQGhff2tlcnJhbmsuY19tIiwidGFzc3dvcmQiOiI0ZTQ4OWJjNSIsImhpZGUiOnRydWV9",
          "email": "alice.wonders@email.com",
          "id": "10000"
        }
        test_linkstringA link sent to the candidate where they can attempt the test.
        emailstringEmail address of the candidate.
        idintegerID of the test candidate.
      • Show samples

        Parameters

        test_id

        ID of the test

        candidate_id

        ID of the candidate

        additional_fields

        Supported test candidate fields to get detailed info on those fields (Comma separated field names). For eg: 'questions,scores_sections_split'. This is used to get detailed information on the supported test candidate fields. Some supported fields are : 'questions' to get score details on each question, 'scores_sections_split' to get info on each test section, 'user' to get user details, 'test' to get test details, etc

        Response Type

        Response Sample

        {
          "id": "98Sjnbj12",
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "score": 32.5,
          "test": "p132983al",
          "user": "1ok2njXJi",
          "attempt_starttime": "2016-05-24T06:27:25+0000",
          "attempt_endtime": "2016-05-24T11:57:25+0000",
          "status": -1,
          "ats_state": 0,
          "invite_email_done": true,
          "invite_valid": true,
          "invited_on": "2016-05-14T11:57:25+0000",
          "invite_valid_from": "2025-02-10T23:31:55+0000",
          "invite_valid_to": "2025-02-11T23:31:55+0000",
          "invite_link": "hackerrank.com/test/sample/auth_string",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
          "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
          "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
          "scores_tags_split": {
            "Java": 20,
            "Hard": 2,
            "Senior": 10
          },
          "scores_skills_split": {
            "Problem Solving (Basic)": 100,
            ".NET (Intermediate)": 0
          },
          "added_time": 0,
          "unclaimed_added_time": 0,
          "comments": null,
          "questions": {
            "score": 5,
            "answered": true,
            "answer": "",
            "name": "",
            "preview": ""
          },
          "plagiarism": null,
          "plagiarism_status": null,
          "max_code_similarity": null,
          "feedback": "Nice experience",
          "percentage_score": 50,
          "candidate_details": [
            {
              "field_name": "year_of_graduation",
              "title": "Year of graduation",
              "value": "2015"
            }
          ],
          "out_of_window_events": 0,
          "out_of_window_duration": 0,
          "editor_paste_count": 0,
          "proctor_images": []
        }
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringexpandableUser who invited this candidate.
        attempt_starttimedatetimeTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimeTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanWhether this invite is still valid or not.
        invited_ondatetimeTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]List of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field

        Response Sample

        {
          "id": "98Sjnbj12",
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "score": 32.5,
          "test": "p132983al",
          "user": "1ok2njXJi",
          "attempt_starttime": "2016-05-24T06:27:25+0000",
          "attempt_endtime": "2016-05-24T11:57:25+0000",
          "status": -1,
          "ats_state": 0,
          "invite_email_done": true,
          "invite_valid": true,
          "invited_on": "2016-05-14T11:57:25+0000",
          "invite_valid_from": "2025-02-10T23:31:55+0000",
          "invite_valid_to": "2025-02-11T23:31:55+0000",
          "invite_link": "hackerrank.com/test/sample/auth_string",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
          "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
          "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
          "scores_tags_split": {
            "Java": 20,
            "Hard": 2,
            "Senior": 10
          },
          "scores_skills_split": {
            "Problem Solving (Basic)": 100,
            ".NET (Intermediate)": 0
          },
          "added_time": 0,
          "unclaimed_added_time": 0,
          "comments": null,
          "questions": {
            "score": 5,
            "answered": true,
            "answer": "",
            "name": "",
            "preview": ""
          },
          "plagiarism": null,
          "plagiarism_status": null,
          "max_code_similarity": null,
          "feedback": "Nice experience",
          "percentage_score": 50,
          "candidate_details": [
            {
              "field_name": "year_of_graduation",
              "title": "Year of graduation",
              "value": "2015"
            }
          ],
          "out_of_window_events": 0,
          "out_of_window_duration": 0,
          "editor_paste_count": 0,
          "proctor_images": []
        }
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringexpandableUser who invited this candidate.
        attempt_starttimedatetimeTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimeTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanWhether this invite is still valid or not.
        invited_ondatetimeTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]List of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field
      • Show samples

        Parameters

        test_id

        ID of the test

        candidate_id

        ID of the candidate

        body

        TestCandidate
        Response Type

        Request Body Sample

        {
          "full_name": "Alice Wonders",
          "ats_state": 0,
          "invite_valid_from": "2025-02-10T23:31:55+00:00",
          "invite_valid_to": "2025-02-11T23:31:55+00:00",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "accommodations": null
        }
        {} TestCandidate
        full_namestringFull name of the candidate.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]List of tags associated with this candidate.
        accommodationsobjectObject containing candidate accommodations.

        Response Sample

        {
          "id": "98Sjnbj12",
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "score": 32.5,
          "test": "p132983al",
          "user": "1ok2njXJi",
          "attempt_starttime": "2016-05-24T06:27:25+0000",
          "attempt_endtime": "2016-05-24T11:57:25+0000",
          "status": -1,
          "ats_state": 0,
          "invite_email_done": true,
          "invite_valid": true,
          "invited_on": "2016-05-14T11:57:25+0000",
          "invite_valid_from": "2025-02-10T23:31:55+0000",
          "invite_valid_to": "2025-02-11T23:31:55+0000",
          "invite_link": "hackerrank.com/test/sample/auth_string",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
          "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
          "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
          "scores_tags_split": {
            "Java": 20,
            "Hard": 2,
            "Senior": 10
          },
          "scores_skills_split": {
            "Problem Solving (Basic)": 100,
            ".NET (Intermediate)": 0
          },
          "added_time": 0,
          "unclaimed_added_time": 0,
          "comments": null,
          "questions": {
            "score": 5,
            "answered": true,
            "answer": "",
            "name": "",
            "preview": ""
          },
          "plagiarism": null,
          "plagiarism_status": null,
          "max_code_similarity": null,
          "feedback": "Nice experience",
          "percentage_score": 50,
          "candidate_details": [
            {
              "field_name": "year_of_graduation",
              "title": "Year of graduation",
              "value": "2015"
            }
          ],
          "out_of_window_events": 0,
          "out_of_window_duration": 0,
          "editor_paste_count": 0,
          "proctor_images": []
        }
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringexpandableUser who invited this candidate.
        attempt_starttimedatetimeTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimeTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanWhether this invite is still valid or not.
        invited_ondatetimeTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]List of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field

        Request Body Sample

        {
          "full_name": "Alice Wonders",
          "ats_state": 0,
          "invite_valid_from": "2025-02-10T23:31:55+00:00",
          "invite_valid_to": "2025-02-11T23:31:55+00:00",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "accommodations": null
        }
        {} TestCandidate
        full_namestringFull name of the candidate.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]List of tags associated with this candidate.
        accommodationsobjectObject containing candidate accommodations.

        Response Sample

        {
          "id": "98Sjnbj12",
          "full_name": "Alice Wonders",
          "email": "alice.wonders@email.com",
          "score": 32.5,
          "test": "p132983al",
          "user": "1ok2njXJi",
          "attempt_starttime": "2016-05-24T06:27:25+0000",
          "attempt_endtime": "2016-05-24T11:57:25+0000",
          "status": -1,
          "ats_state": 0,
          "invite_email_done": true,
          "invite_valid": true,
          "invited_on": "2016-05-14T11:57:25+0000",
          "invite_valid_from": "2025-02-10T23:31:55+0000",
          "invite_valid_to": "2025-02-11T23:31:55+0000",
          "invite_link": "hackerrank.com/test/sample/auth_string",
          "invite_metadata": {
            "ats_candidate_id": 1
          },
          "evaluator_email": null,
          "test_finish_url": null,
          "test_result_url": null,
          "accept_result_updates": false,
          "tags": [
            "Java",
            "Hard",
            "Senior"
          ],
          "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
          "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
          "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
          "scores_tags_split": {
            "Java": 20,
            "Hard": 2,
            "Senior": 10
          },
          "scores_skills_split": {
            "Problem Solving (Basic)": 100,
            ".NET (Intermediate)": 0
          },
          "added_time": 0,
          "unclaimed_added_time": 0,
          "comments": null,
          "questions": {
            "score": 5,
            "answered": true,
            "answer": "",
            "name": "",
            "preview": ""
          },
          "plagiarism": null,
          "plagiarism_status": null,
          "max_code_similarity": null,
          "feedback": "Nice experience",
          "percentage_score": 50,
          "candidate_details": [
            {
              "field_name": "year_of_graduation",
              "title": "Year of graduation",
              "value": "2015"
            }
          ],
          "out_of_window_events": 0,
          "out_of_window_duration": 0,
          "editor_paste_count": 0,
          "proctor_images": []
        }
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringexpandableUser who invited this candidate.
        attempt_starttimedatetimeTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimeTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanWhether this invite is still valid or not.
        invited_ondatetimeTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimeTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimeTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]List of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field
      • Show samples

        Parameters

        test_id

        ID of the test

        search

        Name or email

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "98Sjnbj12",
              "full_name": "Alice Wonders",
              "email": "alice.wonders@email.com",
              "score": 32.5,
              "test": "p132983al",
              "user": "1ok2njXJi",
              "attempt_starttime": "2016-05-24T06:27:25+0000",
              "attempt_endtime": "2016-05-24T11:57:25+0000",
              "status": -1,
              "ats_state": 0,
              "invite_email_done": true,
              "invite_valid": true,
              "invited_on": "2016-05-14T11:57:25+0000",
              "invite_valid_from": "2025-02-10T23:31:55+0000",
              "invite_valid_to": "2025-02-11T23:31:55+0000",
              "invite_link": "hackerrank.com/test/sample/auth_string",
              "invite_metadata": {
                "ats_candidate_id": 1
              },
              "evaluator_email": null,
              "test_finish_url": null,
              "test_result_url": null,
              "accept_result_updates": false,
              "tags": [
                "Java",
                "Hard",
                "Senior"
              ],
              "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
              "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
              "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
              "scores_tags_split": {
                "Java": 20,
                "Hard": 2,
                "Senior": 10
              },
              "scores_skills_split": {
                "Problem Solving (Basic)": 100,
                ".NET (Intermediate)": 0
              },
              "added_time": 0,
              "unclaimed_added_time": 0,
              "comments": null,
              "questions": {
                "score": 5,
                "answered": true,
                "answer": "",
                "name": "",
                "preview": ""
              },
              "plagiarism": null,
              "plagiarism_status": null,
              "max_code_similarity": null,
              "feedback": "Nice experience",
              "percentage_score": 50,
              "candidate_details": [
                {
                  "field_name": "year_of_graduation",
                  "title": "Year of graduation",
                  "value": "2015"
                }
              ],
              "out_of_window_events": 0,
              "out_of_window_duration": 0,
              "editor_paste_count": 0,
              "proctor_images": []
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=12",
          "total": 13
        }
        dataarray[TestCandidate]List of requested candidates
        page_totalintegerCount of total candidates in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringfilterableEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringfilterableexpandableUser who invited this candidate.
        attempt_starttimedatetimefilterableTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimefilterableTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerfilterableThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerfilterableThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanfilterableWhether this invite is still valid or not.
        invited_ondatetimefilterableTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimefilterableTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimefilterableTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]filterableList of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field

        Response Sample

        {
          "data": [
            {
              "id": "98Sjnbj12",
              "full_name": "Alice Wonders",
              "email": "alice.wonders@email.com",
              "score": 32.5,
              "test": "p132983al",
              "user": "1ok2njXJi",
              "attempt_starttime": "2016-05-24T06:27:25+0000",
              "attempt_endtime": "2016-05-24T11:57:25+0000",
              "status": -1,
              "ats_state": 0,
              "invite_email_done": true,
              "invite_valid": true,
              "invited_on": "2016-05-14T11:57:25+0000",
              "invite_valid_from": "2025-02-10T23:31:55+0000",
              "invite_valid_to": "2025-02-11T23:31:55+0000",
              "invite_link": "hackerrank.com/test/sample/auth_string",
              "invite_metadata": {
                "ats_candidate_id": 1
              },
              "evaluator_email": null,
              "test_finish_url": null,
              "test_result_url": null,
              "accept_result_updates": false,
              "tags": [
                "Java",
                "Hard",
                "Senior"
              ],
              "report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report",
              "authenticated_report_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/report?authkey=123abc",
              "pdf_url": "https://www.hackerrank.com/x/tests/p132983al/candidates/8Sjnbj12/pdf",
              "scores_tags_split": {
                "Java": 20,
                "Hard": 2,
                "Senior": 10
              },
              "scores_skills_split": {
                "Problem Solving (Basic)": 100,
                ".NET (Intermediate)": 0
              },
              "added_time": 0,
              "unclaimed_added_time": 0,
              "comments": null,
              "questions": {
                "score": 5,
                "answered": true,
                "answer": "",
                "name": "",
                "preview": ""
              },
              "plagiarism": null,
              "plagiarism_status": null,
              "max_code_similarity": null,
              "feedback": "Nice experience",
              "percentage_score": 50,
              "candidate_details": [
                {
                  "field_name": "year_of_graduation",
                  "title": "Year of graduation",
                  "value": "2015"
                }
              ],
              "out_of_window_events": 0,
              "out_of_window_duration": 0,
              "editor_paste_count": 0,
              "proctor_images": []
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/tests/1/candidates?limit=1&offset=12",
          "total": 13
        }
        dataarray[TestCandidate]List of requested candidates
        page_totalintegerCount of total candidates in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} TestCandidate
        idstringID of the test candidate.
        full_namestringFull name of the candidate.
        emailstringfilterableEmail address of the candidate.
        scorefloatScore of the candidate if they have attempted the test.
        teststringexpandableTest for the candidate.
        userstringfilterableexpandableUser who invited this candidate.
        attempt_starttimedatetimefilterableTime at which candidate started the test. This will be null if candidate has not attempted the test yet.
        attempt_endtimedatetimefilterableTime at which candidate ended the test. This will be null if candidate has not attempted the test yet.
        statusintegerfilterableThis indicates the current status of the candidate. Can be between -1 to 7. -1 indicates that candidate is currently invited, while 7 indicates that candidates has completed the test and a report has been generated for the candidate. All other intermediate states are internal and should not be used.
        ats_stateintegerfilterableThis indicates the current state of the candidate application. Value can be from 0 to 22.
        invite_email_donebooleanWhether an invite email has been sent to candidate or not.
        invite_validbooleanfilterableWhether this invite is still valid or not.
        invited_ondatetimefilterableTimestamp of when candidate was invited for the test.
        invite_valid_fromdatetimefilterableTime from when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_valid_todatetimefilterableTime till when invite for this test candidate is valid. Null value in this field indicates that invite is permanently valid.
        invite_linkstringInvite test link for the candidate.
        invite_metadataobjectCustomizable metadata that can be set for a candidate. This must be a valid JSON object.
        evaluator_emailstringEmail address of the evaluator, if different from the test admins and owner.
        test_finish_urlstringCandidate will be redirected to this URL when the test gets over. By default, they are sent to the feedback page.
        test_result_urlstringWebhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook. By default, the inviter will get the report by email.
        accept_result_updatesbooleanFlag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        tagsarray[string]filterableList of tags associated with this candidate.
        report_urlstringURL for candidate report that is accessible only to HackerRank users with access to the specific test.
        authenticated_report_urlstringURL for candidate report that is accessible to all users in your HackerRank account.
        pdf_urlstringURL for a PDF version of the candidate report.
        scores_tags_splitobjectScore of candidate split per tag.
        scores_skills_splitobjectScore of candidate split per skill.
        added_timeintegerAdded time for this candidate.
        unclaimed_added_timeintegerUnclaimed added time for this candidate.
        commentsobjectadditionalAll the comments left on the summary tab of the report.
        For comments left on individual questions, expand questions field too.
        questionsQuestionadditionalexpandableQuestion wise score split for this candidate in this attempt.
        List of fields when questions is expanded:[answered, answers, score, plagiarism, name, preview, type, max_score, comments]

        plagiarism is an object and has the fields [solve_id, test_candidate_id, email, similarity]

        comments gives the comments left on the report for the given question (you need to also pass comments in additional fields for this)

        Additional fields
        Additional fields can be passed as csv for query parameter additional_fields
        ex: additional_fields=questions.time_taken

        Additional fields supported in response:
        [time_taken, submissions, submission_result]

        time_taken gives the time taken per question by the candidate. Accessed by questions.time_taken

        submissions gives the list of all submissions done by the candidate for the given question. Accessed by questions.solves

        submission_result gives the detailed submission information for each testcase. Accessed by questions.submission_result
        plagiarismobjectQuestion wise details of plagiarism.
        plagiarism_statusbooleanWhether this candidate has been flagged as plagiarized or not.
        max_code_similarityobjectThis gives the question level measure of candidate's code similarity. Candidate's code is compared with that of other candidates for the specific question. Maximum similarity percentage at the time of test submission is returned.
        feedbackstringFeedback given by the candidate at the end of the test.
        percentage_scorefloatPercentage score of the candidate for the test.
        candidate_detailsarray[CandidateDetail]Details of candidate.
        out_of_window_eventsintegerWhen candidate_tab_switch is enabled for the test, this field returns the number of times this candidate went out of window.
        out_of_window_durationfloatWhen candidate_tab_switch is enabled for the test, this field returns the number of seconds this candidate went out of window.
        editor_paste_countintegerwhen track_editor_paste is enabled for the test, this field returns the number of times this candidate pasted a piece of code.
        proctor_imagesarray[string]When enable_proctoring is enabled for the test, this field returns a list of urls that contains the images of this candidate taken during the test.
        {} Question
        scoreintegerScore of candidate in this question
        answeredbooleanWhether the candidate has answered this question or not
        answerstringAnswer of the candidate for this question
        namestring(optional)Name of the question
        previewstring(optional)Preview of the question
        {} CandidateDetail
        field_namestringName of candidate detail field
        titlestringTitle of candidate detail field
        valuestringValue of candidate detail field
      • List all interviews

        get /x/api/v3/interviews

        Show samples

        Returns the list of your interviews

        Parameters

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        created_at

        It is the datetime when the interview was created. It needs to be passed in the form of "from..to". For example: 2024-01-21T13:36:21+0000..2024-01-22T00:00:00+0000. Both "from" and "to" are in form of YYYY-MM-DDThh:mm:ss±zzz where zzz is offset form UTC timezone in form of hh:mm including a leading zero for single digit hour value. All time values are 24 hour format

        updated_at

        It is the datetime when the interview was updated. It needs to be passed in the form of "from..to". For example: 2024-01-21T13:36:21+0000..2024-01-22T00:00:00+0000. Both "from" and "to" are in form of YYYY-MM-DDThh:mm:ss±zzz where zzz is offset form UTC timezone in form of hh:mm including a leading zero for single digit hour value. All time values are 24 hour format

        ended_at

        It is the datetime when the interview ended. It needs to be passed in the form of "from..to". For example: 2024-01-21T13:36:21+0000..2024-01-22T00:00:00+0000. Both "from" and "to" are in form of YYYY-MM-DDThh:mm:ss±zzz where zzz is offset form UTC timezone in form of hh:mm including a leading zero for single digit hour value. All time values are 24 hour format

        user

        Filter by ID of the user who created the interview

        interviewers

        Filter by ID of any one interviewer

        access

        Filter interviews based on access rights. It can have the following values:

            - owned
            - shared
        
        current_status

        Filters all interviews based on the current status of the interview.

            0: New
            1: Active
            2: Ended
            3: Paused
        
        order_by

        Sort the interviews in a specific order. It can have the following values:

            - title
            - id (ID of the interview)
            - created_at
            - ended_at
            - current_status
            - user
        
        order_dir

        Defines the direction of sorting. This parameter is required to be passed if you are using "order_by". It can have the following values:

            - asc: Ascending order
            - desc: Descending order
        
        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "289187",
              "from": "2025-02-11T23:31:55+0000",
              "to": "2025-02-12T00:31:55+0000",
              "status": "new",
              "url": "www.hackerrank.com/paper/demo",
              "user": 13245,
              "created_at": "2025-02-10T23:31:55+0000",
              "updated_at": "2025-02-10T23:31:55+0000",
              "title": "Interview with Mark",
              "feedback": "Candidate is good in system design",
              "thumbs_up": 1,
              "notes": "Assess the candidate for system design concepts",
              "resume_url": "https://www.example.com/resumes/71884928",
              "interviewers": [
                {
                  "email": "hina@techcorp.com",
                  "name": "Hina"
                }
              ],
              "result_url": "https://www.techcorp.org/interview_ended",
              "candidate": {
                "name": "Mark Ramone",
                "email": "me@markramone.com"
              },
              "metadata": {},
              "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
              "ended_at": "2025-02-10T23:31:55+0000",
              "interview_template_id": 1234
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/interviews?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/interviews?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/interviews?limit=1&offset=12",
          "total": 13
        }
        dataarray[Interview]List of requested interviews
        page_totalintegerCount of total interviews in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerfilterableexpandableUser who created this interview
        created_atdatetimefilterableTime stamp at which interview was created
        updated_atdatetimefilterableTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template

        Response Sample

        {
          "data": [
            {
              "id": "289187",
              "from": "2025-02-11T23:31:55+0000",
              "to": "2025-02-12T00:31:55+0000",
              "status": "new",
              "url": "www.hackerrank.com/paper/demo",
              "user": 13245,
              "created_at": "2025-02-10T23:31:55+0000",
              "updated_at": "2025-02-10T23:31:55+0000",
              "title": "Interview with Mark",
              "feedback": "Candidate is good in system design",
              "thumbs_up": 1,
              "notes": "Assess the candidate for system design concepts",
              "resume_url": "https://www.example.com/resumes/71884928",
              "interviewers": [
                {
                  "email": "hina@techcorp.com",
                  "name": "Hina"
                }
              ],
              "result_url": "https://www.techcorp.org/interview_ended",
              "candidate": {
                "name": "Mark Ramone",
                "email": "me@markramone.com"
              },
              "metadata": {},
              "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
              "ended_at": "2025-02-10T23:31:55+0000",
              "interview_template_id": 1234
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/interviews?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/interviews?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/interviews?limit=1&offset=12",
          "total": 13
        }
        dataarray[Interview]List of requested interviews
        page_totalintegerCount of total interviews in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerfilterableexpandableUser who created this interview
        created_atdatetimefilterableTime stamp at which interview was created
        updated_atdatetimefilterableTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template
      • Create interview

        post /x/api/v3/interviews

        Show samples

        Parameters

        body

        Interview
        Response Type

        Request Body Sample

        {
          "from": "2025-02-11T23:31:55+00:00",
          "to": "2025-02-12T00:31:55+00:00",
          "title": "Interview with Mark",
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Bruce Wayne",
            "email": "bw@batmaninc.com"
          },
          "send_email": false,
          "metadata": {},
          "interview_template_id": 1234
        }
        {} Interview
        fromdatetime(optional)Scheduled start time
        todatetime(optional)Scheduled end time
        titlestringTitle of interview
        notesstring(optional)Notes for interviewer
        resume_urlstring(optional)Candidate's resume link
        interviewersarray[string](optional)List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstring(optional)Webhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateCandidateInformation(optional)Candidate to invite for the interview.
        send_emailboolean(optional)Send/Resend invitation email to Interview Attendants.
        metadataobject(optional)Any additional information related to the interview.
        interview_template_idinteger(optional)ID of the interview template
        {} CandidateInformation
        namestring(optional)Full name of the candidate.
        emailstringEmail address of the candidate.

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template

        Request Body Sample

        {
          "from": "2025-02-11T23:31:55+00:00",
          "to": "2025-02-12T00:31:55+00:00",
          "title": "Interview with Mark",
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Bruce Wayne",
            "email": "bw@batmaninc.com"
          },
          "send_email": false,
          "metadata": {},
          "interview_template_id": 1234
        }
        {} Interview
        fromdatetime(optional)Scheduled start time
        todatetime(optional)Scheduled end time
        titlestringTitle of interview
        notesstring(optional)Notes for interviewer
        resume_urlstring(optional)Candidate's resume link
        interviewersarray[string](optional)List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstring(optional)Webhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateCandidateInformation(optional)Candidate to invite for the interview.
        send_emailboolean(optional)Send/Resend invitation email to Interview Attendants.
        metadataobject(optional)Any additional information related to the interview.
        interview_template_idinteger(optional)ID of the interview template
        {} CandidateInformation
        namestring(optional)Full name of the candidate.
        emailstringEmail address of the candidate.

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template
      • Show samples

        Parameters

        interview_id

        ID of interview

        Response Type

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template
      • Show samples

        Parameters

        interview_id

        ID of interview

        body

        Interview
        Response Type

        Request Body Sample

        {
          "from": "2025-02-11T23:31:55+00:00",
          "to": "2025-02-12T00:31:55+00:00",
          "title": "Interview with Mark",
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "send_email": false,
          "metadata": {},
          "interview_template_id": 1234
        }
        {} Interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        titlestringTitle of interview
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        send_emailbooleanSend/Resend invitation email to Interview Attendants.
        metadataobjectAny additional information related to the interview.
        interview_template_idintegerID of the interview template

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template

        Request Body Sample

        {
          "from": "2025-02-11T23:31:55+00:00",
          "to": "2025-02-12T00:31:55+00:00",
          "title": "Interview with Mark",
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "send_email": false,
          "metadata": {},
          "interview_template_id": 1234
        }
        {} Interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        titlestringTitle of interview
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        send_emailbooleanSend/Resend invitation email to Interview Attendants.
        metadataobjectAny additional information related to the interview.
        interview_template_idintegerID of the interview template

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template
      • Questions object

        options /questions

        Show samples

        This object represents questions available in this account.

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array
      • List all questions

        get /x/api/v3/questions

        Show samples

        Parameters

        status

        Question status (active/archived)

        access

        Access type (library, owned, shared) (comma separated values)

        difficulty

        Difficulty of questions (comma separated values)

        type

        Type of questions (comma separated values)

        owner

        User ids (comma separated values)

        tags

        Tags (comma separated values)

        skills

        Skills (comma separated values)

        languages

        Languages allowed for the question (comma separated values)

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "2psql21H",
              "unique_id": "f9pr5p1q9rh",
              "type": "code",
              "owner": "bn109na",
              "created_at": "2025-02-10T23:31:55+0000",
              "status": "archived",
              "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
              "name": "New question",
              "languages": [
                "c",
                "clojure",
                "cobol",
                "cpp",
                "csharp",
                "d",
                "erlang",
                "fortran",
                "fsharp",
                "go",
                "groovy",
                "haskell",
                "java",
                "java15",
                "java17",
                "java21",
                "java8",
                "javascript",
                "lua",
                "objectivec",
                "ocaml",
                "pascal",
                "perl",
                "php",
                "python",
                "python3",
                "racket",
                "ruby",
                "rust",
                "sbcl",
                "scala",
                "smalltalk",
                "swift",
                "visualbasic"
              ],
              "problem_statement": "<p>Problem statement </p>",
              "recommended_duration": 1,
              "tags": [
                "tag1",
                "tag2",
                "tag3"
              ],
              "max_score": 100,
              "options": null,
              "answer": null
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/question?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/question?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/question?limit=1&offset=12",
          "total": 13
        }
        dataarray[Question]List of requested question
        page_totalintegerCount of total question in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Response Sample

        {
          "data": [
            {
              "id": "2psql21H",
              "unique_id": "f9pr5p1q9rh",
              "type": "code",
              "owner": "bn109na",
              "created_at": "2025-02-10T23:31:55+0000",
              "status": "archived",
              "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
              "name": "New question",
              "languages": [
                "c",
                "clojure",
                "cobol",
                "cpp",
                "csharp",
                "d",
                "erlang",
                "fortran",
                "fsharp",
                "go",
                "groovy",
                "haskell",
                "java",
                "java15",
                "java17",
                "java21",
                "java8",
                "javascript",
                "lua",
                "objectivec",
                "ocaml",
                "pascal",
                "perl",
                "php",
                "python",
                "python3",
                "racket",
                "ruby",
                "rust",
                "sbcl",
                "scala",
                "smalltalk",
                "swift",
                "visualbasic"
              ],
              "problem_statement": "<p>Problem statement </p>",
              "recommended_duration": 1,
              "tags": [
                "tag1",
                "tag2",
                "tag3"
              ],
              "max_score": 100,
              "options": null,
              "answer": null
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/question?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/question?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/question?limit=1&offset=12",
          "total": 13
        }
        dataarray[Question]List of requested question
        page_totalintegerCount of total question in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array
      • Create Question

        post /x/api/v3/questions

        Show samples

        Parameters

        body

        Question
        Response Type

        Request Body Sample

        {
          "type": "code",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "options": null,
          "answer": null
        }
        {} Question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        internal_notesstring(optional)Internal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string](optional)Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string](optional)Array of tags to associate with this question
        optionsarray[string](optional)Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,array(optional)Index (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Request Body Sample

        {
          "type": "code",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "options": null,
          "answer": null
        }
        {} Question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        internal_notesstring(optional)Internal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string](optional)Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string](optional)Array of tags to associate with this question
        optionsarray[string](optional)Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,array(optional)Index (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array
      • Show samples

        Parameters

        question_id

        ID of question

        Response Type

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array
      • Show samples

        Parameters

        question_id

        ID of question

        body

        Question
        Response Type

        Request Body Sample

        {
          "type": "code",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "options": null,
          "answer": null
        }
        {} Question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Request Body Sample

        {
          "type": "code",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "options": null,
          "answer": null
        }
        {} Question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array

        Response Sample

        {
          "id": "2psql21H",
          "unique_id": "f9pr5p1q9rh",
          "type": "code",
          "owner": "bn109na",
          "created_at": "2025-02-10T23:31:55+0000",
          "status": "archived",
          "internal_notes": "<p>This question has brute force solution of <b>O(n)</b> and optimized solution of <b>O(logn)</b></p>",
          "name": "New question",
          "languages": [
            "c",
            "clojure",
            "cobol",
            "cpp",
            "csharp",
            "d",
            "erlang",
            "fortran",
            "fsharp",
            "go",
            "groovy",
            "haskell",
            "java",
            "java15",
            "java17",
            "java21",
            "java8",
            "javascript",
            "lua",
            "objectivec",
            "ocaml",
            "pascal",
            "perl",
            "php",
            "python",
            "python3",
            "racket",
            "ruby",
            "rust",
            "sbcl",
            "scala",
            "smalltalk",
            "swift",
            "visualbasic"
          ],
          "problem_statement": "<p>Problem statement </p>",
          "recommended_duration": 1,
          "tags": [
            "tag1",
            "tag2",
            "tag3"
          ],
          "max_score": 100,
          "options": null,
          "answer": null
        }
        {} Question
        idstringID of question
        unique_idstringUnique ID of question
        typestringType of question
        Can be code, approx, mcq, multiple_mcq, whiteboard, file_upload or textAns
        ownerstringID of the user who created this question
        created_atdatetimeTime stamp at which this question was created
        statusstringCurrent status of this question
        Can be archived or active
        internal_notesstringInternal notes for the question. This will be rendered as HTML
        namestringName of the question
        languagesarray[string]Languages available for this question. This is only available for code/approx question types.
        problem_statementstringProblem statement for the question. Note: This will be rendered as HTML
        recommended_durationintegerRecommended time in minutes to solve the question
        tagsarray[string]Array of tags to associate with this question
        max_scorefloatMaximum score of the question
        optionsarray[string]Array of options available for multiple choice questions. This is only available for mcq/multiple_mcq question types.
        Example: ["option1", "option2", "option3"]
        answerinteger,arrayIndex (starting from 1) of the correct option for type mcq
        Example: 1 for the first option in the options array

        Indices (starting from 1) of the correct options for type multiple_mcq
        Example: [2, 3] for the second and third options in the options array
      • Show samples

        Parameters

        question_id

        ID of question

        body

        Response Type

        Request Body Sample

        {
          "type": "code",
          "functionName": "function_name",
          "functionParams": "INTEGER param",
          "functionReturn": "INTEGER",
          "allowedLanguages": "C, Clojure"
        }
        typestring(optional)Type of question
        Can be code or approx
        functionNamestring(optional)Name of the function
        functionParamsstring(optional)Parameters for the function. There can be more than one parameters. Example: INTEGER param1 STRING param2
        functionReturnstring(optional)Return type of the function
        allowedLanguagesstring(optional)Languages available for codestub generation. This is only available for code/approx question types.

        Response Sample

        {
          "functionName": "function_name",
          "functionParams": "INTEGER param",
          "functionReturn": "INTEGER",
          "allowedLanguages": "C, Clojure",
          "c_template_head": "#include <assert.h>\n#include <ctype.h>\n#include <limits.h>\n#include <math.h>\n#include <stdbool.h>\n#include <stddef.h>\n#include <stdint.h>\n#include <stdio.h>\n#include <stdlib.h>\n#include <string.h>\n\nchar* readline();\nchar* ltrim(char*);\nchar* rtrim(char*);\n\nint parse_int(char*);\n\n",
          "c_template_tail": "int main()\n{\n    FILE* fptr = fopen(getenv(\"OUTPUT_PATH\"), \"w\");\n\n    int param = parse_int(ltrim(rtrim(readline())));\n\n    int result = function_name(param);\n\n    fprintf(fptr, \"%d\\n\", result);\n\n    fclose(fptr);\n\n    return 0;\n}\n\nchar* readline() {\n    size_t alloc_length = 1024;\n    size_t data_length = 0;\n\n    char* data = malloc(alloc_length);\n\n    while (true) {\n        char* cursor = data + data_length;\n        char* line = fgets(cursor, alloc_length - data_length, stdin);\n\n        if (!line) {\n            break;\n        }\n\n        data_length += strlen(cursor);\n\n        if (data_length < alloc_length - 1 || data[data_length - 1] == '\\n') {\n            break;\n        }\n\n        alloc_length <<= 1;\n\n        data = realloc(data, alloc_length);\n\n        if (!data) {\n            data = '\\0';\n\n            break;\n        }\n    }\n\n    if (data[data_length - 1] == '\\n') {\n        data[data_length - 1] = '\\0';\n\n        data = realloc(data, data_length);\n\n        if (!data) {\n            data = '\\0';\n        }\n    } else {\n        data = realloc(data, data_length + 1);\n\n        if (!data) {\n            data = '\\0';\n        } else {\n            data[data_length] = '\\0';\n        }\n    }\n\n    return data;\n}\n\nchar* ltrim(char* str) {\n    if (!str) {\n        return '\\0';\n    }\n\n    if (!*str) {\n        return str;\n    }\n\n    while (*str != '\\0' && isspace(*str)) {\n        str++;\n    }\n\n    return str;\n}\n\nchar* rtrim(char* str) {\n    if (!str) {\n        return '\\0';\n    }\n\n    if (!*str) {\n        return str;\n    }\n\n    char* end = str + strlen(str) - 1;\n\n    while (end >= str && isspace(*end)) {\n        end--;\n    }\n\n    *(end + 1) = '\\0';\n\n    return str;\n}\n\nint parse_int(char* str) {\n    char* endptr;\n    int value = strtol(str, &endptr, 10);\n\n    if (endptr == str || *endptr != '\\0') {\n        exit(EXIT_FAILURE);\n    }\n\n    return value;\n}\n",
          "c_template": "/*\n * Complete the 'function_name' function below.\n *\n * The function is expected to return an INTEGER.\n * The function accepts INTEGER param as parameter.\n */\n\nint function_name(int param) {\n\n}\n\n",
          "clojure_template_head": "\n\n",
          "clojure_template_tail": "(def fptr (get (System/getenv) \"OUTPUT_PATH\"))\n\n(def param (Integer/parseInt (clojure.string/trim (read-line))))\n\n(def result (function_name param))\n\n(spit fptr (str result \"\\n\") :append true)\n",
          "clojure_template": ";\n; Complete the 'function_name' function below.\n;\n; The function is expected to return an INTEGER.\n; The function accepts INTEGER param as parameter.\n;\n\n(defn function_name [param]\n\n)\n\n",
          "template_type": "1"
        }
        functionNamestring(optional)Name of the function
        functionParamsstring(optional)Parameters for the function. There can be more than one parameters. Example: INTEGER param1 STRING param2
        functionReturnstring(optional)Return type of the function
        allowedLanguagesstring(optional)Languages available for codestub generation. This is only available for code/approx question types.
        c_template_headstring(optional)Head of the codestub generated for C
        c_template_tailstring(optional)Tail of the codestub generated for C
        c_templatestring(optional)Body of the codestub generated for C
        clojure_template_headstring(optional)Head of the codestub generated for Clojure
        clojure_template_tailstring(optional)Tail of the codestub generated for Clojure
        clojure_templatestring(optional)Body of the codestub generated for Clojure
        template_typestring(optional)Type of template

        Request Body Sample

        {
          "type": "code",
          "functionName": "function_name",
          "functionParams": "INTEGER param",
          "functionReturn": "INTEGER",
          "allowedLanguages": "C, Clojure"
        }
        typestring(optional)Type of question
        Can be code or approx
        functionNamestring(optional)Name of the function
        functionParamsstring(optional)Parameters for the function. There can be more than one parameters. Example: INTEGER param1 STRING param2
        functionReturnstring(optional)Return type of the function
        allowedLanguagesstring(optional)Languages available for codestub generation. This is only available for code/approx question types.

        Response Sample

        {
          "functionName": "function_name",
          "functionParams": "INTEGER param",
          "functionReturn": "INTEGER",
          "allowedLanguages": "C, Clojure",
          "c_template_head": "#include <assert.h>\n#include <ctype.h>\n#include <limits.h>\n#include <math.h>\n#include <stdbool.h>\n#include <stddef.h>\n#include <stdint.h>\n#include <stdio.h>\n#include <stdlib.h>\n#include <string.h>\n\nchar* readline();\nchar* ltrim(char*);\nchar* rtrim(char*);\n\nint parse_int(char*);\n\n",
          "c_template_tail": "int main()\n{\n    FILE* fptr = fopen(getenv(\"OUTPUT_PATH\"), \"w\");\n\n    int param = parse_int(ltrim(rtrim(readline())));\n\n    int result = function_name(param);\n\n    fprintf(fptr, \"%d\\n\", result);\n\n    fclose(fptr);\n\n    return 0;\n}\n\nchar* readline() {\n    size_t alloc_length = 1024;\n    size_t data_length = 0;\n\n    char* data = malloc(alloc_length);\n\n    while (true) {\n        char* cursor = data + data_length;\n        char* line = fgets(cursor, alloc_length - data_length, stdin);\n\n        if (!line) {\n            break;\n        }\n\n        data_length += strlen(cursor);\n\n        if (data_length < alloc_length - 1 || data[data_length - 1] == '\\n') {\n            break;\n        }\n\n        alloc_length <<= 1;\n\n        data = realloc(data, alloc_length);\n\n        if (!data) {\n            data = '\\0';\n\n            break;\n        }\n    }\n\n    if (data[data_length - 1] == '\\n') {\n        data[data_length - 1] = '\\0';\n\n        data = realloc(data, data_length);\n\n        if (!data) {\n            data = '\\0';\n        }\n    } else {\n        data = realloc(data, data_length + 1);\n\n        if (!data) {\n            data = '\\0';\n        } else {\n            data[data_length] = '\\0';\n        }\n    }\n\n    return data;\n}\n\nchar* ltrim(char* str) {\n    if (!str) {\n        return '\\0';\n    }\n\n    if (!*str) {\n        return str;\n    }\n\n    while (*str != '\\0' && isspace(*str)) {\n        str++;\n    }\n\n    return str;\n}\n\nchar* rtrim(char* str) {\n    if (!str) {\n        return '\\0';\n    }\n\n    if (!*str) {\n        return str;\n    }\n\n    char* end = str + strlen(str) - 1;\n\n    while (end >= str && isspace(*end)) {\n        end--;\n    }\n\n    *(end + 1) = '\\0';\n\n    return str;\n}\n\nint parse_int(char* str) {\n    char* endptr;\n    int value = strtol(str, &endptr, 10);\n\n    if (endptr == str || *endptr != '\\0') {\n        exit(EXIT_FAILURE);\n    }\n\n    return value;\n}\n",
          "c_template": "/*\n * Complete the 'function_name' function below.\n *\n * The function is expected to return an INTEGER.\n * The function accepts INTEGER param as parameter.\n */\n\nint function_name(int param) {\n\n}\n\n",
          "clojure_template_head": "\n\n",
          "clojure_template_tail": "(def fptr (get (System/getenv) \"OUTPUT_PATH\"))\n\n(def param (Integer/parseInt (clojure.string/trim (read-line))))\n\n(def result (function_name param))\n\n(spit fptr (str result \"\\n\") :append true)\n",
          "clojure_template": ";\n; Complete the 'function_name' function below.\n;\n; The function is expected to return an INTEGER.\n; The function accepts INTEGER param as parameter.\n;\n\n(defn function_name [param]\n\n)\n\n",
          "template_type": "1"
        }
        functionNamestring(optional)Name of the function
        functionParamsstring(optional)Parameters for the function. There can be more than one parameters. Example: INTEGER param1 STRING param2
        functionReturnstring(optional)Return type of the function
        allowedLanguagesstring(optional)Languages available for codestub generation. This is only available for code/approx question types.
        c_template_headstring(optional)Head of the codestub generated for C
        c_template_tailstring(optional)Tail of the codestub generated for C
        c_templatestring(optional)Body of the codestub generated for C
        clojure_template_headstring(optional)Head of the codestub generated for Clojure
        clojure_template_tailstring(optional)Tail of the codestub generated for Clojure
        clojure_templatestring(optional)Body of the codestub generated for Clojure
        template_typestring(optional)Type of template
      • Show samples

        Parameters

        question_id

        ID of question

        body

        Request Body Sample

        {
          "templates": [
            {
              "language": "c",
              "head": "",
              "body": "int main()",
              "tail": ""
            },
            {
              "language": "cpp",
              "head": "",
              "body": "int main()",
              "tail": ""
            }
          ]
        }
        templatesarray[Inline Model 1](optional)List of the template
        {} Inline Model 1
        languagestring(optional)Language of the template
        headstring(optional)Head of the template
        bodystring(optional)template
        tailstring(optional)Tail of the template

        Request Body Sample

        {
          "templates": [
            {
              "language": "c",
              "head": "",
              "body": "int main()",
              "tail": ""
            },
            {
              "language": "cpp",
              "head": "",
              "body": "int main()",
              "tail": ""
            }
          ]
        }
        templatesarray[Inline Model 1](optional)List of the template
        {} Inline Model 1
        languagestring(optional)Language of the template
        headstring(optional)Head of the template
        bodystring(optional)template
        tailstring(optional)Tail of the template
      • Show samples

        Parameters

        question_id

        ID of question

        body

        Request Body Sample

        {
          "explanation": "",
          "input": "input",
          "output": "output",
          "name": "name",
          "qid": 1,
          "sample": false,
          "score": 10,
          "type": "easy"
        }
        explanationstring(optional)The explanation for the testcase
        inputstring(optional)Input for the testcase
        outputstring(optional)Output for the testcase
        namestring(optional)Name of the testcase
        qidinteger(optional)Question id of the question to which testcase will be added
        sampleinteger(optional)True if it is a sample testcase
        scoreinteger(optional)Score of the testcase
        typestring(optional)Type of the testcase

        Request Body Sample

        {
          "explanation": "",
          "input": "input",
          "output": "output",
          "name": "name",
          "qid": 1,
          "sample": false,
          "score": 10,
          "type": "easy"
        }
        explanationstring(optional)The explanation for the testcase
        inputstring(optional)Input for the testcase
        outputstring(optional)Output for the testcase
        namestring(optional)Name of the testcase
        qidinteger(optional)Question id of the question to which testcase will be added
        sampleinteger(optional)True if it is a sample testcase
        scoreinteger(optional)Score of the testcase
        typestring(optional)Type of the testcase
      • Show samples

        Parameters

        question_id

        ID of question

        testcase_id

        Testcase ID

        body

        Request Body Sample

        {
          "explanation": "",
          "input": "input",
          "output": "output",
          "name": "name",
          "qid": 1,
          "sample": false,
          "score": 10,
          "type": "easy"
        }
        explanationstring(optional)The explanation for the testcase
        inputstring(optional)Input for the testcase
        outputstring(optional)Output for the testcase
        namestring(optional)Name of the testcase
        qidinteger(optional)Question id of the question to which testcase will be added
        sampleinteger(optional)True if it is a sample testcase
        scoreinteger(optional)Score of the testcase
        typestring(optional)Type of the testcase

        Request Body Sample

        {
          "explanation": "",
          "input": "input",
          "output": "output",
          "name": "name",
          "qid": 1,
          "sample": false,
          "score": 10,
          "type": "easy"
        }
        explanationstring(optional)The explanation for the testcase
        inputstring(optional)Input for the testcase
        outputstring(optional)Output for the testcase
        namestring(optional)Name of the testcase
        qidinteger(optional)Question id of the question to which testcase will be added
        sampleinteger(optional)True if it is a sample testcase
        scoreinteger(optional)Score of the testcase
        typestring(optional)Type of the testcase
      • List all invite templates

        get /x/api/v3/templates

        Show samples

        Parameters

        access

        Access type (shared/owned)

        Response Type

        Response Sample

        {
          "data": [
            {
              "id": "2psql21H",
              "name": "New template",
              "subject": "Subject",
              "content": "<p>Hello</p>",
              "default": false,
              "created_at": "2025-02-10T00:00:00+0000",
              "updated_at": "2025-02-10T00:00:00+0000",
              "user": "bn109na"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/templates?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/templates?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/templates?limit=1&offset=12",
          "total": 13
        }
        dataarray[Template]List of requested templates
        page_totalintegerCount of total templates in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Template
        idstringID of template
        namestringName of the template
        subjectstringSubject of the template
        contentstringHTML content of the template
        defaultbooleanInvite template is default or not
        created_atdatetimeTime stamp at which this template was created
        updated_atdatetimeTime stamp at which this template was last updated
        userstringID of the user who created this template

        Response Sample

        {
          "data": [
            {
              "id": "2psql21H",
              "name": "New template",
              "subject": "Subject",
              "content": "<p>Hello</p>",
              "default": false,
              "created_at": "2025-02-10T00:00:00+0000",
              "updated_at": "2025-02-10T00:00:00+0000",
              "user": "bn109na"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/templates?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/templates?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/templates?limit=1&offset=12",
          "total": 13
        }
        dataarray[Template]List of requested templates
        page_totalintegerCount of total templates in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} Template
        idstringID of template
        namestringName of the template
        subjectstringSubject of the template
        contentstringHTML content of the template
        defaultbooleanInvite template is default or not
        created_atdatetimeTime stamp at which this template was created
        updated_atdatetimeTime stamp at which this template was last updated
        userstringID of the user who created this template
      • Show invite template

        get /x/api/v3/templates/{template_id}

        Show samples

        Parameters

        template_id

        ID of template

        Response Type

        Response Sample

        {
          "id": "2psql21H",
          "name": "New template",
          "subject": "Subject",
          "content": "<p>Hello</p>",
          "default": false,
          "created_at": "2025-02-10T00:00:00+0000",
          "updated_at": "2025-02-10T00:00:00+0000",
          "user": "bn109na"
        }
        {} Template
        idstringID of template
        namestringName of the template
        subjectstringSubject of the template
        contentstringHTML content of the template
        defaultbooleanInvite template is default or not
        created_atdatetimeTime stamp at which this template was created
        updated_atdatetimeTime stamp at which this template was last updated
        userstringID of the user who created this template

        Response Sample

        {
          "id": "2psql21H",
          "name": "New template",
          "subject": "Subject",
          "content": "<p>Hello</p>",
          "default": false,
          "created_at": "2025-02-10T00:00:00+0000",
          "updated_at": "2025-02-10T00:00:00+0000",
          "user": "bn109na"
        }
        {} Template
        idstringID of template
        namestringName of the template
        subjectstringSubject of the template
        contentstringHTML content of the template
        defaultbooleanInvite template is default or not
        created_atdatetimeTime stamp at which this template was created
        updated_atdatetimeTime stamp at which this template was last updated
        userstringID of the user who created this template
      • Audit Log Object

        options /auditlogs

        Show samples

        This object represents audit-log structure for this account.

        Response Sample

        {
          "source_id": 12345,
          "source_type": "user",
          "action": "update",
          "modified_fields": [
            "firstname",
            "lastname"
          ],
          "modified_values": {
            "firstname": {
              "from": "Mark",
              "to": "Andrew"
            },
            "lastname": {
              "from": "Peirson",
              "to": "Symonds"
            }
          },
          "ip_address": "8.8.8.8",
          "created_at": "2025-02-11T23:31:55+0000"
        }
        {} AuditLog
        source_idintegerID of the changed object
        source_typestringName of the changed object
        Can be user, test, team, user_membership, company or question
        actionstringAction, which triggered the changes(create, update, destroy)
        modified_fieldsarray[string]List of changed fields
        modified_valuesobjectA changed object
        ip_addressstringIP address from where the changes was triggered
        created_atdateTimeTimestamp at which these changes was made

        Response Sample

        {
          "source_id": 12345,
          "source_type": "user",
          "action": "update",
          "modified_fields": [
            "firstname",
            "lastname"
          ],
          "modified_values": {
            "firstname": {
              "from": "Mark",
              "to": "Andrew"
            },
            "lastname": {
              "from": "Peirson",
              "to": "Symonds"
            }
          },
          "ip_address": "8.8.8.8",
          "created_at": "2025-02-11T23:31:55+0000"
        }
        {} AuditLog
        source_idintegerID of the changed object
        source_typestringName of the changed object
        Can be user, test, team, user_membership, company or question
        actionstringAction, which triggered the changes(create, update, destroy)
        modified_fieldsarray[string]List of changed fields
        modified_valuesobjectA changed object
        ip_addressstringIP address from where the changes was triggered
        created_atdateTimeTimestamp at which these changes was made
      • Show samples

        Returns the list of audit logs.

        Parameters

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "data": [
            {
              "source_id": 12345,
              "source_type": "user",
              "user": "54321",
              "action": "update",
              "modified_fields": [
                "firstname",
                "lastname"
              ],
              "modified_values": {
                "firstname": {
                  "from": "Mark",
                  "to": "Andrew"
                },
                "lastname": {
                  "from": "Peirson",
                  "to": "Symonds"
                }
              },
              "ip_address": "8.8.8.8",
              "created_at": "2025-02-11T23:31:55+0000"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/audit_logs?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/audit_logs?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/audit_logs?limit=1&offset=12",
          "total": 13
        }
        dataarray[AuditLog]List of requested audit_logs
        page_totalintegerCount of total audit_logs in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} AuditLog
        source_idintegerfilterableID of the changed object
        source_typestringfilterableName of the changed object
        Can be user, test, team, user_membership, company or question
        userstringfilterableexpandableUser, who changed the object
        actionstringAction, which triggered the changes(create, update, destroy)
        modified_fieldsarray[string]List of changed fields
        modified_valuesobjectA changed object
        ip_addressstringfilterableIP address from where the changes was triggered
        created_atdateTimefilterableTimestamp at which these changes was made

        Response Sample

        {
          "data": [
            {
              "source_id": 12345,
              "source_type": "user",
              "user": "54321",
              "action": "update",
              "modified_fields": [
                "firstname",
                "lastname"
              ],
              "modified_values": {
                "firstname": {
                  "from": "Mark",
                  "to": "Andrew"
                },
                "lastname": {
                  "from": "Peirson",
                  "to": "Symonds"
                }
              },
              "ip_address": "8.8.8.8",
              "created_at": "2025-02-11T23:31:55+0000"
            }
          ],
          "page_total": 1,
          "offset": 0,
          "previous": "",
          "next": "https://www.hackerrank.com/x/api/v3/audit_logs?limit=1&offset=1",
          "first": "https://www.hackerrank.com/x/api/v3/audit_logs?limit=1&offset=0",
          "last": "https://www.hackerrank.com/x/api/v3/audit_logs?limit=1&offset=12",
          "total": 13
        }
        dataarray[AuditLog]List of requested audit_logs
        page_totalintegerCount of total audit_logs in current page
        offsetintegerOffset in current page
        previousstringURL for previous page. This will be empty when current page is first page
        nextstringURL for next page. This will be empty when current page is last page
        firststringURL for first page.
        laststringURL for last page.
        totalstringTotal items for current query
        {} AuditLog
        source_idintegerfilterableID of the changed object
        source_typestringfilterableName of the changed object
        Can be user, test, team, user_membership, company or question
        userstringfilterableexpandableUser, who changed the object
        actionstringAction, which triggered the changes(create, update, destroy)
        modified_fieldsarray[string]List of changed fields
        modified_valuesobjectA changed object
        ip_addressstringfilterableIP address from where the changes was triggered
        created_atdateTimefilterableTimestamp at which these changes was made
      • ATS Candidate Invite

        post /x/api/v3/ats/codescreen

        Show samples

        Use this API when sending an invite from an ATS system. This API requires a requisition_id and candidate_id, which allows HackerRank to track a single candidate across multiple requisitions who are sent the same test. This API is only enabled for approved integrations, a partner key from HackerRank is required in the request.

        Parameters

        body

        ATSCodeScreen
        Response Type

        Request Body Sample

        {
          "test_id": "123",
          "requisition_id": "300BR",
          "candidate_id": "5432",
          "email": "alice.wonders@email.com",
          "send_email": true,
          "test_result_url": null,
          "accept_result_updates": false,
          "force": false,
          "force_reattempt_after": 31556952,
          "accommodations": {
            "additional_time_percent": 25
          }
        }
        {} ATSCodeScreen
        test_idstringTest id for the candidate.
        requisition_idstringATS specific requisition id.
        candidate_idstringATS specific candidate id.
        emailstringEmail address of the candidate.
        send_emailboolean(optional)Flag to send the invite email to the candidate.
        test_result_urlstring(optional)Webhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook.
        accept_result_updatesboolean(optional)Flag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        forceboolean(optional)Flag which forces sending an email even when the candidate has already been invited. Must be true if sending the same test from multiple requisitions.
        force_reattempt_afterinteger(optional)Force re-invite the candidate if the previous attempt is older than the current time minus this value (in seconds).
        accommodationsCandidateAccommodations(optional)Object containing candidate accommodations.
        {} CandidateAccommodations
        additional_time_percentinteger(optional)A percentage of the test duration to be added as additional time. Value must be greater than 0.

        Response Sample

        {
          "test_link": "https://www.hackerrank.com/tests/bdsiod7sd22/login?b=efJ1c2VybmFtZSI6ImRhbm55LnBldGVyc29uQGhff2tlcnJhbmsuY19tIiwidGFzc3dvcmQiOiI0ZTQ4OWJjNSIsImhpZGUiOnRydWV9",
          "email": "alice.wonders@email.com",
          "id": "10000"
        }
        test_linkstringA link sent to the candidate where they can attempt the test.
        emailstringEmail address of the candidate.
        idintegerID of the test candidate.

        Request Body Sample

        {
          "test_id": "123",
          "requisition_id": "300BR",
          "candidate_id": "5432",
          "email": "alice.wonders@email.com",
          "send_email": true,
          "test_result_url": null,
          "accept_result_updates": false,
          "force": false,
          "force_reattempt_after": 31556952,
          "accommodations": {
            "additional_time_percent": 25
          }
        }
        {} ATSCodeScreen
        test_idstringTest id for the candidate.
        requisition_idstringATS specific requisition id.
        candidate_idstringATS specific candidate id.
        emailstringEmail address of the candidate.
        send_emailboolean(optional)Flag to send the invite email to the candidate.
        test_result_urlstring(optional)Webhook URL for candidate report. When the report is processed the report data will be sent to this URL as a webhook.
        accept_result_updatesboolean(optional)Flag to send score and status updates to the test_result_url. Please set to "true" if you accept updates. Default is "false".
        forceboolean(optional)Flag which forces sending an email even when the candidate has already been invited. Must be true if sending the same test from multiple requisitions.
        force_reattempt_afterinteger(optional)Force re-invite the candidate if the previous attempt is older than the current time minus this value (in seconds).
        accommodationsCandidateAccommodations(optional)Object containing candidate accommodations.
        {} CandidateAccommodations
        additional_time_percentinteger(optional)A percentage of the test duration to be added as additional time. Value must be greater than 0.

        Response Sample

        {
          "test_link": "https://www.hackerrank.com/tests/bdsiod7sd22/login?b=efJ1c2VybmFtZSI6ImRhbm55LnBldGVyc29uQGhff2tlcnJhbmsuY19tIiwidGFzc3dvcmQiOiI0ZTQ4OWJjNSIsImhpZGUiOnRydWV9",
          "email": "alice.wonders@email.com",
          "id": "10000"
        }
        test_linkstringA link sent to the candidate where they can attempt the test.
        emailstringEmail address of the candidate.
        idintegerID of the test candidate.
      • ATS Interview Invite

        post /x/api/v3/ats/codepair

        Show samples

        Use this API when sending an interview invite from an ATS system. This API requires a title, requisition_id and candidate_id. This API is only enabled for approved integrations, a partner key from HackerRank is required in the request.

        Parameters

        body

        ATSCodePair
        Response Type

        Request Body Sample

        {
          "title": "Interview with Bruce Wayne.",
          "requisition_id": "BATCAVE-093",
          "candidate_id": "BATMAN-001",
          "candidate": {
            "name": "Bruce Wayne",
            "email": "bw@batmaninc.com"
          },
          "send_email": true,
          "interview_metadata": {
            "aws_request_id": "Bat01",
            "first_name": "Bruce",
            "last_name": "Wayne"
          }
        }
        {} ATSCodePair
        titlestringTitle of the interview.
        requisition_idstringATS specific requisition id.
        candidate_idstringATS specific candidate id.
        candidateCandidateInformation(optional)Object containing candidate information.
        send_emailboolean(optional)Flag to send the invite email to the candidate.
        interview_metadataInterviewMetadata(optional)Object containing metadata for the interview.
        {} CandidateInformation
        namestring(optional)Full name of the candidate.
        emailstringEmail address of the candidate.
        {} InterviewMetadata
        aws_request_idstring(optional)AWS request id for the invite.
        first_namestring(optional)First name of the candidate.
        last_namestring(optional)Last name of the candidate.

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template

        Request Body Sample

        {
          "title": "Interview with Bruce Wayne.",
          "requisition_id": "BATCAVE-093",
          "candidate_id": "BATMAN-001",
          "candidate": {
            "name": "Bruce Wayne",
            "email": "bw@batmaninc.com"
          },
          "send_email": true,
          "interview_metadata": {
            "aws_request_id": "Bat01",
            "first_name": "Bruce",
            "last_name": "Wayne"
          }
        }
        {} ATSCodePair
        titlestringTitle of the interview.
        requisition_idstringATS specific requisition id.
        candidate_idstringATS specific candidate id.
        candidateCandidateInformation(optional)Object containing candidate information.
        send_emailboolean(optional)Flag to send the invite email to the candidate.
        interview_metadataInterviewMetadata(optional)Object containing metadata for the interview.
        {} CandidateInformation
        namestring(optional)Full name of the candidate.
        emailstringEmail address of the candidate.
        {} InterviewMetadata
        aws_request_idstring(optional)AWS request id for the invite.
        first_namestring(optional)First name of the candidate.
        last_namestring(optional)Last name of the candidate.

        Response Sample

        {
          "id": "289187",
          "from": "2025-02-11T23:31:55+0000",
          "to": "2025-02-12T00:31:55+0000",
          "status": "new",
          "url": "www.hackerrank.com/paper/demo",
          "user": 13245,
          "created_at": "2025-02-10T23:31:55+0000",
          "updated_at": "2025-02-10T23:31:55+0000",
          "title": "Interview with Mark",
          "feedback": "Candidate is good in system design",
          "thumbs_up": 1,
          "notes": "Assess the candidate for system design concepts",
          "resume_url": "https://www.example.com/resumes/71884928",
          "interviewers": [
            {
              "email": "hina@techcorp.com",
              "name": "Hina"
            }
          ],
          "result_url": "https://www.techcorp.org/interview_ended",
          "candidate": {
            "name": "Mark Ramone",
            "email": "me@markramone.com"
          },
          "metadata": {},
          "report_url": "www.hackerrank.com/x/interviews/289sadj1/report",
          "ended_at": "2025-02-10T23:31:55+0000",
          "interview_template_id": 1234
        }
        {} Interview
        idstringID of interview
        fromdatetimeScheduled start time
        todatetimeScheduled end time
        statusstringStatus of interview
        Can be new, active, ended or paused
        urlstringURL of interview pad
        userintegerexpandableUser who created this interview
        created_atdatetimeTime stamp at which interview was created
        updated_atdatetimeTime stamp at which interview was last updated
        titlestringTitle of interview
        feedbackstringFeedback provided by interviewer in the interview
        thumbs_upintegerInterviewer's final assessment
        notesstringNotes for interviewer
        resume_urlstringCandidate's resume link
        interviewersarray[string]List of interviewers to invite for the interview. You can either send an array of interviewer' ' emails or an array of the type: [{email: 'example@company.com', name: 'Interviewer'}]
        result_urlstringWebhook url for results to be posted after interview is ended, or when thumbs/feedback is changed on a completed interview
        candidateobjectCandidate to invite for the interview.
        metadataobjectAny additional information related to the interview.
        report_urlstringURL for the interview report
        ended_atdatetimeTimestamp at which the interview status was changed to ended
        interview_template_idintegerID of the interview template
      • Show samples

        Returns the list of your users. When returning a large list of users, your SCIM implementation must support pagination.

        In order to retrieve additional resources, the offset query parameter can be incremented for subsequent requests.

        Parameters

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:ListResponse"
          ],
          "Resources": [
            {
              "id": "jox1JH13",
              "name": {
                "familyName": "Peirson",
                "givenName": "Mark"
              },
              "userName": "mark@example.com",
              "active": true,
              "role": "recruiter",
              "team_admin": false,
              "company_admin": false,
              "emails": [
                {
                  "value": "mark@example.com",
                  "primary": true
                }
              ]
            }
          ],
          "startIndex": 0,
          "itemsPerPage": 1,
          "totalResults": 1
        }
        schemasarray[object](optional)SCIM Schema
        Resourcesarray[SCIMUserEntry]List of requested Users
        startIndexintegerStarting index of Users
        itemsPerPageintegerCount of Users per page
        totalResultsintegerTotal items for current query
        {} SCIMUserEntry
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:ListResponse"
          ],
          "Resources": [
            {
              "id": "jox1JH13",
              "name": {
                "familyName": "Peirson",
                "givenName": "Mark"
              },
              "userName": "mark@example.com",
              "active": true,
              "role": "recruiter",
              "team_admin": false,
              "company_admin": false,
              "emails": [
                {
                  "value": "mark@example.com",
                  "primary": true
                }
              ]
            }
          ],
          "startIndex": 0,
          "itemsPerPage": 1,
          "totalResults": 1
        }
        schemasarray[object](optional)SCIM Schema
        Resourcesarray[SCIMUserEntry]List of requested Users
        startIndexintegerStarting index of Users
        itemsPerPageintegerCount of Users per page
        totalResultsintegerTotal items for current query
        {} SCIMUserEntry
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails
      • Create User

        post /Users

        Show samples

        Create a new user object.

        Parameters

        body

        SCIMUser
        Response Type

        Request Body Sample

        {
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ]
        }
        {} SCIMUser
        nameobjectName of the user
        userNamestringUser name of user
        activeboolean(optional)Whether the user is active or not
        rolestring(optional)When role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminboolean(optional)Whether the user is a team admin of the teams that it is a part of.
        company_adminboolean(optional)Whether the user is a company admin or not
        emailsarray[string]List of user emails

        Response Sample

        {
          "id": "jox1JH13",
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ],
          "schemas": []
        }
        {} SCIMUser
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails
        schemasarray[string]SCIM Schema

        Request Body Sample

        {
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ]
        }
        {} SCIMUser
        nameobjectName of the user
        userNamestringUser name of user
        activeboolean(optional)Whether the user is active or not
        rolestring(optional)When role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminboolean(optional)Whether the user is a team admin of the teams that it is a part of.
        company_adminboolean(optional)Whether the user is a company admin or not
        emailsarray[string]List of user emails

        Response Sample

        {
          "id": "jox1JH13",
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ],
          "schemas": []
        }
        {} SCIMUser
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails
        schemasarray[string]SCIM Schema
      • Retrieve User

        get /Users/{id}

        Show samples

        Retrieves the details of an existing user. You need only supply the unique customer identifier that was returned upon user creation.

        Parameters

        id
        string

        ID of user to retrieve

        Response Type

        Response Sample

        {
          "id": "jox1JH13",
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ],
          "schemas": []
        }
        {} SCIMUser
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails
        schemasarray[string]SCIM Schema

        Response Sample

        {
          "id": "jox1JH13",
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ],
          "schemas": []
        }
        {} SCIMUser
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails
        schemasarray[string]SCIM Schema
      • Edit User - PATCH

        patch /Users/{id}

        Show samples

        Updates the specified user by setting the values of the parameters passed. Any parameters not provided will be left unchanged. This request accepts mostly the same arguments as the user creation call.

        Parameters

        id
        string

        ID of user to update

        body

        SCIMPatch
        Response Type

        Request Body Sample

        {
          "operations": [
            {
              "op": "add",
              "value": "{\"nickName\" : \"Billy\"}"
            }
          ]
        }
        {} SCIMPatch
        operationsarray[PatchOperationObject]Array of PATCH operations that should be performed to update the resource's information. Each PATCH operation must have exactly one `op` member
        {} PatchOperationObject
        opstring(optional)The method that should be used in the operation.
        Can be add, replace or remove
        valueobject(optional)Represents a key-value pair that should be updated.

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:User"
          ],
          "message": "Successful transaction"
        }
        schemasarray[object](optional)SCIM Schema
        messagestringResponse message

        Request Body Sample

        {
          "operations": [
            {
              "op": "add",
              "value": "{\"nickName\" : \"Billy\"}"
            }
          ]
        }
        {} SCIMPatch
        operationsarray[PatchOperationObject]Array of PATCH operations that should be performed to update the resource's information. Each PATCH operation must have exactly one `op` member
        {} PatchOperationObject
        opstring(optional)The method that should be used in the operation.
        Can be add, replace or remove
        valueobject(optional)Represents a key-value pair that should be updated.

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:User"
          ],
          "message": "Successful transaction"
        }
        schemasarray[object](optional)SCIM Schema
        messagestringResponse message
      • Edit User - PUT

        put /Users/{id}

        Show samples

        Updates the specified user by setting the values of the parameters passed. Any parameters not provided will be left unchanged. This request accepts mostly the same arguments as the user creation call.

        Parameters

        id
        string

        ID of user to update

        body

        SCIMUser
        Response Type

        Request Body Sample

        {
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ]
        }
        {} SCIMUser
        nameobjectName of the user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails

        Response Sample

        {
          "id": "jox1JH13",
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ],
          "schemas": []
        }
        {} SCIMUser
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails
        schemasarray[string]SCIM Schema

        Request Body Sample

        {
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ]
        }
        {} SCIMUser
        nameobjectName of the user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails

        Response Sample

        {
          "id": "jox1JH13",
          "name": {
            "familyName": "Peirson",
            "givenName": "Mark"
          },
          "userName": "mark@example.com",
          "active": true,
          "role": "recruiter",
          "team_admin": false,
          "company_admin": false,
          "emails": [
            {
              "value": "mark@example.com",
              "primary": true
            }
          ],
          "schemas": []
        }
        {} SCIMUser
        idstringID of the user
        nameobjectName of the user
        userNamestringUser name of user
        activebooleanWhether the user is active or not
        rolestringWhen role is admin, it defaults to recruiter. Role of user
        Can be recruiter, developer, interviewer or admin
        team_adminbooleanWhether the user is a team admin of the teams that it is a part of.
        company_adminbooleanWhether the user is a company admin or not
        emailsarray[string]List of user emails
        schemasarray[string]SCIM Schema
      • Lock User

        delete /Users/{id}

        Show samples

        Lock a user. This will also remove user from all the team that they are currently part of.

        Parameters

        id
        string

        ID of user to lock

        Response Messages

        204 User locked
      • Show samples

        Returns the list of your teams. When returning a large list of teams, your SCIM implementation must support pagination.

        In order to retrieve additional resources, the offset query parameter can be incremented for subsequent requests.

        Parameters

        limit
        integer

        Number of records to fetch

        offset
        integer

        Offset of records

        Response Type

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:ListResponse"
          ],
          "Resources": [
            {
              "id": "14bd8ec8b071",
              "diplayName": "Owners"
            }
          ],
          "startIndex": 0,
          "itemsPerPage": 1,
          "totalResults": 1
        }
        schemasarray[object](optional)SCIM Schema
        Resourcesarray[SCIMTeamEntry]List of requested Teams
        startIndexintegerStarting index of Teams
        itemsPerPageintegerCount of Teams per page
        totalResultsintegerTotal items for current query
        {} SCIMTeamEntry
        idstringID of the team
        diplayNamestringName of the team

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:ListResponse"
          ],
          "Resources": [
            {
              "id": "14bd8ec8b071",
              "diplayName": "Owners"
            }
          ],
          "startIndex": 0,
          "itemsPerPage": 1,
          "totalResults": 1
        }
        schemasarray[object](optional)SCIM Schema
        Resourcesarray[SCIMTeamEntry]List of requested Teams
        startIndexintegerStarting index of Teams
        itemsPerPageintegerCount of Teams per page
        totalResultsintegerTotal items for current query
        {} SCIMTeamEntry
        idstringID of the team
        diplayNamestringName of the team
      • Create Team

        post /Groups

        Show samples

        Create a new team object

        Parameters

        body

        SCIMTeam
        Response Type

        Request Body Sample

        {
          "diplayName": "Owners"
        }
        {} SCIMTeam
        diplayNamestringName of the team

        Response Sample

        {
          "id": "14bd8ec8b071",
          "diplayName": "Owners",
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:Group"
          ]
        }
        {} SCIMTeam
        idstringID of the team
        diplayNamestringName of the team
        schemasarray[string]SCIM Schema

        Request Body Sample

        {
          "diplayName": "Owners"
        }
        {} SCIMTeam
        diplayNamestringName of the team

        Response Sample

        {
          "id": "14bd8ec8b071",
          "diplayName": "Owners",
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:Group"
          ]
        }
        {} SCIMTeam
        idstringID of the team
        diplayNamestringName of the team
        schemasarray[string]SCIM Schema
      • Retrieve Team

        get /Groups/{id}

        Show samples

        Retrieves the details of an existing Team. You need only supply the unique customer identifier that was returned upon Team creation.

        Parameters

        id

        ID of the team to retrieve

        Response Type

        Response Sample

        {
          "id": "14bd8ec8b071",
          "diplayName": "Owners",
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:Group"
          ]
        }
        {} SCIMTeam
        idstringID of the team
        diplayNamestringName of the team
        schemasarray[string]SCIM Schema

        Response Sample

        {
          "id": "14bd8ec8b071",
          "diplayName": "Owners",
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:Group"
          ]
        }
        {} SCIMTeam
        idstringID of the team
        diplayNamestringName of the team
        schemasarray[string]SCIM Schema
      • Update Team

        patch /Groups/{id}

        Show samples

        Update the team's information using the operations provided.

        Parameters

        id

        ID of the team to update

        body

        SCIMPatch
        Response Type

        Request Body Sample

        {
          "operations": [
            {
              "op": "add",
              "value": "{\"nickName\" : \"Billy\"}"
            }
          ]
        }
        {} SCIMPatch
        operationsarray[PatchOperationObject]Array of PATCH operations that should be performed to update the resource's information. Each PATCH operation must have exactly one `op` member
        {} PatchOperationObject
        opstring(optional)The method that should be used in the operation.
        Can be add, replace or remove
        valueobject(optional)Represents a key-value pair that should be updated.

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:Group"
          ],
          "message": "Successful transaction"
        }
        schemasarray[object](optional)SCIM Schema
        messagestringResponse message

        Request Body Sample

        {
          "operations": [
            {
              "op": "add",
              "value": "{\"nickName\" : \"Billy\"}"
            }
          ]
        }
        {} SCIMPatch
        operationsarray[PatchOperationObject]Array of PATCH operations that should be performed to update the resource's information. Each PATCH operation must have exactly one `op` member
        {} PatchOperationObject
        opstring(optional)The method that should be used in the operation.
        Can be add, replace or remove
        valueobject(optional)Represents a key-value pair that should be updated.

        Response Sample

        {
          "schemas": [
            "urn:ietf:params:scim:schemas:core:2.0:Group"
          ],
          "message": "Successful transaction"
        }
        schemasarray[object](optional)SCIM Schema
        messagestringResponse message
      • Deprovision Team

        delete /Groups/{id}

        Show samples

        Locks all HackerRank Users belonging to this Team.

        Parameters

        id
        string

        ID of the Team to lock

        Response Messages

        204 Team locked