api webinar

24
Run smoothly. Change quickly. Achieve more. Cloud-based enterprise work management software Connected PSA – Tenrox’s Web API Architecture Webinar 16 October, 2015

Upload: patrick-isac

Post on 28-Jan-2016

218 views

Category:

Documents


0 download

DESCRIPTION

Tenrox - API Webinar

TRANSCRIPT

Page 1: API Webinar

Run smoothly. Change quickly. Achieve more.Cloud-based enterprise work management software

Connected PSA – Tenrox’sWeb API Architecture

Webinar16 October, 2015

Page 2: API Webinar

2

Today’s Speakers

Alex D’AquilaTenrox Product Owner

Rafat HilalSolution Architect

Jean-François LavigneSenior Developer

Page 3: API Webinar

3

Housekeeping

To submit a question:

Type in your question here

Click Send

Page 4: API Webinar

AGENDA1. Introduction2. Architecture3. Demo & Use Case Scenarios4. Release Plan5. Discussion / Q&A

Page 5: API Webinar

5

API Initiative Goals & Objectives

• Replace existing SOAP API with a RESTful APIs• Expand on the existing API offering• Allow for development of new integrations to 3rd party

vendors• Allow for integration with IPaaS solutions• Allow for development of tools & utilities by customers• Integrate application security and permissions in web

service requests• Provide documentation and help files to assist the

development community

Page 6: API Webinar

6

Three-Tier Architecture

Data Access Layer (Entities)

Tenrox Database

Business Layer

Tenrox Business Logic

Application Layer

Tenrox Application REST API

• Use either the Tenrox UI or REST web services to access the Tenrox business logic

• Consolidated business layer creates the same results regardless of the access mechanism

• Read and write to your dedicated database built on MS Entity Framework and SQL Server technologies

Page 7: API Webinar

7

Technology Framework

• Data Access Layer leverages Entity Framework 6.0 • Rest Services based on Web API Framework• API versioning to support for backward compatiblity• Support for JSON and XML formats• Integrated Unit Testing in business layer• SOAP-UI used to automate API testing• Comprehensive Exception Handling

Page 8: API Webinar

8

Security & Data Permissions

• API access security prevents unauthorized users from making API calls

• Token based session authentication. Each request must have a valid token

• Data-level authorization based on Read/Write/Delete actions defined in user security profile

• Data Records are filtered based on scoping• Audit Trail events generated based on API actions

Page 9: API Webinar

9

Future Enhancements

• Enhanced support for User Defined fields• Provide summary lists of key objects• Provide multiple level of detailed data object data

Page 10: API Webinar

1 0

Supported Actions

• GETo /Id: Retrieves an entry by unique ido Filter can be used on any combination of properties to filter results ro Top and Skip can be used to return specific records

• POST: Create a new instanceo Can provide only required propertieso On success it returns the full object

• PUT: Update an entityo Must provide all properties

• PATCH: Update an entityo Can provide only the properties affected

• DELETE: Deletes an entity

Page 11: API Webinar

1 1

Return Codes

• Success :o 200 – OK: Get, Put and Patch o 201 – Created: POSTo 204 – No Content : Delete

• Error:o 400 – Bad request. Sending bad information.o 401 – User not authenticated or invalid tokeno 403 – Access Denied. User does not have permissiono 404 – Not Found. Requested entity does not exist

Page 12: API Webinar

1 2

Data Validation and Exception Handling

• All properties are validated at once before commito Forget to specify a required fieldo Invalid property value or formato Invalid date range such as the End Date Before the Start Date

• All Business rule validations are incorporated into business layer

Page 13: API Webinar

DEMO AND USE-CASES

Page 14: API Webinar

RELEASE STRATEGY

Page 15: API Webinar

1 5

Release Strategy

• Development Plano Prioritized list of objects and actionso Agile / SCRUM Framework – Work done in monthly sprintso Each sprint will focus on a defined set of featureso End of sprint demos

• Rollout strategyo Independent from product release (Post-R2)o Phased rollout across the 2015 R2 release & feature packs

Page 16: API Webinar

1 6

Roadmap

• Initial release of REST API to clients in 2015 R2

• Rollout of core services to major modules

• Rollout of Developer Help Guide on Tenrox Community

• Incremental development of new APIs to be added each service pack / future release

Page 17: API Webinar

1 7

List of Available Objects – 2015 R2

Object Query Edit Create Delete OtherGeneralLogin / Logout XOBSUser X X X XGroup X X X XSecurity Profile X

Page 18: API Webinar

1 8

List of Available Objects – 2015 R2

Object Query Edit Create Delete OtherWBSClient X X X XClient Contact X X X XPortfolio X X X XProject X X X X State ChangePhase X X X XWork Type X X X XTask X X X XAssignment X X X XProject Team X X X XComponent X X X X

Page 19: API Webinar

1 9

List of Available Objects – 2015 R2

Object Query Edit Create Delete OtherTimesheetWorking Time Entry X X X XNon-Working Time Entry X X X XAdjustment Entry X X X XTimesheet X Timesheet History,

State ChangeExpenseExpense Report X X X X State ChangeExpense Entry X X X XExpense Item X X X X

Page 20: API Webinar

2 0

List of Available Objects – 2015 R2

Object Query Edit Create Delete OtherResource ManagementRole X X X XRole Members X Associate UsersUser Roles X Associate /

Unassociate RolesBooking X X X XRole Replacement X Replace

Page 21: API Webinar

2 1

List of Available Objects – 2015 R2

Object Query Edit Create Delete OtherFinancialCost Rules X X X X AssociateCost Rates X X X XBilling Rules X X X X AssociateBilling Rates X X X XCharge Item X X X XCharge Entry X X X X ApproveInvoice X X X X State Change

Page 22: API Webinar

2 2

Object Backlog

• Additional OBS Objects (Site, Resource Type, Business Unit, etc)

• Additional Resource Management Objects (Calendars, Skills)

• Leave Time Banks• Additional Financial Objects (Currencies, Currency

Exchange, Tax Groups, Product Entry)• AR/AP transaction details• Upland Project Planner

Page 23: API Webinar

QUESTIONS

Page 24: API Webinar

THANK YOU!