Practice 350-401 REST APIs and Data Models questions with full explanations on every answer.
Start practicing
REST APIs and Data Models — choose a session length
Free · No account required
Click any question to see the full explanation and answer options, or start a focused practice session above.
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?
2An 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?
3A 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?
4An 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?
5A 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?
6An 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?
7A 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?
8An 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?
9A 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?
10A 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?
11An 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?
12A 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?
13A 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?
14An 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?
15A 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?
16An 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?
17An 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?
18A 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?
19Examine 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?
20Given 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?
21Consider 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?
22Examine 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?
23Given 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?
24Examine 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?
25What is the default OSPF hello interval on an Ethernet link in Cisco IOS?
26Which BGP attribute is preferred when it has the lowest value?
27What is the maximum hop count for EIGRP?
28Drag and drop the steps of a RESTCONF PUT transaction on IOS-XE into the correct order, from first to last.
29Drag and drop the steps of a NETCONF get-config operation into the correct order, from first to last.
30Drag 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.
31Drag and drop the steps of YANG module import and augmentation resolution into the correct order, from first to last.
32Drag and drop the steps of RESTCONF GET with depth and field query parameters into the correct order, from first to last.
33Drag and drop the steps of NETCONF edit-config with candidate datastore flow into the correct order, from first to last.
34Drag and drop the steps of JSON vs XML encoding selection for RESTCONF into the correct order, from first to last.
35Drag and drop the steps of YANG module import and augmentation resolution into the correct order, from first to last.
36Drag and drop the steps of OpenAPI schema validation for DNA Center REST call into the correct order, from first to last.
37Drag and drop the steps of RESTCONF GET with depth and field query parameters into the correct order, from first to last.
38Drag and drop the steps of NETCONF edit-config with candidate datastore flow into the correct order, from first to last.
39Drag and drop the steps of JSON vs XML encoding selection for RESTCONF into the correct order, from first to last.
40Drag and drop the steps of OpenAPI schema validation for DNA Center REST call into the correct order, from first to last.
41Drag and drop each YANG statement on the left to its matching function on the right.
42Drag and drop each REST HTTP status code on the left to its matching meaning on the right.
43Drag and drop each data encoding format on the left to its matching use case on the right.
44Drag and drop each NETCONF operation on the left to its matching action on the right.
45Drag and drop each RESTCONF method on the left to its matching NETCONF equivalent on the right.
46Drag and drop each YANG statement on the left to its matching function on the right.
47Drag and drop each HTTP status code on the left to its meaning on the right.
48Drag and drop each data encoding format on the left to its typical use case on the right.
49Drag and drop each NETCONF operation on the left to its action on the right.
50Drag and drop each RESTCONF method on the left to its equivalent NETCONF operation on the right.
51Which two statements about REST API HTTP methods are true? (Choose two.)
52Which three statements about YANG data models are true? (Choose three.)
53Which two statements about RESTCONF are true? (Choose two.)
54Which three statements about HTTP response status codes in REST APIs are true? (Choose three.)
55Which two statements about REST API HTTP methods are true? (Choose two.)
56Which three statements about YANG data models are true? (Choose three.)
57Which two statements about RESTCONF are true? (Choose two.)
58Which three statements about REST API authentication and security are true? (Choose three.)
The REST APIs and Data Models domain covers the key concepts tested in this area of the 350-401 exam blueprint published by Cisco. Courseiva provides free domain-focused practice, mock exams, missed-question review, and readiness tracking across all 350-401 domains — no account required.
The Courseiva 350-401 question bank contains 58 questions in the REST APIs and Data Models domain. Click any question to see the full explanation and answer breakdown.
Start with a 10-question focused session to identify your baseline accuracy in this domain. Read every explanation — even for questions you answer correctly — to understand the reasoning. Once you score consistently above 80%, move to a 20–30 question session to confirm depth before moving to the next domain.
Yes — the session launcher on this page draws questions exclusively from the REST APIs and Data Models domain. Choose 10, 20, 30, or 50 questions for a focused session, or click individual questions to review them one by one.
Save your results, see per-domain analytics, and get readiness scores — free, for every certification.
Sign Up FreeFree forever · Every certification included