Courseiva
Knowledge + Practice
CertificationsVendorsCareer RoadmapsLabs & ToolsStudy GuidesGlossaryPractice Questions
C
Courseiva

Free IT certification practice questions with explained answers for CCNA, CompTIA, AWS, Azure, Google Cloud, and more.

Certification Practice Questions

CCNA practice questionsSecurity+ SY0-701 practice questionsAWS SAA-C03 practice questionsAZ-104 practice questionsAZ-900 practice questionsCLF-C02 practice questionsA+ Core 1 practice questionsGoogle Cloud ACE practice questionsCySA+ CS0-003 practice questionsNetwork+ N10-009 practice questions
View all certifications →

Product

CertificationsCertification PathsExam TopicsPractice TestsExam Dumps vs Practice TestsStudy HubComparisons

Company

AboutContactEditorial PolicyQuestion Writing PolicyTrust Center

Legal

Privacy PolicyTerms of Service

Courseiva is a free IT certification practice platform offering original exam-style practice questions, detailed explanations, topic-based practice, mock exams, readiness tracking, and study analytics for Cisco, CompTIA, Microsoft, AWS, and other technology certifications.

© 2026 Courseiva. Courseiva is operated by JTNetSolutions Ltd. All rights reserved.

Courseiva is an independent certification practice platform and is not affiliated with, endorsed by, or sponsored by Cisco, Microsoft, AWS, CompTIA, Google, ISC2, ISACA, or any other certification vendor. Vendor names and certification marks are used only to identify the exams learners are preparing for.

Certifications›350-401›Objectives›REST APIs and Data Models
Objective 603.0

REST APIs and Data Models

350-401 Practice Questions

Full Practice Test →All Objectives

350-401 REST APIs and Data Models — Practice Questions

30 questions from this objective

Question 2mediummultiple choice
Open the full VLAN trunking answer →

A network engineer is automating the configuration of a new VLAN on a Cisco Catalyst 9000 switch using RESTCONF. The engineer sends a PUT request to the URI 'https://switch/restconf/data/Cisco-NX-OS-device:Native/VlanList' with a JSON payload containing the VLAN details. The switch responds with a 405 Method Not Allowed error. What is the most likely cause of this error?

Question 3mediummultiple choice
Study the full Python automation breakdown →

An engineer is using a Python script to retrieve interface statistics from a Cisco IOS-XE device via the REST API. The script sends a GET request to 'https://device/restconf/data/ietf-interfaces:interfaces/interface=GigabitEthernet1/statistics' and receives a 404 Not Found response. The interface exists and is operational. What is the most likely issue?

Question 4hardmultiple choice
Read the full Ansible explanation →

A network team is using Ansible with the iosxr_config module to push configuration changes to a Cisco IOS-XR router. The playbook uses the REST API via the 'ansible_connection: restconf' setting. The engineer notices that the changes are applied but the playbook reports 'changed: false' even when changes were made. What is the most likely reason for this behavior?

Question 5mediummultiple choice
Read the full REST/YANG explanation →

An engineer is developing a script to automate the backup of running configurations from multiple Cisco IOS-XE devices using RESTCONF. The script sends a GET request to 'https://device/restconf/data/Cisco-IOS-XE-native:native/configuration' and receives a 501 Not Implemented error. What is the most likely cause?

Question 6easymultiple choice
Full question →

A network engineer is using the Cisco DNA Center REST API to retrieve the list of network devices. The engineer sends a GET request to '/dna/intent/api/v1/network-device' and receives a 400 Bad Request response. The API documentation indicates that the request requires a query parameter 'siteId'. What should the engineer do to resolve the issue?

Question 7mediummultiple choice
Open the full VLAN trunking answer →

An engineer is using a Python script to configure a new VLAN on a Cisco Nexus 9000 switch using the NX-API REST API. The script sends a POST request to 'https://switch/api/mo/org.json' with a JSON payload containing the VLAN configuration. The switch responds with a 403 Forbidden error. What is the most likely cause?

Question 8easymultiple choice
Read the full wireless explanation →

A network engineer is using the Cisco Meraki REST API to update the SSID settings for a wireless network. The engineer sends a PUT request to 'https://api.meraki.com/api/v1/networks/{networkId}/wireless/ssids/{ssidNumber}' with a JSON payload containing the new settings. The API returns a 429 Too Many Requests error. What should the engineer do to resolve this issue?

Question 9hardmultiple choice
Study the full SD-WAN breakdown →

An engineer is using the Cisco SD-WAN vManage REST API to retrieve the list of WAN edge devices. The engineer sends a GET request to 'https://vmanage/dataservice/device' and receives a 401 Unauthorized error. The engineer has already obtained a JSESSIONID cookie by authenticating with the API. What is the most likely cause of the error?

Question 10mediummultiple choice
Read the full REST/YANG explanation →

A network engineer is using the Cisco IOS-XE REST API to configure a static route. The engineer sends a PATCH request to 'https://device/restconf/data/Cisco-IOS-XE-native:native/ip/route/ip-route-interface-forwarding-list=192.168.1.0,255.255.255.0,GigabitEthernet1' with a JSON payload containing the route details. The device responds with a 204 No Content status. What does this response indicate?

Question 11mediummultiple choice
Study the full Python automation breakdown →

A network engineer writes the following Python script using the Requests library to retrieve interface information from a Cisco IOS-XE device via RESTCONF:

```python

import requests
import json

url = "https://10.1.1.1:443/restconf/data/ietf-interfaces:interfaces" headers = {

"Accept": "application/yang-data+json",
    "Content-Type": "application/yang-data+json"
}

auth = ("admin", "password") response = requests.get(url, headers=headers, auth=auth, verify=False)

print(response.json())

```

What is the primary issue with this code?

Question 12mediummultiple choice
Read the full Ansible explanation →

An engineer uses the following Ansible playbook to configure an interface on a Cisco IOS-XE device using the cisco.ios.ios_interfaces module:

```yaml --- - name: Configure interface hosts: cisco-routers gather_facts: no tasks: - name: Set interface description cisco.ios.ios_interfaces: config: - name: GigabitEthernet0/1 description: "Uplink to Core"

enabled: true

state: replaced ```

What is the result of running this playbook?

Question 13hardmultiple choice
Review the full routing breakdown →

A network engineer is using the Cisco DNA Center REST API to retrieve the list of devices. The API call returns the following JSON response:

```json

{
  "response": [
    {
      "id": "device-123",
      "hostname": "Router1",
      "managementIpAddress": "10.10.20.1",
      "softwareVersion": "17.3.3",
      "platformId": "ISR4451-X/K9"
    },
    {
      "id": "device-456",
      "hostname": "Switch1",
      "managementIpAddress": "10.10.20.2",
      "softwareVersion": "16.12.5",
      "platformId": "C9300-24P"
    }
  ],
  "version": "1.0"
}

```

The engineer wants to filter the results to only show devices with software version 17.3.3. Which of the following API query parameters should be used?

Question 14mediummultiple choice
Study the full Python automation breakdown →

A network engineer writes a Python script using NAPALM to retrieve the ARP table from a Cisco IOS-XE device:

```python

from napalm import get_network_driver

driver = get_network_driver('ios') connection = driver('10.1.1.1', 'admin', 'password') connection.open() arp_table = connection.get_arp_table()

for entry in arp_table:
    print(f"IP: {entry['ip']} - MAC: {entry['mac']}")

connection.close() ```

What is the issue with this code?

Question 15hardmultiple choice
Read the full REST/YANG explanation →

An engineer configures model-driven telemetry on a Cisco IOS-XE device with the following gRPC dial-out configuration:

``` telemetry ietf subscription 101 encoding encode-kvgpb filter xpath /interfaces/interface/state/counters source-address 10.1.1.1 stream yang-push update-policy periodic 500 receiver ip address 10.2.2.2 50001 protocol grpc-tcp ```

What is the purpose of the 'encoding encode-kvgpb' command?

Question 16easymultiple choice
Study the full Python automation breakdown →

A network engineer uses the following Python script with Netmiko to send a command to a Cisco IOS-XE device:

```python

from netmiko import ConnectHandler

device = { 'device_type': 'cisco_ios', 'ip': '10.1.1.1', 'username': 'admin', 'password': 'password', 'secret': 'enable_secret'

}

connection = ConnectHandler(**device) output = connection.send_command('show ip interface brief')

print(output)

connection.disconnect() ```

What is the purpose of the 'secret' parameter in the device dictionary?

Question 17mediummultiple choice
Read the full REST/YANG explanation →

An engineer is using the Cisco IOS-XE RESTCONF API to create a new loopback interface. The following JSON payload is sent in a POST request to '/restconf/data/ietf-interfaces:interfaces':

```json

{

"ietf-interfaces:interface": [

{
      "name": "Loopback100",
      "description": "Management Loopback",
      "type": "iana-if-type:softwareLoopback",
      "enabled": true,

"ietf-ip:ipv4": {

"address": [
          {
            "ip": "192.168.1.1",
            "netmask": "255.255.255.0"
          }
        ]
      }
    }
  ]
}

```

What is the correct HTTP method and URL for this operation?

Question 18mediummultiple choice
Read the full Ansible explanation →

An Ansible playbook uses the cisco.ios.ios_l3_interfaces module to configure an IPv4 address on GigabitEthernet0/1:

```yaml --- - name: Configure IPv4 address hosts: cisco-routers gather_facts: no tasks: - name: Set IP address cisco.ios.ios_l3_interfaces: config: - name: GigabitEthernet0/1 ipv4: - address: 10.1.1.1/24 state: merged ```

What is the effect of the 'state: merged' parameter?

Question 19easymultiple choice
Full question →

A network engineer is using the Cisco DNA Center API to initiate a network discovery. The API endpoint '/dna/intent/api/v1/discovery' is called with a POST request containing the following JSON payload:

```json

{
  "discoveryType": "Range",
  "ipAddressList": "10.10.20.1-10.10.20.254",
  "protocolOrder": "SSH",
  "timeout": 5,
  "retryCount": 3
}

```

The API returns a 202 Accepted status code. What does this indicate?

Question 20mediummultiple choice
Read the full NAT/PAT explanation →

Examine the following configuration snippet applied to a Cisco IOS-XE device:

interface GigabitEthernet0/1
 ip address 10.1.1.1 255.255.255.0
 ip nat inside

!

interface GigabitEthernet0/2
 ip address 192.168.1.1 255.255.255.0
 ip nat outside

!

access-list 100 permit ip 10.1.1.0 0.0.0.255 any
ip nat inside source list 100 interface GigabitEthernet0/2 overload

What is the effect of this configuration?

Question 21mediummultiple choice
Review the full OSPF breakdown →

Given the following configuration on a Cisco IOS-XE device:

router ospf 1
 network 10.0.0.0 0.255.255.255 area 0

!

interface GigabitEthernet0/0
 ip address 10.1.1.1 255.255.255.0
 ip ospf cost 10

!

interface GigabitEthernet0/1
 ip address 10.2.2.1 255.255.255.0

!

Which statement is true about OSPF operation?

Question 22mediummultiple choice
Full question →

Consider the following configuration for a Cisco IOS-XE device:

interface GigabitEthernet0/0
 ip address 192.168.1.1 255.255.255.0
 standby 1 ip 192.168.1.254
 standby 1 priority 150
 standby 1 preempt

!

interface GigabitEthernet0/1
 ip address 192.168.2.1 255.255.255.0
 standby 2 ip 192.168.2.254
 standby 2 priority 100

What is the effect of this HSRP configuration?

Question 23mediummultiple choice
Study the full EIGRP explanation →

Examine the following EIGRP configuration on a Cisco IOS-XE device:

router eigrp 100
 network 10.0.0.0 0.255.255.255
 passive-interface default
 no passive-interface GigabitEthernet0/0

!

interface GigabitEthernet0/0
 ip address 10.1.1.1 255.255.255.0

!

interface GigabitEthernet0/1
 ip address 10.2.2.1 255.255.255.0

Which statement is true?

Question 24mediummultiple choice
Open the full BGP breakdown →

Given the following BGP configuration on a Cisco IOS-XE device:

router bgp 65001

bgp router-id 1.1.1.1

neighbor 10.0.0.2 remote-as 65002
 neighbor 10.0.0.2 update-source Loopback0
 neighbor 10.0.0.2 ebgp-multihop 2

!

interface Loopback0
 ip address 1.1.1.1 255.255.255.255

!

interface GigabitEthernet0/0
 ip address 10.0.0.1 255.255.255.252

What is the purpose of the 'ebgp-multihop 2' command?

Question 25mediummultiple choice
Review the full OSPF breakdown →

Examine the following configuration for a Cisco IOS-XE device:

interface GigabitEthernet0/0
 ip address 10.0.0.1 255.255.255.252

ipv6 address 2001:db8::1/64 ipv6 ospf 1 area 0 !

interface GigabitEthernet0/1
 ip address 192.168.1.1 255.255.255.0

ipv6 address 2001:db8:1::1/64 ipv6 ospf 1 area 0 ! ipv6 router ospf 1 router-id 2.2.2.2

Which statement is true about OSPFv3 operation?

Question 26easymultiple choice
Review the full OSPF breakdown →

What is the default OSPF hello interval on an Ethernet link in Cisco IOS?

Question 27easymultiple choice
Open the full BGP breakdown →

Which BGP attribute is preferred when it has the lowest value?

Question 28easymultiple choice
Study the full EIGRP explanation →

What is the maximum hop count for EIGRP?

Question 29mediumdrag order
Read the full REST/YANG explanation →

Drag and drop the steps of a RESTCONF PUT transaction on IOS-XE into the correct order, from first to last.

Question 30mediumdrag order
Read the full REST/YANG explanation →

Drag and drop the steps of a NETCONF get-config operation into the correct order, from first to last.

Question 31mediumdrag order
Full question →

Drag and drop the steps of using a REST API to retrieve interface statistics from a Cisco device into the correct order, from first to last.

More REST APIs and Data Models questions available in the full practice test.

Continue Practising →
←

Previous objective

Ansible Automation

Next objective

Cisco DNA Center

→

All 350-401 Objectives

  • 100.Architecture15%
  • 101.Enterprise Network Design
  • 102.SD-Access Architecture
  • 103.SD-WAN Architecture
  • 104.QoS Architecture
  • 200.Virtualization10%
  • 201.Network Function Virtualization
  • 202.Virtual Machines and Hypervisors
  • 203.VRF and Path Isolation
  • 300.Infrastructure30%
  • 301.OSPF
  • 302.BGP
  • 303.EIGRP
  • 304.VLANs and Trunking
  • 305.Spanning Tree Protocol
  • 306.EtherChannel
  • 307.Wireless Infrastructure
  • 308.MPLS
  • 309.WAN Technologies
  • 310.NAT and DHCP
  • 311.IP Multicast
  • 312.QoS
  • 400.Network Assurance10%
  • 401.SNMP and Syslog
  • 402.NetFlow and Telemetry
  • 403.SPAN and RSPAN
  • 404.IP SLA
  • 500.Security20%
  • 501.AAA, RADIUS, and TACACS+
  • 502.ACLs and CoPP
  • 503.802.1X and TrustSec
  • 504.VPN Technologies
  • 505.Infrastructure Security
  • 600.Automation15%
  • 601.Python for Network Automation
  • 602.Ansible Automation
  • 603.REST APIs and Data Models
  • 604.Cisco DNA Center
  • 605.Model-Driven Telemetry