Back to ServiceNow Certified Application Developer CAD questions

Scenario-based practice

Hard Difficulty Questions

Practise ServiceNow Certified Application Developer CAD practice questions — original exam-style scenarios covering every exam domain, with detailed explanations, wrong-answer analysis, and common exam traps.

20
scenario questions
SNOW-CAD
exam code
ServiceNow
vendor

Scenario guide

How to approach hard difficulty questions

These are the questions most candidates get wrong. They require connecting multiple concepts, reading tricky output, or knowing edge-case behaviour that isn't on most study cards. Practising them trains you to operate under uncertainty — a necessary skill on the real exam.

Quick answer

Hard Difficulty Questions questions test whether you can apply the concept in context, not just recognise a definition.

How the topic appears in realistic exam-style scenarios.

Which detail in the question changes the correct answer.

How to eliminate plausible but wrong options.

How to connect the question back to the wider exam objective.

Related practice questions

Related SNOW-CAD topic practice pages

Scenario questions usually connect to one or more exam topics. Use these links to review the underlying concepts behind the scenario.

Practice set

Practice scenarios

Question 1hardmultiple choice
Full question →

A company has a custom table 'u_training_course' with a reference field to 'sys_user' named 'u_instructor'. The requirement is that only users with the 'instructor' role can be selected in this field. Which approach should be used to enforce this?

Question 2hardmultiple choice
Full question →

A developer needs to create a new application scope. Which of the following is a best practice when defining the scope?

Question 3hardmultiple choice
Full question →

An application has a custom table 'u_project' with a field 'u_status' (choice list: Not Started, In Progress, Completed). The developer wants to prevent any update to the record if the status is 'Completed'. Which approach should be used?

Question 4hardmultiple choice
Full question →

Refer to the exhibit. A developer created this Script Include to be used as a REST API endpoint. However, when calling the API, the response is empty. What is the most likely reason?

Exhibit

Refer to the exhibit.

Script Include: getIncidents.gs

var getIncidents = Class.create();
getIncidents.prototype = Object.extendsObject(AbstractAjaxProcessor, {
    getOpenIncidents: function() {
        var gr = new GlideRecord('incident');
        gr.addQuery('active', true);
        gr.query();
        var result = [];
        while(gr.next()) {
            result.push({
                'number': gr.getValue('number'),
                'short_description': gr.getValue('short_description')
            });
        }
        return result;
    }
});
Question 5hardmultiple choice
Study the full ACL explanation →

A developer is troubleshooting a business rule in a scoped application that is not triggering. The rule is set to run 'before' query, with condition 'current.state == 1'. The table has read ACLs that restrict access. What is the most likely reason the business rule is not executing?

Question 6hardmultiple choice
Full question →

A developer creates a business rule on the Incident table that executes a GlideRecord query to update related records. The rule runs on 'after' update and queries the Problem table to set a field. However, the update is not being committed. What is the most likely reason?

Question 7hardmulti select
Full question →

A developer is designing a custom application with a table that stores sensitive employee data. The requirement is that only managers can view records where they are the manager of the employee. Which two configurations are needed to implement this requirement?

Question 8hardmultiple choice
Full question →

An organization uses ServiceNow Discovery to populate the CMDB. They notice that some CI relationships are missing after a discovery run. The discovery logs show no errors. What is the most likely cause?

Question 9hardmultiple choice
Full question →

A ServiceNow instance integrates with an external HR system via REST. The integration retrieves employee records and updates the 'sys_user' table. Recently, the integration started failing with '403 Forbidden' errors. The REST API endpoint and authentication credentials have not changed. Which action should the administrator take first to resolve the issue?

Question 10hardmultiple choice
Full question →

A developer notices that a scheduled job runs but does not execute the script. The job is set to run every hour. The script uses the 'gs.log' function to write messages. The log shows no output. What is the most likely cause?

Question 11hardmultiple choice
Full question →

A Service Portal widget is failing to update a reference field on a form after a user selects a value from a reference picker. The developer reviews the widget's client controller and sees the following code snippet: $scope.c.data.selectedItem = value; The server script expects 'selectedItem' to be a sys_id string, but it is receiving an object. What is the most likely cause?

Question 12hardmultiple choice
Full question →

A developer writes a business rule that queries the 'incident' table using GlideRecord. The script loops through all incidents and updates a field. After running, the developer notices that only a subset of records were updated. What is the most likely cause?

Question 13hardmulti select
Full question →

Which THREE conditions must be met for a user to successfully see a record in a ServiceNow list view?

Question 14hardmultiple choice
Full question →

A ServiceNow instance is being integrated with an external HR system using a SOAP message. The SOAP call is failing intermittently. The developer notices that the XML payload contains special characters like '&' and '<'. What is the best practice to handle these characters in SOAP messages?

Question 15hardmulti select
Full question →

Which TWO of the following are valid methods to authenticate a REST API call to ServiceNow?

Question 16hardmultiple choice
Full question →

A global company is using ServiceNow for IT Service Management. They have an external asset management system that needs to update asset records in ServiceNow in real-time. The integration is implemented using REST API calls from the external system to ServiceNow. Recently, the integration started failing intermittently with HTTP 429 (Too Many Requests) errors. The external system is sending a high volume of update requests (up to 1000 per minute) to the /api/now/table/alm_asset endpoint. The administrator noticed that the instance performance is degraded during peak times. The company wants to resolve the 429 errors while ensuring data is updated as quickly as possible, but without overloading the instance. Which course of action should the administrator take?

Question 17hardmulti select
Full question →

A developer is writing a business rule that should trigger on update of the 'short_description' field of an incident. The rule needs to check if the new value contains 'urgent' and, if so, set the priority to 1. Which TWO statements are true about implementing this rule?

Question 18hardmulti select
Full question →

A developer needs to create a new table that will store confidential employee feedback. The table must have the following characteristics: (1) Only authorized HR users can read the records. (2) The table should use the 'task' model to leverage assignment and state fields. (3) The table should be accessible via web services for integration. Which TWO actions are required to meet these requirements?

Question 19hardmultiple choice
Full question →

A developer encounters this error when running a business rule in a scoped application. The table 'x_myapp_incident' was created in the application scope and has records in it. What is the most likely cause?

Exhibit

Refer to the exhibit.

Error log from a scoped application:

2024-01-15 10:23:45 ERROR Script: GlideRecord operation failed for table 'x_myapp_incident' because the table does not exist or is not accessible in scope 'x_myapp'. Stack: ...
Question 20hardmultiple choice
Full question →

A developer implemented the client script shown in the exhibit to auto-populate the assigned-to field based on the task type. However, when the task type is changed, the assigned-to field is not updated. The server-side script 'TaskTypeAjax' is correctly defined and returns a valid sys_id. What is the most likely reason for the failure?

Exhibit

Refer to the exhibit.

Table: u_incident_task
Fields:
  u_incident: reference to incident
  u_task_type: choice (Investigation, Resolution, Documentation)
  u_assigned_to: reference to sys_user
  u_state: choice (Open, In Progress, Closed)

Client script: onChange on u_task_type
Script:
function onChange(control, oldValue, newValue, isLoading, isTemplate) {
    if (isLoading || newValue == '') {
        return;
    }
    var ga = new GlideAjax('TaskTypeAjax');
    ga.addParam('sysparm_name', 'getDefaultAssignedTo');
    ga.addParam('sysparm_task_type', newValue);
    ga.getXMLAnswer(function(answer) {
        if (answer) {
            g_form.setValue('u_assigned_to', answer);
        }
    });
}

These SNOW-CAD practice questions are part of Courseiva's free ServiceNow certification practice question bank. Courseiva provides original exam-style SNOW-CAD questions with detailed explanations, topic-based practice, mock exams, readiness tracking, and study analytics.