api management @ haufe
TRANSCRIPT
![Page 1: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/1.jpg)
APIManagement@Haufe
MarcoSeifried(@marcoseifried)
MartinDanielsson(@donmartin76)
dev.haufe-lexware.com
github.com/Haufe-Lexware
@HaufeDev
-Lexware
![Page 2: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/2.jpg)
1 Intro– APIManagementWhywouldyouneedandwantAPIManagement?
![Page 3: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/3.jpg)
APIs@Haufe
Onboarding:Firstimpressioncounts!• Simplicity• Self-service• Lowbarrier to use
Ways to achieve this:• Accessto something valuable• Focusonthe service - business value
![Page 4: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/4.jpg)
HaufeStrategy - Architecture Principles
Businessvalue over technicalstrategy
Strategicgoals over project-specificbenefits
Composability over silos
Sharedservices over specific-purposeimplementations
Evolutionaryrefinement over pursuitofinitialperfection
Designforobsoleteness over buildingforeternity
Goodenough over bestofbreed
Declarativeprocesses over implicitknowledge
![Page 5: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/5.jpg)
Designof APIs
APIas aProduct…
Hyper-media
Elements
APIManage-ment
Outside-In
Approach…
APIStyleguidehttps://github.com/Haufe-Lexware/api-style-guide
![Page 6: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/6.jpg)
APIManagement– What’sthat?
APImanagementistheprocessofpublishing,promotingandoverseeingapplicationprogramminginterfaces
(APIs)inasecure,scalableenvironment.
techtarget.com
StripoffthebusinessfeaturesofyourAPI– APIManagementistherest.StuffyouwoulddoforallAPIs
independentofwhattheydo– logging,monitoring,access,documentation,…MarcoSeifriedJ
![Page 7: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/7.jpg)
APIManagementKeyComponents
API
PortalAPIOwners,Developers,Admin
DeveloperSelf-Service
EndUser
ServiceEndpoints
http://www.apiacademy.co/resources/api-management-101-api-management-basics/
![Page 8: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/8.jpg)
Whatdoesitdo?
Provide discoverabilityandself-service AccesstoAPIs fordeveloperseasilyand
automatically
Monitor trafficto provide UsageInsights forindividualappsandAPIs.Who isusingwhathowmuch?
ProtecttheAPIfrommisusebyproviding Security e.g. bywrapping itinsecurity
proceduresand policies.
Protecttheruntimewith Traffic Control e.g.,bythrottling formobileapps
UseAPIManagementto Decouple theinsidefromtheoutside,keeping interfaces(APIs) stable
![Page 9: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/9.jpg)
UseCasesandScenarios
Mobile
Internal
Public
Don’tsearchforthe
“Onetorulethemall”
Instead,gofor
“Goodenough”
Andnottoforget
“Evolutionaryrefinement”Partner
![Page 10: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/10.jpg)
Our(API)Approach@Haufe
Don’tcentralize
GroupAPIsbyfunctionality
Letteamsworkindependently, aslongas
theyfollowourAPIStyleguide
ChooseAPIManagementbyusecase,notbydogma
Automate(Build,Test,Deploy,…)
![Page 11: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/11.jpg)
2 APIManagementComponentsIfearit’snotonlyGatewayandPortal…
![Page 12: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/12.jpg)
APImSolution
DeveloperPortal
APIG
atew
ay
Admin
Logs
BackendService
Analytics
Audit
Consumer
Config
PortalIdP
APIIdP
![Page 13: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/13.jpg)
3 SolutionsWhoprovidesAPIm solutions?
![Page 14: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/14.jpg)
MarketContenders
![Page 15: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/15.jpg)
![Page 16: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/16.jpg)
![Page 17: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/17.jpg)
AzureAPIManagement
DeveloperPortal
APIG
atew
ay
Admin
Logs
BackendService
Analytics
Audit
Consumer
Config
PortalIdP
APIIdP
Anythingpluggable;e.g.EventHubs
Nosupport OOTB,butAzureADhasfunctionality
![Page 18: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/18.jpg)
100%SaaSsolution
IntegratedintoMicrosoftAzure
Full-featuredDeveloperPortal
RichPolicy-drivenAPIGateway
99.x%SLA
Pricepoint:Atleast550€/mo.
Scalesondemand(withprice)
RESTAPI
Notavailableon-prem
ClosedSource– notfreelycustomizable
Quitehighpricepoint
Insomecases:“Lastmile”missing
![Page 19: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/19.jpg)
![Page 20: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/20.jpg)
MashapeKong
DeveloperPortal
APIG
atew
ay
Admin
Logs(Plugin)
BackendService
Analytics
Audit
Consumer
Config
PortalIdP
APIIdP(Plugin)
3rd PartyOfferings,e.g.kong-dashboard
3rd PartyOfferings,Mashape’sgelato.io
Mashape’sGalileo
DependsonAdminUI
![Page 21: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/21.jpg)
OpenSourcesolution
Builtaroundnginx/Lua
Deployablewhereveryouwant
Fullydockerizable
Scalable,feature-richGateway
Powerfulplugin/extensionmodel
Suitableforinternalusemostly
CompleteRESTAPI
Nodeveloperportaloutofthebox
Actually,thereis:gelato.io (closedsource/commercial)
Only3rdpartyAdminUIs(ofvaryingquality)
Requiresnetworkingknow-howtosetup
Cassandracurrentlyonlyconfigbackendchoice(butPostgreSQLupcoming)
![Page 22: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/22.jpg)
• MostlysuitableforbackendservicesonAzure• Noon-premdeployment(onlySaaS)• GoodDeveloperExperience(DX)• Easytostartwith• Notfreelycustomizable
• Focusonsecuringbackend• FlexibleDeployment(butnoSaaS)• ForusecaseswheretheDXisnotimportant*• DevOps easier,steeperlearningcurve• Doesbasics,everythingelseisaddon
• Quitelargesoftwarepackagesinbothcases
• Takesplanningandsomeefforttosetup
• Withgreatfunctionalitycomeslargeish footprints
![Page 23: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/23.jpg)
4 AzureAPIm Demo
![Page 24: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/24.jpg)
AzureAPImDeveloperPortal
![Page 25: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/25.jpg)
![Page 26: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/26.jpg)
![Page 27: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/27.jpg)
![Page 28: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/28.jpg)
![Page 29: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/29.jpg)
![Page 30: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/30.jpg)
AzureAPImPublisherPortal
![Page 31: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/31.jpg)
![Page 32: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/32.jpg)
![Page 33: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/33.jpg)
![Page 34: API Management @ Haufe](https://reader034.vdocuments.us/reader034/viewer/2022042605/5870a3ac1a28abcb078b5465/html5/thumbnails/34.jpg)
Multumesc