.png&w=3840&q=75)
Question bank
Cisco Certified DevNet Professional (DEVCOR)
40 Cisco Certified DevNet Professional (DEVCOR) questions with the correct answer and a written explanation, organised across 5 exam domains.
- 40 questions
- 5 domains
- Foundation level
Question index
Jump straight to any question. Answers and explanations are inline.
- Application Deployment and Security · 1, 2, 3, 4, 5, 6, 7, 8
- Cisco Platforms and Development · 9, 10, 11, 12, 13, 14, 15, 16
- Infrastructure and Automation · 17, 18, 19, 20, 21, 22, 23, 24
- Software Development and Design · 25, 26, 27, 28, 29, 30, 31, 32
- Understanding and Using APIs · 33, 34, 35, 36, 37, 38, 39, 40
Application Deployment and Security
8 questions in this domain
- Question 1Single Choice
In Python development, which tool is used to create an isolated environment for managing project-specific dependencies?
- AvenvCorrect answer
- Bpip
- Csetuptools
- Deasy_install
Why this is the answer
The venv module creates isolated Python environments, preventing global package pollution and version conflicts across automation projects.
- Question 2Multiple Select
Which of the following files are commonly used in Python projects to manage dependencies, lock versions, and define packaging metadata?
- ADockerfile
- Brequirements.txtCorrect answer
- Cpyproject.tomlCorrect answer
- Dpoetry.lockCorrect answer
Why this is the answer
These files track dependencies, metadata, and locked versions. A Dockerfile packages containers, not Python dependencies.
- Question 3Interactive
What is the immediate outcome of executing the Python command shown in the provided code block?
- ACreates a virtual environment named devnet-envCorrect answer
- BInstalls all project dependencies
- CFreezes packages into a requirements file
- DActivates an existing virtual environment
Why this is the answer
The python -m venv command creates a new virtual environment directory, isolating dependencies for a project. This is the first step in managing dependencies safely.
- Question 4Single Choice
According to PEP 518 and PEP 621, which file standardizes build system requirements and project metadata in modern Python projects?
- Apyproject.tomlCorrect answer
- Bsetup.py
- Crequirements.txt
- DPipfile
Why this is the answer
pyproject.toml is the modern standard for build systems and metadata, replacing legacy setup.py in modern Python projects.
- Question 5Multiple Select
Which of the following are common secrets management traps that application developers should avoid in production environments?
- AAssuming Base64 encoding is encryptionCorrect answer
- BHardcoding fallback credentials in source codeCorrect answer
- CRotating secrets dynamically
- DUsing AppRole authentication
Why this is the answer
Base64 is not encryption, and fallback credentials create backdoors. Dynamic rotation and AppRole authentication are secure practices.
- Question 6Interactive
What is the effect of the flag used in the pip install command displayed in the code block?
- AInstalls the package in editable modeCorrect answer
- BUpgrades the package to the latest version
- CExports dependencies to a file
- DInstalls the package globally
Why this is the answer
The -e flag installs the package in editable mode, so source changes are immediately reflected without reinstalling.
- Question 7Single Choice
In a Kubernetes cluster, what is the smallest deployable computing unit that can be created and managed?
- APodCorrect answer
- BDeployment
- CNode
- DService
Why this is the answer
A Pod is the smallest deployable Kubernetes unit and can contain one or more tightly coupled containers.
- Question 8Multiple Select
Which Kubernetes workload resources are used to manage the lifecycle of containerized applications in a cluster?
- ADeploymentCorrect answer
- BStatefulSetCorrect answer
- CDaemonSetCorrect answer
- DIngress
Why this is the answer
Deployments, StatefulSets, and DaemonSets manage application workloads; Ingress controls external HTTP traffic. These resources are central to Kubernetes orchestration.
Cisco Platforms and Development
8 questions in this domain
- Question 9Single Choice
What DevNet resource is the central hub for accessing learning labs, code exchanges, sandboxes, and platform-specific developer centers?
- ADevNet Developer PortalCorrect answer
- BCisco DNA Center GUI
- CMeraki Dashboard
- DvManage /developers page
Why this is the answer
The DevNet Developer Portal is the central hub that provides access to learning labs, code exchanges, sandboxes, and platform-specific developer centers.
- Question 10Multiple Select
Which statements correctly describe Always-On sandboxes? Select all that apply.
- AAvailable instantly and 24/7Correct answer
- BShared state that resets frequentlyCorrect answer
- CDedicated isolated topology with full administrative control
- DRead-only or restricted read-write accessCorrect answer
Why this is the answer
Always-On sandboxes are shared public resources with instant access, frequent resets, and restricted access. Full administrative control applies to Reserved Sandboxes.
- Question 11Interactive
Refer to the code snippet. Which authentication mechanism is required by the Meraki Dashboard API call?
- AAPI key in the X-Cisco-Meraki-API-Key headerCorrect answer
- BHTTP Basic Authentication
- COAuth 2.0 bearer token in Authorization header
- DAPI key as a query parameter
Why this is the answer
The Meraki Dashboard API requires an API key sent in the X-Cisco-Meraki-API-Key header, not as Basic Auth or a query parameter.
- Question 12Single Choice
Which HTTP method should be used to create a new resource through the Meraki Dashboard API?
- AGET
- BPOSTCorrect answer
- CPUT
- DDELETE
Why this is the answer
Creating new Meraki resources uses POST. GET retrieves data, PUT updates, and DELETE removes resources.
- Question 13Multiple Select
Which statements about Meraki Dashboard API rate limiting are correct? Select all that apply.
- ALimits are typically 5 requests per second per organizationCorrect answer
- BA 429 response should be retried immediately
- CRotating API keys removes all rate limits
- DAutomation should implement exponential backoffCorrect answer
Why this is the answer
Meraki enforces around 5 requests per second per organization. Clients should handle 429 responses with exponential backoff rather than immediate retries.
- Question 14Interactive
Refer to the code snippet. What operation is being performed with the Webex API?
- ACreates a Webex roomCorrect answer
- BDeletes a Webex room
- CAdds a membership
- DSends a message
Why this is the answer
The code uses rooms.create to create a new Webex room and prints the room ID.
- Question 15Single Choice
Which header should be validated to verify the authenticity of an incoming Webex webhook payload?
- AX-Spark-SignatureCorrect answer
- BX-Cisco-Meraki-API-Key
- CX-Auth-Token
- DAuthorization: Basic
Why this is the answer
Webex webhooks include the X-Spark-Signature header, which must be validated to prevent forged requests.
- Question 16Multiple Select
Which statements about Cisco Webex bots are correct? Select all that apply.
- ABots require a dedicated bot account and unique access tokenCorrect answer
- BProduction bots should use a personal access token
- CWebhook signature validation should be implementedCorrect answer
- DEfficient bots poll endpoints instead of using webhooks
Why this is the answer
Webex bots need dedicated accounts and tokens, and webhooks should be signature-validated. Personal access tokens and polling are not recommended for production bots.
Infrastructure and Automation
8 questions in this domain
- Question 17Single Choice
In Cisco model-driven programmability, which statement correctly describes the role of YANG?
- AA data modeling language that defines configuration and operational data structure.Correct answer
- BA transport protocol that streams telemetry over HTTP/2.
- CA scripting language for automating Cisco IOS CLI commands.
- DA network management protocol that replaces SNMP.
Why this is the answer
YANG is the schema language used to model configuration and operational data for NETCONF and RESTCONF. It does not transport, script, or replace management protocols.
- Question 18Multiple Select
Which two statements correctly describe NETCONF characteristics?
- AIt runs over SSH on TCP port 830.Correct answer
- BIt requires XML as its data encoding.Correct answer
- CIt natively supports JSON payloads.
- DIt is a stateless, resource-oriented protocol.
Why this is the answer
NETCONF is a stateful, session-based protocol over SSH port 830 and mandates XML encoding. JSON is not native to NETCONF; RESTCONF supports JSON.
- Question 19Interactive
Based on the provided command snippet, which protocol is being invoked to query the device?
- ARESTCONFCorrect answer
- BNETCONF
- CSNMP
- DgRPC
Why this is the answer
The URL path contains /restconf and uses HTTPS plus a YANG data format, so the command invokes RESTCONF.
- Question 20Single Choice
On which standard transport and port does RESTCONF typically communicate with Cisco devices?
- AHTTP/HTTPS over TCP port 443Correct answer
- BSSH over TCP port 830
- CgRPC over HTTP/2
- DUDP over port 161
Why this is the answer
RESTCONF uses HTTP or HTTPS, typically TCP port 443, and supports both JSON and XML payloads.
- Question 21Multiple Select
Which two statements about NETCONF datastores are correct?
- AThe candidate datastore allows configuration changes to be staged before commit.Correct answer
- BThe startup datastore holds the configuration that will be applied when the device boots.Correct answer
- CThe operational datastore is directly writable through NETCONF.
- DThe running datastore cannot be changed after initial startup.
Why this is the answer
NETCONF explicitly supports running, candidate, and startup datastores. Candidate staging and startup boot-time configuration are key features, while operational state is not writable.
- Question 22Interactive
What is the purpose of the connection: network_cli directive in the provided Ansible playbook snippet?
- AIt selects the network connection plugin used to reach managed switches.Correct answer
- BIt installs an agent on the target Cisco device.
- CIt encrypts sensitive variables inside the playbook.
- DIt sets the Python interpreter path on the control node.
Why this is the answer
network_cli is an Ansible connection plugin for network devices. It allows Ansible to communicate over SSH without requiring an agent on the device.
- Question 23Single Choice
In Ansible network automation, what does idempotency guarantee?
- ARepeated runs converge to the same desired state without unnecessary changes.Correct answer
- BEvery run forces a complete device reboot.
- COnly the first task in each playbook is executed.
- DThe playbook generates a random configuration on each run.
Why this is the answer
Idempotency means rerunning a playbook does not produce redundant modifications; it brings the system to the desired state and leaves it there.
- Question 24Multiple Select
Which two types of reusable content can be packaged inside an Ansible collection?
- AModulesCorrect answer
- BRolesCorrect answer
- CYANG containers
- DNETCONF datastores
Why this is the answer
Ansible collections package automation content such as modules, roles, playbooks, and plugins. YANG containers and NETCONF datastores are protocol or data modeling concepts, not collection components.
Software Development and Design
8 questions in this domain
- Question 25Single Choice
What best describes a monolithic application architecture?
- AAll business logic, data access, and user interface layers are combined into a single deployable unit.Correct answer
- BThe application is broken into independently deployable, loosely coupled services.
- CEach service owns its own private database and communicates through message brokers.
- DThe application is made up of multiple containers orchestrated by Kubernetes.
Why this is the answer
A monolithic architecture couples all business logic, data access, and user interface layers into one unified codebase and deployable artifact.
- Question 26Multiple Select
Which two statements are characteristics of microservices architectures?
- AServices are independently deployable and loosely coupled.Correct answer
- BA failure in one microservice usually brings down the entire application.
- CServices communicate over lightweight protocols such as HTTP/REST or asynchronous messaging brokers.Correct answer
- DAll microservices must share one centralized database to keep data consistent.
Why this is the answer
Microservices are independently deployable, loosely coupled services that communicate over lightweight protocols. Sharing a single database recreates monolithic coupling and is an anti-pattern.
- Question 27Interactive
The structure shown in the code block is written in which data serialization format?
- AJSON
- BYAMLCorrect answer
- CXML
- DgRPC
Why this is the answer
YAML uses indentation-based structure to define hierarchical data, as shown by the indented list of employees.
- Question 28Single Choice
What is idempotency in API design?
- AMaking multiple identical requests produces the same result as a single request.Correct answer
- BEach request can produce a different state depending on network conditions.
- CThe API returns cached responses without processing the request.
- DThe server stores session state to guarantee consistency.
Why this is the answer
Idempotency ensures repeated identical requests produce the same result as a single request, preventing duplicate resources or conflicting state changes.
- Question 29Multiple Select
Which two patterns are explicitly associated with preventing cascading failures or overload when integrating with downstream APIs?
- ACircuit BreakersCorrect answer
- BExponential Backoff with jitterCorrect answer
- CSynchronous polling
- DShared database anti-pattern
Why this is the answer
Circuit breakers isolate failing services, and exponential backoff with jitter prevents retry storms against downstream APIs.
- Question 30Interactive
The code block illustrates the central behavior of which distributed design pattern?
- ACircuit BreakerCorrect answer
- BLoad Balancer
- CDatabase sharding
- DREST API gateway
Why this is the answer
The code detects repeated failures, opens a circuit, and returns a fallback response, which is the core behavior of a circuit breaker.
- Question 31Single Choice
What does horizontal scaling mean?
- AAdding more instances or containers behind a load balancer to distribute demand.Correct answer
- BIncreasing the CPU and memory of a single server.
- CMoving the application to a larger virtual machine.
- DReplacing synchronous API calls with asynchronous messages.
Why this is the answer
Horizontal scaling adds more instances behind a load balancer, while vertical scaling increases the resources of a single node.
- Question 32Multiple Select
Which two Kubernetes probe types are mentioned in the playbook?
- ALiveness probesCorrect answer
- BReadiness probesCorrect answer
- CStartup probes
- DCircuit probes
Why this is the answer
The playbook explains that liveness probes restart dead containers, while readiness probes ensure traffic is only routed to ready instances.
Understanding and Using APIs
8 questions in this domain
- Question 33Single Choice
Which HTTP method is classified as non-idempotent in RESTful API design?
- AGET
- BPOSTCorrect answer
- CPUT
- DDELETE
Why this is the answer
POST is non-idempotent because repeated identical requests can create multiple resources. GET, PUT, and DELETE remain idempotent.
- Question 34Multiple Select
Which statements about HTTP status code classes are correct? (Choose two)
- A2xx codes indicate successful request handling.Correct answer
- B3xx codes indicate internal server failures.
- C4xx codes generally indicate client-side errors.Correct answer
- D5xx codes require the client to change the payload before retrying.
Why this is the answer
2xx indicates success, 4xx indicates client errors, 5xx indicates server errors. 3xx is redirection, not a server failure.
- Question 35Interactive
Analyze the following Python script that calls a Cisco API. What is the most likely cause of the failure?
- AThe payload is incorrectly sent as query parameters; use json=payload.Correct answer
- BThe Authorization header should be omitted.
- CPOST cannot be used with headers.
- DThe device name should be in the URL path.
Why this is the answer
Using params= sends the payload in the query string. The API expects a JSON body, so the request should use json=payload.
- Question 36Single Choice
Which authentication mechanism uses a Base64-encoded username and password in the Authorization header?
- AOAuth 2.0 Bearer Token
- BHTTP Basic AuthenticationCorrect answer
- CAPI Key
- DMutual TLS
Why this is the answer
HTTP Basic Authentication encodes username and password with Base64 and places the result in the Authorization header using the Basic scheme.
- Question 37Multiple Select
Which HTTP methods are considered idempotent? (Choose three)
- AGETCorrect answer
- BPOST
- CPUTCorrect answer
- DDELETECorrect answer
Why this is the answer
GET, PUT, and DELETE are idempotent. POST is non-idempotent because repeated calls can create multiple resources.
- Question 38Interactive
Given the following JSON response object, which Python expression extracts the task ID?
- Aresponse['response']['taskId']Correct answer
- Bresponse['taskId']
- Cresponse['response']['id']
- Dresponse.taskId
Why this is the answer
The JSON hierarchy nests taskId under response. The expression response['response']['taskId'] reaches the correct value.
- Question 39Single Choice
Which HTTP header should be sent to indicate that a client wants a JSON response?
- AAuthorization
- BAcceptCorrect answer
- CContent-Type
- DRetry-After
Why this is the answer
The Accept header declares the desired response media type. Content-Type describes the request body format.
- Question 40Multiple Select
Which two statements about webhooks are true?
- AWebhooks send HTTP POST payloads to consumer endpoints when events occur.Correct answer
- BWebhooks use HTTP GET to continuously poll for changes.
- CWebhook receivers should validate signatures or secret tokens.Correct answer
- DWebhook processing is synchronous and blocks the event source.
Why this is the answer
Webhooks are asynchronous push callbacks using HTTP POST. Receivers should verify signatures to prevent spoofed or malicious requests.
Frequently asked questions
Everything about the Cisco Certified DevNet Professional (DEVCOR) question bank and how to use it.