rest-api-quiz
REST APIs
Q1. What type of relationship is defined as one resource existing only if another parent resource exist-for example, pages in a book?
[β ]
Partial
dependent
associative
linked
Q2. Which URL pattern is recommended when working with one resource and a collection of resources?
/companies/{id} and/company
/company/{id} and/companies
[β ]
/companies/{id} and/companies
/company/{id} and/company
Q3. When dealing with JSON web Tokens (JWTs), what is a claim?
[β ]
data in the token
Ownership
a permission
and integer
Q4. Which REST contraint specifies that knowledge and understanding obtained from one component of the API should be generally applicable elsewhere in the API?
[β ]
Uniform Interface
Client-Server
Stateless
Chacheable
Q5. What would you enable to allow a browser on another site to make an AJAX request to your API?
HTTP
REST
OPTIONS
[β ]
CORS
Q6. APIs commonly use webhooks to _.
[β ]
notify other systems of an event
catch error faster
improve error logging
log additional data
Q7. What is the underlying goal of all APIs?
to add new technologies to an organization's infrastructure.
[β ]
to share features and functionality with other system.
to move infrastructure to the cloud.
to appease the latest digital transformation effort.
Q8. Which is a common command-line tool for using or exploring an API?
bash
[β ]
curl
ssh
powerShell
Q9. What is the modern specification for describing an API?
[β ]
OpenAPI (Swagger)
WADL
WSDL
OAuth
Explanation: OpenAPI Specification
Q10. Which HTTP verb is normally used to update or create a resource in an API?
SUBMIT
WRITE
[β ]
POST
CREATE
Explanation: HTTP request methods
Q11. What is one benefit of server-side caching in APIs?
Mobile app work better.
It improves uptime.
It offers better security.
[β ]
It reduce load on servers.
Q12. Your API resource does no allow deletion, and a client application attempted to delete the resource. What HTTP respose code should you return?
409 Conflict
400 Bad Request
406 Not Acceptable
[β ]
405 Method Not Allowed
Explanation: Response Codes
Q13. What is OpenID Connect?
[β ]
an identify layer on top of OAuth 2.0
the new name for SAML 3.0
a modern replacement for API keys
an SSO competitor for OAuth 2.0
Explanation: What is OpenID Connect?
Q14. What is one benefit of GraphQl over REST approaches?
[β ]
flexible querying/responses
more stable APIs
compatible with more gateways
more secure by default
Explanation: GraphQL vs. REST
Q15. Which REST constraint specifies that there should be no shared context?
[β ]
Stateless
Client-Server
Uniform Interface
Cacheable
Q16. What purpose does a User-Agent serve?
It identifies the user ID.
[β ]
It identifies the client application or SDK.
It identifies if the API should expect a user authentication.
It identifies if the API should accept microservice traffic.
Q17. If you were to add versioning by using the Accept and Content-Type header, what would be the correct format of the header value?
application/json
application/json_version2
text/html
[β ]
application/vnd.myapp.v2+json
Q18. What is one benefit that OAuth provides over an API key approach?
A token is encrypted.
A token is encoded.
[β ]
A token is scoped to the use case.
A token can be shared between systems.
Explanation: How to easily secure your APIs with API keys and OAuth
Q19. The ability to execute the same API request over and over again without changing the resourceβs state is an example of _.
stateless architecture
[β ]
idempotency
a uniform interface
cacheability
Q20. What component can you use to wrap legacy architectures or protocols into a REST interface for easier consumption and integration?
[β ]
API proxy
API gateway
OpenAPI
OAuth authorization server
Q21. What protection does a JSON Web Token (JWT) offer to mitigate tampering with its contents?
transport over SSL
encrypted payload
[β ]
a signature
encoded payload
Q22. What OAuth term is used to represent permissions?
token
[β ]
scope
claim
back channel
Explanation: OAuth Scopes
Q23. What additional type of token would you see when using OpenID Connect?
[β ]
ID token
refresh token
access token
auth code token
no-proxy
client-only
restricted
[β ]
private
Q25. Which OAuth grant type can support a refresh token?
[β ]
Authorization Code Grant
Client Credentials Grant
Implicit Grant
Authentication Grant
Q26. Using OAuth, what scope would you request for write access to the API?
It varies from API to API.
[β ]
admin
write
read-write
Q27. Which property would you use to include subresources directly into a JSON document?
_embedded
resources
[β ]
subresources
_links
Q28. What is the best way to track SDK and version usage?
[β ]
tracking downloads
Accept headers
user agents
polling users
Q29. Which REST constraint allows for the presence of caching, routing, and other systems between the client and server?
Layered System
Stateless
[β ]
Client-Server
Cacheable
Q30. Which content is best to include in your documentation?
your tech stack
reasoning for your naming schema
your mission statement
[β ]
sample code
Q31. What metric tracks overall availability for your API?
Response Time
Time to First Hello World
TTL
[β ]
Uptime
Q32. What is the recommended method and URL pattern for retrieving a specific user?
GET /user/{id}
[β ]
GET /users/{id}
GET /user?id={id}
GET /users?id={id}
Q33. What is the purpose of a link relation?
to describe relationships between resources or actions
to describe subresources related to the current one
[β ]
to link two resources together
to describe a resource and its purpose
Q34. When building SDKs, which languages should you support?
Java, Javascript, and .NET
and you can support
PHP, Python, and Go
[β ] the languages that your target users use
Q35. Which property would you use to include references to other resources in a JSON document?
[β ]
resources
_embedded
subresources
_links
Q36. What is OAuth?
[β ] an authorization framework for granted delegated access
an approach to single sign-on for APIs
a method for API authentication
HTTP Basic Authentication 2.0
Q37. What should your API documentation describe?
JSON
HTTP
[β ] common use cases
your tech stack
Q38. What is the purpose of an OAuth refresh token?
to share user profile information
to update an API configuration
to keep a web session active
[β ] to retrieve an access token
Explanation: Understanding Refresh Tokens
Q39. What is Time to First Hello World?
[β ] how long it takes for a developer to do something with your API
how long it takes to start a new programming language
how long it takes to install your SDK
how long it takes to read your documentation
Q40. Which response header tells the client and intermediaries that the response is not to be cached anywhere?
Cache-State: none
Expires:-1
Cache-Control: no-cache
[β ] Cache-Control: no-store
Q41. What component hides the distinctions or boundaries between various microservices from end-client applications?
[β ]
API gateway
API logging
a layered system
API proxy
Q42. The textbook approach to api versioning is to use _.
common knowledge
URLs
no versioning
[β ]
the Accept header
Q43. Which is the most secure method to transmit an API key?
URL parameter
[β ]
Authorization header
Base64 encoding
Basic Auth
Q44. Within Oauth, what component validates the userβs identity?
client
not specified
[β ]
authorization server
resource server
Q45. API traffic that is entirely internal to your organization is normally called _?
inbound traffic
north-south traffic
[β ]
internal traffic
east-west traffic
Q46. What is the best approach for requesting JSON instead of XML from an API?
Add .json to the URL.
APIs do not use XML.
Use the Content-Type header.
[β ]
Use the Accept header.
Q47. When a user attempts to access a record that is not their own, which HTTP response code is the most appropriate?
403
404
[β ]
401
405
Explanation: Response Codes
Q48. Which is a benefit of using an API gateway?
HTTP verbs
JSON payloads
HTTP response codes
[β ]
rate limiting/throttling
Q49. API testing must be treated as _?
red team testing
white box testing
blue box testing
[β ]
black box testing
Q50. Which HTTP verb is used in a CORS preflight request?
PUT
POST
GET
[β ]
OPTIONS
Expires: 1 minute
[β ]
Cache-Control: max-age=60
Expires: 1 January 2020
Cache-Expires: max-age=60
Explanation: Cache Control Header
Q52. What is the concept that allows an API client to explore an API via links embedded in payloads?
hypermedia
[β ]
link relations
parsing
browsing
Q53. Which HTTP response code describes a new resource as created successfully?
200
[β ]
201
204
202
Explanation: Response Codes
Q54. Which is an example of Code on Demand?
AWS Lambda
downloading open-source software
Serverless
[β ] JavaScript on a webpage
Explanation: Code on Demand
Q55. Which URL pattern should you follow for accessing a subresource attached to a specific resource?
/companies/employees/{companyId}/{employeeId}
/company/{companyId}/employees/{employeeId}
[β ] /companies/{companyId}/employees/{employeeId}
/companies/{companyId}/employee/{employeeId}
Explanation: Resource Naming
Q56. Which REST constraint essentially prohibits the use of cookies?
[β ] Stateless
Cacheable
Layered System
Uniform Interface
Last updated