Fundamentals1 Flashcards
What does API stand for?
Application Programming Interfaces
What is the difference between a GUI and an API?
- GUI is a user interface that is used by end users
- API is used by machine applications/3rd party applications to interface with a system
What are Web API?
Programmatic interface consisting of one or more publicly exposed endpoints to a defined request - response message system, typically expressed in JSON or XML, which is exposed via the web- most commonly by means of an HTTP- based web server
What are some of the protocols that can be used by Web API?
SOAP
XML-RPC
Cobra
REST (Most common)
What does SOAP stand for?
Simple Object Access Protocol
What does REST stand for?
Representational State Transfer
Is REST:
A) An architectural style of client-server applications
B) Technology
C) Both A and B
A) An architectural style of client-server applications
What are the 6 design rule constraints for REST that are applied to establish the distinct characteristics of the REST architectural style?
- Client-Server
- Stateless
- Cache
- Interface/Uniform Contract
- Layered System
- Code-on-Demand (Optional)
A Web API is an API that an application call by sending requests and receive responses …
A) Over the internet
B) to a database
C) from within a web browser plugin
D) None of the above
A) Over the internet
The request-response messages of a REST API are typically represented by ..
A) JSON
B) XML
C) RMI
D) None of the above
A) JSON
What is REST?
A) Remote State Transaction
B) Remote State Transfer
C) Representational State Transfer
D) None of the above
C) Representational State Transfer
Which of the following statements is NOT correct?
A) API stands for Application Programming Interface
B) API provide Interfaces to computer system for machine consumption
C) API is a technology that allows applications (software programs) to talk to one another
D) APIs provides interfaces to computer system for human consumption
D) APIs provides interfaces to computer system for human consumption
Which of the following statements is true?
A) REST Web Services are better integrated with HTTP than SOAP-based services
B) REST Web Services require using an API definition language
C) REST Web Services require XML messages or WSDL service
D) All of the above
A) REST Web Services are better integrated with HTTP than SOAP-based services
The most popular API style on the Web is:
A) SOAP
B) JavaScript
C) REST
D) XML-RPC
C) REST
Name some of the TM Forum Open APIs that are available for enabling Ecosystems (11 are listed)
- Product Ordering API
- Product Catalog API
- Product Inventory API
- Billing API
- Service Catalog API
- Performance API
- SLA Management API
- Trouble Ticket API
- Onboarding API
- Privacy API
- Service Activation and Provisioning API
What are the 3 TM Forum Open API Governance Activities?
- Management of the portfolio of APIs
- Management of the individual API lifecycle
- Management of policies and standards
What is included in the Management of the portfolio of APIs governance activity?
Planning the development of new services and updating current services, through service submission and change requests
What is included in the Management of the individual API lifecycle governance activity?
To ensure that service specification updates are consistent and interoperate through gated review and publication
What is included in the Management of policies and standards governance activity?
The rules to which all APIs must conform should themselves be governed
What are some of the milestones that the document lifecycles can go through (as part of API Governance)?
Approval
Conditional Approval
Resubmission
Dispensation
Escalation
Are all the APIs already developed?
A) Yes, mostly they are all defined but detailed specifications are needed for some of them
B) No, they are not. They are still evolving
C) Yes, all developed but current set will evolve through versioning
D) None of the above
B) No, they are not. They are still evolving
Name 2 TM Forum APIs
A) Order Management API and Trouble Ticket API
B) Change Management API and Configuration API
C) Product Ordering API and Trouble Ticket API
D) Ordering API and Catalog API
C) Product Ordering API and Trouble Ticket API
What is the Open API Governance Board?
A) A board within TM Forum which defines the End-to-End API Architecture
B) A board within TM Forum with the responsibility of writing API Design Principles
C) A board within TM Forum which has the overall responsibility of creating and maintaining the Open API MAP with its membership
D) A board within TM Forum which has the overall responsibility of validating the API documents submitted by the membership against the principles and standards of the API program, and relevant to the particular API development lifecycle milestone
D) A board within TM Forum which has the overall responsibility of validating the API documents submitted by the membership against the principles and standards of the API program, and relevant to the particular API development lifecycle milestone
Which of the following statements is NOT correct?
A) More than 20 TM Forum Open APIs have been crowd-sourced and no more are to come
B) TM Forum maintains an API Open Roadmap with its membership
C) An important characteristic is that the TM Forum APIs are crowd sourced from the TM Forum community
D) TM Forum Service Providers and Vendors provides input as to what APIs should be developed all in accordance with specific design and governance policies
A) More than 20 TM Forum Open APIs have been crowd-sourced and no more are to come
Can anyone submit a proposal for a new Forum Open API?
A) Anyone from the Open Source community can submit a proposal for a new API using a crowd-sourcing template
B) Any TM Forum member can submit a proposal for a new API using a crowd-sourcing template
C) Anyone can submit a proposal for a new API but using a crowd-sourcing template is preferred
D) Anyone of the TM Forum Open API Portal can submit a proposal using a crowd-sourcing template
B) Any TM Forum member can submit a proposal for a new API using a crowd-sourcing template
Which of the following is a benefit of using TM Forum Open APIs?
A) Business agility and interoperability
B) Partnering for new services
C) Simplification of the IT estate
D) All of the above
D) All of the above
Which level of the TM Forum Business Process Framework (eTOM) is chosen as the benchmark of API verification?
Level 3
Where can we find the REST resources exposed by an API?
A) REST resources at Level 0 of the API MAP
B) REST resources at Level 1 of the API MAP
C) REST resources at Level 2 of the API MAP
D) None of the above
C) REST resources at Level 2 of the API MAP
Can an Open API belong to one or several domains in the Level 0 TMF Information Framework (SID) model?
Both! It can belong to one OR several domains
What document defines the API structure?
A) TMF Open API MAP GB992
B) TMF Open API and Information Model Mapping GB921
C) TM Information Framework GB921
D) TM Framework Concepts GB942
A) TMF Open API MAP GB992
The TM Forum APIs are related to all other Forum frameworks, in that they are …
A) typically entity-centric, manipulating a primary resource that can be found in TM Information Framework (SID), an Information view of the APIs
B) derived from the level 2 core business processes from TM Forum Business Process Framework (eTOM), a Business process view of the APIs
C) completely defined as normalized endpoint application or application-domain within the TM Forum Application Framework (TAM), an Application view of the APIs
D) derived from a Business Service Catalog, an Integration Framework view of the APIs
A) typically entity-centric, manipulating a primary resource that can be found in TM Information Framework (SID), an Information view of the APIs
What is the API Map Level 0?
A) The main TM Forum API, typically the primary resource, and aligned to TM Forum Information Framework ABEs and are represented at Level 0
B) The standard Frameworx business domains
C) The component resources exposed within the API
D) The core APIs level
B) The standard Frameworx business domains
How is the API MAP structured?
A) Decomposition hierarchy with 3 levels
B) REST resources at Level 1
C) Decomposition hierarchy with 2 levels
D) With Domains at Level 1
A) Decomposition hierarchy with 3 levels
What document describes the relationship between the Open APIs and the Forum Business Processes?
A) GB996 API Governance Practice
B) GB996A API Catalog
C) IG1157 Digital Platform Reference Architecture Concepts
D) GB992 Addendum Mapping between API and Business_Process_Framework
D) GB992 Addendum Mapping between API and Business_Process_Framework
Where are TMF REST Design patterns documented?
TMF 630 and TMF 631(getting obsolete)
Name the 9 TMF REST Design Patterns?
API Resource ArcheTypes
Uniform Contract Elements
Query Entities Design Patterns
Create Entities Design Patterns
Update Entities Design Patterns
Delete Entities Design Patterns
Tasks Design Patterns
Notification Design Patterns
Asynchronous Operations Design Patterns
What are the 3 API Resource Archetypes?
- Resource Collection
- Managed Resource
- Tasks
What are the Uniform Contract Elements?
Resource identifier syntax, Methods, Media types
“All API operations are based on the REST uniform Contract operations (GET, POST, DELETE, PUT, PATCH, HEAD, etc)
What Uniform operation(s) is used to create a single Entity?
A) POST or PUT
B) POST
C) PUT
D) PATCH
B) POST
Why do we need REST API Design Patterns?
A) RESTful web services have strict specifications for designing and building APIs but variations exist
B) There are a couple of standards of how RESTful Web API should work. We need to pick one
C) REST is a software architectural style, not a specification, for building scalable web services
D) All of the above
C) REST is a software architectural style, not a specification, for building scalable web services
Which of the following statements is NOT correct?
A) All TM Forum APIs are based on a common set of Patterns
B) The TM Forum API patterns are documented in the TM Forum REST Guidelines (Also knows as TMF 630 and TMF 631)
C) TM Forum API Patterns for supporting Notification Management in REST based systems are described in the TM Forum REST Guidelines
D) TM Forum REST Guidelines is used only by TM Forum members
D) TM Forum REST Guidelines is used only by TM Forum members
Which of the following is NOT addressed by the TM Forum REST Design Guidelines?
A) Patterns for using Uniform Contract operations for the implementation of Entity CRUD operations and Task operations
B) Patterns on filtering and attribute selection
C) Federated Identity Pattern
D) Patterns for supporting Notification Management in REST based systems
C) Federated Identity Pattern
Which of these statements is NOT correct?
When using the Update Entities Design Pattern..
A) PUT or PATCH can be used to change an entity
B) PUT may be used to change a subset of the entity attribute values without changing the resource representation (the set of supported properties)
C) PATCH support changing all the entity attribute values in a single operation
D) PATCH can be used to change the representation (the set of supported properties) of an entity
D) PATCH can be used to change the representation (the set of supported properties) of an entity
What is the Notification Design Pattern?
A) A Publish Subscribe Pattern where a callback is specified when executing a REST operation
B) A Publish Subscribe Pattern where clients can pull events
C) A Publish Subscribe Pattern where a Hub is used to register a client subscription for receiving events
D) A Publish Subscribe Pattern supporting only one kind of event
C) A Publish Subscribe Pattern where a Hub is used to register a client subscription for receiving events
Does JSON support generalization or inheritance?
No
Can API SID JSON Resources be extended?
Yes, The REST API Design Patterns support the “@type” property
Which of the following is NOT addressed by the SID to API Data model mapping patterns?
A) Flattening Inheritance Hierarchy
B) SID Relationships and Links
C) JSON Resource Model and SID Entity Types
D) Decoration Pattern for Complex Inheritance Hierarchies
D) Decoration Pattern for Complex Inheritance Hierarchies
Which of the following statements is NOT correct?
A) SID is static, it focuses on the data
B) SID is an information model not a data model
C) SID out-of-the-box is typically implemented as is for SOAP APIs
D) TMF APIs uses SID as the basis for its data model
C) SID out-of-the-box is typically implemented as is for SOAP APIs
When using Entity collapsing which of the following statements is correct?
A) SID Entity is modelled as a REST Resource with all the inherited attributes embedded into the JSON representation
B) SID Entity is modelled as a REST Resource with some of the inherited attributes embedded into the JSON representation
C) SID Entity is modelled as a REST Resource with all of the inherited relationships embedded as dependent entities into the JSON representation
D) SID Entity is modelled as a REST Resource with some of the inherited relationships embedded as dependent entities into the JSON representation
B) SID Entity is modeled as a REST Resource with SOME of the inherited ATTRIBUTES embedded into the JSON representation
How is SID inheritance supported by the TMF Open APIs?
A) TMF Open APIs use the most derived SID classes for Resource representations
B) TMF Open APIs are always relative to the root class in SID
C) TMF Open APIs use an Entity composition model for representing SID generalizations
D) TMF Open APIs use the most derived SID classes for Resource representations and include all the properties and the relationships of the collapsed classes
A) TMF Open APIs use the most derived SID classes for Resource representations
What are the choices of link data model when mapping SID relationships to a REST based representational model?
A) Hyperlinks
B) Link Headers
C) Dependent Entities
D) All of the above
D) All of the above
Which of the following statements is correct?
When mapping SID relationships to the API Data Model:
A) Always embed the related object properties within the entity representation
B) Always define resources for the related entities in the API resource model and use href to the related resources
C) Always use href to related resources if they actually exist as resources
D) Always add properties to the href for filtering and quick retrieval purpose
C) Always use href to related resources if they actually exist as resources
What is API Certification?
Process by which an implementation is confirmed to support the standard definition of an API
What are the 3 Main Artifacts in the API Conformance Activity?
- API Conformance Profile Document”
- CTK Script
- Cloud based Reference Implementation of the API
What is an API Conformance Profile document?
It describes what Mandatory attributes and Operations are tested
What is a CTK Script?
It is provided by TMF to be executed against certified implementation of the API
What is the cloud based Reference Implementation of an API?
It is provided by TMF as an implementation test bed
Is an example of a certified API
What is tested by a CTK?
1- Implementation of all the mandatory operations
2- Support of the core data model of the API presence and proper constructs for entities in the data model
3- Support of mandatory filters and attribute selection constructs as defined in the API specification
4- Support of all mandatory notifications
5- Support of the core event data model of the API
6- Mandatory relationships between entities (resources) defined and managed by the API are present and operation (href leads to real resources within the API)
7- Mandatory relationships between entities (resources) not defined and managed by the API are present
Which of the following elements are part of the Open API Developer Ecosystem Sandbox and Testing environment?
A) Reference Implementations
B) Conformance Test Kits
C) POSTMAN and Swagger
D) All of the above
D) All of the above
Name 2 elements that are tested via the CTK?
A) Implementation of all the operations and all notifications
B) Implementation of all the API mandatory operations and support for the core event data model
C) Implementation of all the API mandatory operations and of all relationships
D) Implementation of all the mandatory operations and all filter and attribute selection constructs defined in the API specification
B) Implementation of all the API mandatory operations and support for the core event data model
Which of the following statements is NOT correct?
A) API Certification is a process by which an implementation is confirmed to support the standard definition of an API
B) TM Forum provides the tools required to certify implementations against API definitions
C) API Certification is only against mandatory features of an API
D) API Certification is about testing extensions to the APIs
D) API Certification is about testing extensions to the APIs
Can an API be certified if it fails one CTK test?
A) Yes, if the failed test was about an optional feature
B) Yes, if the failed test is about the presence of a relationship
C) Yes, if the failed test is about an extension to the API
D) No
D) No
Which of the following statements is correct?
A) TM Forum provides the tools required to certify implementations against API definitions
B) Vendors can claim certification as long as they post a conformance statement on their product site
C) APIs must be certified by the TM Forum (same as for SID or eTOM Certification)
D) A SID certified vendor is automatically API certified
A) TM Forum provides the tools required to certify implementations against API definitions
What is the TM Forum Open API Sandbox?
A) A cloud-based implementation of all the TM Forum Open APIs
B) An environment where vendor APIs are deployed and tested
C) An environment providing a mock-up implementation of all the APIs
D) A downloadable environment running on Node.js
A) A cloud-based implementation of all the TM Forum Open APIs
What is MicroService Architecture?
A design pattern to build a software system composed of multiple reusable services that interacts with each other to provide a business capability.
What are the 3 key characteristics of a Micro Service?
- Isolated
- Autonomous
- Context-bound
What does the isolation principle enable (in regards to Micro Services)?
- Design, Build, Test and Release Isolation
- Database isolation
- Failure isolation
Provide more info on Data Encapsulation (in regards to Micro Services)?
- Micro Services encapsulate the data (or state) and behavior as a single unit
- Persistent data for each service must be private
- Consumers can access data only through its published interfaces or API
What is the distributed Monolith Anti Pattern
Where a bunch of so called independent services shares a common database for persistent state
Which of the following statements is correct?
In Micro Service Architecture a consumer can
A) Choose to accept or reject the promise offered by a Micro Service Provider
B) Direct a Micro Service to behave in a particular way via policies
C) Choose between different APIs
D) None of the above
A) Choose to accept or reject the promise offered by a Micro Service Provider
What does the Isolation principle ensure?
A) Continuous delivery
B) Binding to a single business context
C) Consumers cannot impose obligation
D) Micro Service behaviour by publishing its interface (API)
A) Continuous delivery
Which of the following statements is NOT correct?
Micro Services typically implement Data Encapsulation where:
A) Micro Service encapsulates the data (or state) and behaviour as a single unit
B) Persistent data for each service can be shared
C) Consumer can access data only through its published interfaces or API
D) None of the above
B) Persistent data for each service can be shared
What is a Micro Service Architecture?
A) Micro Service Architecture is a design pattern to build software system composed of multiple reusable services that interacts with each other to provide a business capability
B) A Micro Service Architecture is a design pattern to build software system composed of multiple reusable services that interacts with each other to provide a business capability normally layered on top of monolithic applications
C) A Micro Service Architecture is the same as SOA architecture but for REST
D) All of the above
A) Micro Service Architecture is a design pattern to build software system composed of multiple reusable services that interacts with each other to provide a business capability.
Why do Open APIs provide a natural point for the creation of Micro Services?
A) Open APIs are based on the Integration Framework SOA concepts
B) Open APIs are REST based
C) Open APIs are Business Framework based
D) Open API are domain-driven and well encapsulated
D) Open API are domain-driven and well encapsulated
Which of the following statements is NOT correct?
Micro Services are characterized by the fact that they are:
A) Isolated
B) Autonomous
C) Event Driven
D) Context Bound
C) Event Driven
What are the 5 industry-standard principles that guide the construction of good APIs?
- Abstraction
- Loose-coupling
- Reusability
- Discoverability
- Developer-friendly
What is Level 0 in the API Map?
The standard Frameworx business domains
What is Level 1 in the API Map?
The main TM Forum APIs, typically the primary resource, and aligned to TMF Information Framework ABEs
What is Level 2 in the API Map?
The component resources exposed by the API.
It shows the API which inherits from the current TM Forum API or extends on the base of TM Forum API
If you need to query an entity, which Uniform API Operation would you use?
A) GET Resource B) POST Resource C) PATCH Resource D) PUT Resource E) DELETE Resource F) POST on TASK Resource
A) GET Resource
If you need to create an entity, which Uniform API Operation would you use?
A) GET Resource B) POST Resource C) PATCH Resource D) PUT Resource E) DELETE Resource F) POST on TASK Resource
B) POST Resource
If you need to do a partial update on an entity, which Uniform API Operation would you use?
A) GET Resource B) POST Resource C) PATCH Resource D) PUT Resource E) DELETE Resource F) POST on TASK Resource
C) PATCH Resource
If you need to do a complete update on an entity, which Uniform API Operation would you use?
A) GET Resource B) POST Resource C) PATCH Resource D) PUT Resource E) DELETE Resource F) POST on TASK Resource
D) PUT Resource
If you need to remove an entity, which Uniform API Operation would you use?
A) GET Resource B) POST Resource C) PATCH Resource D) PUT Resource E) DELETE Resource F) POST on TASK Resource
E) DELETE Resource
If you need to execute an action, which Uniform API Operation would you use?
A) GET Resource B) POST Resource C) PATCH Resource D) PUT Resource E) DELETE Resource F) POST on TASK Resource
F) POST on TASK Resource
What are the 4 TM Forum Open APIs Benefits?
- Business agility and interoperability
- Partnering for new services
- Simplification of the IT estate
- Reduced time to market
What is the set of patterns called for the mapping between the SID entity types and the corresponding TMF REST API Resource model ?
SID JSON Mapping Patterns
When there is no resource defined for the associated entity in the API Ecosystem, which type of link model should be used?
A) Hyperlinks
B) Link Headers
C) Dependent Entities
D) All of the above
C) Dependent Entities
What is the preferred link model to be used when the related object is treated as a resource?
A) Hyperlinks
B) Link Headers
C) Dependent Entities
D) All of the above
A) Hyperlinks