SlideShare a Scribd company logo
HMRC Developer Hub:
an Experience Report
What have we learned?
Tony Heap - Business Analyst
Mick Schonhut - Technical Writer
HMRC API Platform team
HMRC Digital
HMRC Developer Hub
● Helps developers integrate their software with HMRC APIs
eg. software to submit tax returns or customs declarations
● In beta for 2.5 years - went live in Sept 2018
● 52 APIs so far and still growing (many are private or in private trial)
● 1.1 to 1.2 million API calls per day with 99.99% availability
● Grown steadily to 20+ teams in HMRC producing APIs
● Over 200+ external API consumers, including:
HMRC Digital
Demo
https://developer.service.hmrc.gov.uk/api-documentation
● Developer Hub homepage
○ General documentation examples:
■ Using the Developer Hub
■ Authorisation
○ API documentation list
○ API documentation example:
■ Individual Employments
● Intro sections
● Endpoint details
HMRC Digital
How we write documentation
● Writing style - finding a common (ubiquitous) language
○ Eg “company benefits” or “employment benefits”?
○ GOV.UK, HMRC and Developer Hub style guides
● Content
○ Pairing is really important - a Subject Matter Expert (Tony) and writer
(Mick)
○ Ideally done in real time - can be done asynchronously with
collaboration tools (Google Docs) but less efficient
HMRC Digital
Our experience with RESTful API
Modelling Language (RAML)
● Chose RAML over Swagger (now OpenAPI)
○ Betamax versus VHS :)
● We use RAML v1.0 and JSON Schema
● API producer teams create a RAML file to define each version of their API
● Convert RAML to HTML - a single API documentation page with standard
sections and API endpoint details
● Gives consistency of API documentation across different teams - but are
still challenges from different API content needs
● Some limitations in content types rendered eg diagrams
HMRC Digital
Feedback and iteration
● How we get feedback
○ 30+ cycles of user research testing in beta
○ Sign out survey
○ Beta banner feedback (until recently)
○ Feedback tool - heatmaps, pop up polls and a survey
● How we iterate the documentation
○ Compile individual feedback tickets into specific page “quick wins”
○ Share API doc feedback with API producer teams
HMRC Digital
End to end documentation needs -
beyond the API
Development audiences including entrepreneurs, product owners, business
analysts, architects, lead developers have extra content needs:
● Timelines for staged API development and rollouts (“Roadmap”)
● Usage scenarios and relationships between related APIs and endpoints
● End to end user journey contextual information - about sole traders, limited
companies, non-profits, agents, agencies, etc.
HMRC Digital
Prototypes:
● API documentation groupings
https://hmrc-devhub-cycle-31.herokuapp.com/api-docs-migrate/api-docs-f
ilter
● VAT Roadmap (GDS tech doc template)
https://hmrc-vat-roadmap-cycle-33.herokuapp.com/#vat-mtd-roadmap
● VAT End-to-End Service Guide (GDS tech doc template)
https://hmrc-vat-e-to-e-wd-cycle-33.herokuapp.com/#vat-mtd-end-to-end-
service-guide
HMRC Digital
Our approach to API development
● Design
● Delivery
● Governance
● HMRC’s API Service Process and Standard
https://confluence.tools.tax.service.gov.uk/display/DP/API+Service+Process
● We've been helping Government Digital Service (GDS) to draft cross
government standards for API docs
https://www.gov.uk/guidance/gds-api-technical-and-data-standards
HMRC Digital
What have we learned?
HMRC Digital
Feedback is essential
● User research is just as important as for public facing services - developers
come in all shapes and sizes!
● Sign out surveys and beta banner surveys - just get ignored
● In-page polls are powerful - but can irritate users
● Analytics (page popularity) have helped a bit
● Heatmaps have helped a bit
● Feedback from API producers - from API hackathons - very useful
● Produce our own APIs to “eat our own dog food” - and run our own
hackathons - very useful
HMRC Digital
Documentation quality really matters
● Getting quality across API documentation is hard
● API producer teams don’t normally hire technical writers
● API developers often left struggling to produce documentation
● API developers tend to prioritise API build over docs (it’s an Agile value!)
● API producer teams sometimes don’t even do user research
- “We’re an API - we don’t do user research”
● Good quality documentation really makes a difference to API consumers (and
poor quality documentation is really a problem)
HMRC Digital
Developers come in all shapes and
sizes
● API platforms are hard to explain simply (e.g. OAuth 2.0 standard)
● Not all developers are as experienced as you might think
● Everyone wants examples and code snippets - in their favourite programming
languages
● Some people are very visual thinkers - can't or won't read the text between
the code snippets
● Complex APIs need a lot of contextual documentation - about the end-to-end
user journey
HMRC Digital
Ease and speed of doc updates matters
● We need a lightweight CMS so we can make changes more quickly & easily -
“Docs as code” model
− We're building one based on GitHub and a simple markdown processor
HMRC Digital
Headlines - what we have learned
● Feedback is essential - just as much as any public facing service
● Documentation quality really matters to developers
● Developers come in all shapes and sizes
● Ease and speed of documentation updates is really important
HMRC Digital
Questions?
For Tony (the BA) or Mick (the writer) or the both of us…
Email: tony.heap@digital.hmrc.gov.uk
mick.schonhut@digital.hmrc.gov.uk
Read our latest blog post at:
https://hmrcdigital.blog.gov.uk/2018/10/18/the-developer-hub-is-live/

More Related Content

What's hot

apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botifyapidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botifyapidays
 
Bluebeam Q - Bluebeam eXtreme Conference 2014
Bluebeam Q - Bluebeam eXtreme Conference 2014Bluebeam Q - Bluebeam eXtreme Conference 2014
Bluebeam Q - Bluebeam eXtreme Conference 2014bluebeamslides
 
ArchiOffice Edition Comparison 2016
ArchiOffice Edition Comparison 2016ArchiOffice Edition Comparison 2016
ArchiOffice Edition Comparison 2016BQE Software Inc
 
The current state of SAP Integration, SAPPHIRENOW 2018
The current state of SAP Integration, SAPPHIRENOW 2018The current state of SAP Integration, SAPPHIRENOW 2018
The current state of SAP Integration, SAPPHIRENOW 2018Daniel Graversen
 
From EAI to Serverless
From EAI to ServerlessFrom EAI to Serverless
From EAI to ServerlessSven Bernhardt
 
Our trading infrastructure for next generation trading with quant and automat...
Our trading infrastructure for next generation trading with quant and automat...Our trading infrastructure for next generation trading with quant and automat...
Our trading infrastructure for next generation trading with quant and automat...Bryan Downing
 
2014 12-16 biwug - cgi SharePoint Factory Framework
2014 12-16 biwug - cgi SharePoint Factory Framework2014 12-16 biwug - cgi SharePoint Factory Framework
2014 12-16 biwug - cgi SharePoint Factory FrameworkBIWUG
 
APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...
APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...
APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...apidays
 
[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...
[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...
[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...WSO2
 
Lambton_Student_Transcript (1)
Lambton_Student_Transcript (1)Lambton_Student_Transcript (1)
Lambton_Student_Transcript (1)Neha .
 
[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise
[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise
[WSO2 API Day Toronto 2019] Cloud-native Integration for the EnterpriseWSO2
 
Evolution of API-driven architectures
Evolution of API-driven architecturesEvolution of API-driven architectures
Evolution of API-driven architecturesSven Bernhardt
 
[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of Swagger
[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of Swagger[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of Swagger
[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of SwaggerWSO2
 
CQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSICQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSIIgor Miniailo
 

What's hot (15)

apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botifyapidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
apidays LIVE Paris 2021 - Building an analytics API by David Wobrock, Botify
 
Bluebeam Q - Bluebeam eXtreme Conference 2014
Bluebeam Q - Bluebeam eXtreme Conference 2014Bluebeam Q - Bluebeam eXtreme Conference 2014
Bluebeam Q - Bluebeam eXtreme Conference 2014
 
ArchiOffice Edition Comparison 2016
ArchiOffice Edition Comparison 2016ArchiOffice Edition Comparison 2016
ArchiOffice Edition Comparison 2016
 
The current state of SAP Integration, SAPPHIRENOW 2018
The current state of SAP Integration, SAPPHIRENOW 2018The current state of SAP Integration, SAPPHIRENOW 2018
The current state of SAP Integration, SAPPHIRENOW 2018
 
From EAI to Serverless
From EAI to ServerlessFrom EAI to Serverless
From EAI to Serverless
 
Our trading infrastructure for next generation trading with quant and automat...
Our trading infrastructure for next generation trading with quant and automat...Our trading infrastructure for next generation trading with quant and automat...
Our trading infrastructure for next generation trading with quant and automat...
 
2014 12-16 biwug - cgi SharePoint Factory Framework
2014 12-16 biwug - cgi SharePoint Factory Framework2014 12-16 biwug - cgi SharePoint Factory Framework
2014 12-16 biwug - cgi SharePoint Factory Framework
 
APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...
APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...
APIdays Paris 2019 - How Carrefour is leveraging API to activate new business...
 
[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...
[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...
[WSO2 Summit EMEA 2020] Enabling Data-Driven Scania Through Integration Trans...
 
Lambton_Student_Transcript (1)
Lambton_Student_Transcript (1)Lambton_Student_Transcript (1)
Lambton_Student_Transcript (1)
 
[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise
[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise
[WSO2 API Day Toronto 2019] Cloud-native Integration for the Enterprise
 
Evolution of API-driven architectures
Evolution of API-driven architecturesEvolution of API-driven architectures
Evolution of API-driven architectures
 
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
Evolve18 | Carmen Sutter & Sarah Xu | Accelerate your Digital Experience with...
 
[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of Swagger
[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of Swagger[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of Swagger
[WSO2Con EU 2018] OpenAPI Specification 3 - The Evolution of Swagger
 
CQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSICQRS and Event-Sourcing in Magento2 by examples of MSI
CQRS and Event-Sourcing in Magento2 by examples of MSI
 

Similar to HMRC Developer Hub – an Experience Report

Api documentation using slate, markdown
Api documentation using slate, markdownApi documentation using slate, markdown
Api documentation using slate, markdownSebin Benjamin
 
apidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovix
apidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovixapidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovix
apidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovixapidays
 
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...WSO2
 
apidays LIVE Paris 2021 - Scale up your business with API integration by Math...
apidays LIVE Paris 2021 - Scale up your business with API integration by Math...apidays LIVE Paris 2021 - Scale up your business with API integration by Math...
apidays LIVE Paris 2021 - Scale up your business with API integration by Math...apidays
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoWSO2
 
[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIs
[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIs[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIs
[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIsWSO2
 
Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...
Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...
Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...TIBCO Jaspersoft
 
Journey to APIs and Microservices: Best Practices
Journey to APIs and Microservices: Best PracticesJourney to APIs and Microservices: Best Practices
Journey to APIs and Microservices: Best PracticesDeepak Nadig
 
[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source Technologies[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source TechnologiesWSO2
 
MuleSoft Meetup Valletta 1.0
MuleSoft Meetup Valletta  1.0MuleSoft Meetup Valletta  1.0
MuleSoft Meetup Valletta 1.0Anastasiia Linnas
 
How to Become a Technical Product Manager by Goop.com Tech PM
How to Become a Technical Product Manager by Goop.com Tech PMHow to Become a Technical Product Manager by Goop.com Tech PM
How to Become a Technical Product Manager by Goop.com Tech PMProduct School
 
Top 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationTop 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationOCTO Technology
 
INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...
INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...
INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...apidays
 
API Trends & Use Cases
API Trends & Use CasesAPI Trends & Use Cases
API Trends & Use CasesSmartWave
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
BitCraft 2017 general presentation
BitCraft 2017 general presentationBitCraft 2017 general presentation
BitCraft 2017 general presentationMichal Wasilewski
 

Similar to HMRC Developer Hub – an Experience Report (20)

Resume
ResumeResume
Resume
 
Api documentation using slate, markdown
Api documentation using slate, markdownApi documentation using slate, markdown
Api documentation using slate, markdown
 
apidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovix
apidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovixapidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovix
apidays LIVE Paris 2021 - Who writes the Docs? by Laura Vass, Pronovix
 
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
[WSO2Con EU 2018] Implementing a Zero Downtime WSO2 API Manager with an API C...
 
apidays LIVE Paris 2021 - Scale up your business with API integration by Math...
apidays LIVE Paris 2021 - Scale up your business with API integration by Math...apidays LIVE Paris 2021 - Scale up your business with API integration by Math...
apidays LIVE Paris 2021 - Scale up your business with API integration by Math...
 
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
WSO2CON 2024 - WSO2's Digital Transformation Journey with Choreo: A Platforml...
 
Delivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing ChoreoDelivering New Digital Experiences Fast - Introducing Choreo
Delivering New Digital Experiences Fast - Introducing Choreo
 
Enabling Ad Hoc Reporting
Enabling Ad Hoc ReportingEnabling Ad Hoc Reporting
Enabling Ad Hoc Reporting
 
[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIs
[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIs[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIs
[WSO2 Integration Summit Bern 2019] Transforming Your Business through APIs
 
Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...
Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...
Fundamentals of Ad Hoc Reporting: Create a beautiful report-building oasis fo...
 
Journey to APIs and Microservices: Best Practices
Journey to APIs and Microservices: Best PracticesJourney to APIs and Microservices: Best Practices
Journey to APIs and Microservices: Best Practices
 
[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source Technologies[Workshop] Managing the API lifecycle with Open Source Technologies
[Workshop] Managing the API lifecycle with Open Source Technologies
 
MuleSoft Meetup Valletta 1.0
MuleSoft Meetup Valletta  1.0MuleSoft Meetup Valletta  1.0
MuleSoft Meetup Valletta 1.0
 
How to Become a Technical Product Manager by Goop.com Tech PM
How to Become a Technical Product Manager by Goop.com Tech PMHow to Become a Technical Product Manager by Goop.com Tech PM
How to Become a Technical Product Manager by Goop.com Tech PM
 
Top 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementationTop 7 wrong common beliefs about Enterprise API implementation
Top 7 wrong common beliefs about Enterprise API implementation
 
Octo API-days 2015
Octo API-days 2015Octo API-days 2015
Octo API-days 2015
 
INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...
INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...
INTERFACE by apidays - API Success: Running a Successful API Program by Nelso...
 
API Trends & Use Cases
API Trends & Use CasesAPI Trends & Use Cases
API Trends & Use Cases
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
BitCraft 2017 general presentation
BitCraft 2017 general presentationBitCraft 2017 general presentation
BitCraft 2017 general presentation
 

More from Pronovix

By the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too lateBy the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too latePronovix
 
Optimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and FeedbackOptimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and FeedbackPronovix
 
Success metrics when launching your first developer portal
Success metrics when launching your first developer portalSuccess metrics when launching your first developer portal
Success metrics when launching your first developer portalPronovix
 
Documentation, APIs & AI
Documentation, APIs & AIDocumentation, APIs & AI
Documentation, APIs & AIPronovix
 
Making sense of analytics for documentation pages
Making sense of analytics for documentation pagesMaking sense of analytics for documentation pages
Making sense of analytics for documentation pagesPronovix
 
Feedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiencesFeedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiencesPronovix
 
GraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing DocsGraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing DocsPronovix
 
API Documentation For Web3
API Documentation For Web3API Documentation For Web3
API Documentation For Web3Pronovix
 
Why your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API designWhy your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API designPronovix
 
unREST among the docs
unREST among the docsunREST among the docs
unREST among the docsPronovix
 
Developing a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIsDeveloping a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIsPronovix
 
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyoneAnnotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyonePronovix
 
What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?Pronovix
 
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and ConfigurationsInclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and ConfigurationsPronovix
 
Creating API documentation for international communities
Creating API documentation for international communitiesCreating API documentation for international communities
Creating API documentation for international communitiesPronovix
 
One Developer Portal to Document Them All
One Developer Portal to Document Them AllOne Developer Portal to Document Them All
One Developer Portal to Document Them AllPronovix
 
Docs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation ExperienceDocs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation ExperiencePronovix
 
Developer journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your productDeveloper journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your productPronovix
 
Complexity is not complicatedness
Complexity is not complicatednessComplexity is not complicatedness
Complexity is not complicatednessPronovix
 
How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...Pronovix
 

More from Pronovix (20)

By the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too lateBy the time they're reading the docs, it's already too late
By the time they're reading the docs, it's already too late
 
Optimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and FeedbackOptimizing Dev Portals with Analytics and Feedback
Optimizing Dev Portals with Analytics and Feedback
 
Success metrics when launching your first developer portal
Success metrics when launching your first developer portalSuccess metrics when launching your first developer portal
Success metrics when launching your first developer portal
 
Documentation, APIs & AI
Documentation, APIs & AIDocumentation, APIs & AI
Documentation, APIs & AI
 
Making sense of analytics for documentation pages
Making sense of analytics for documentation pagesMaking sense of analytics for documentation pages
Making sense of analytics for documentation pages
 
Feedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiencesFeedback cycles and their role in improving overall developer experiences
Feedback cycles and their role in improving overall developer experiences
 
GraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing DocsGraphQL Isn't An Excuse To Stop Writing Docs
GraphQL Isn't An Excuse To Stop Writing Docs
 
API Documentation For Web3
API Documentation For Web3API Documentation For Web3
API Documentation For Web3
 
Why your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API designWhy your API doesn’t solve my problem: A use case-driven API design
Why your API doesn’t solve my problem: A use case-driven API design
 
unREST among the docs
unREST among the docsunREST among the docs
unREST among the docs
 
Developing a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIsDeveloping a best-in-class deprecation policy for your APIs
Developing a best-in-class deprecation policy for your APIs
 
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyoneAnnotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
Annotate, Automate & Educate: Driving generated OpenAPI docs to benefit everyone
 
What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?What do developers do when it comes to understanding and using APIs?
What do developers do when it comes to understanding and using APIs?
 
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and ConfigurationsInclusive, Accessible Tech: Bias-Free Language in Code and Configurations
Inclusive, Accessible Tech: Bias-Free Language in Code and Configurations
 
Creating API documentation for international communities
Creating API documentation for international communitiesCreating API documentation for international communities
Creating API documentation for international communities
 
One Developer Portal to Document Them All
One Developer Portal to Document Them AllOne Developer Portal to Document Them All
One Developer Portal to Document Them All
 
Docs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation ExperienceDocs-as-Code: Evolving the API Documentation Experience
Docs-as-Code: Evolving the API Documentation Experience
 
Developer journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your productDeveloper journey - make it easy for devs to love your product
Developer journey - make it easy for devs to love your product
 
Complexity is not complicatedness
Complexity is not complicatednessComplexity is not complicatedness
Complexity is not complicatedness
 
How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...How cognitive biases and ranking can foster an ineffective architecture and d...
How cognitive biases and ranking can foster an ineffective architecture and d...
 

Recently uploaded

Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyJohn Staveley
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsPaul Groth
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor TurskyiFwdays
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlPeter Udo Diehl
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Tobias Schneck
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀DianaGray10
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesThousandEyes
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsVlad Stirbu
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...Sri Ambati
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonDianaGray10
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Ramesh Iyer
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaRTTS
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»QADay
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2DianaGray10
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxAbida Shariff
 

Recently uploaded (20)

Demystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John StaveleyDemystifying gRPC in .Net by John Staveley
Demystifying gRPC in .Net by John Staveley
 
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMsTo Graph or Not to Graph Knowledge Graph Architectures and LLMs
To Graph or Not to Graph Knowledge Graph Architectures and LLMs
 
"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi"Impact of front-end architecture on development cost", Viktor Turskyi
"Impact of front-end architecture on development cost", Viktor Turskyi
 
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo DiehlFuture Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
Future Visions: Predictions to Guide and Time Tech Innovation, Peter Udo Diehl
 
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdfFIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
FIDO Alliance Osaka Seminar: FIDO Security Aspects.pdf
 
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
Kubernetes & AI - Beauty and the Beast !?! @KCD Istanbul 2024
 
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
Exploring UiPath Orchestrator API: updates and limits in 2024 🚀
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
Builder.ai Founder Sachin Dev Duggal's Strategic Approach to Create an Innova...
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»НАДІЯ ФЕДЮШКО БАЦ  «Професійне зростання QA спеціаліста»
НАДІЯ ФЕДЮШКО БАЦ «Професійне зростання QA спеціаліста»
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2UiPath Test Automation using UiPath Test Suite series, part 2
UiPath Test Automation using UiPath Test Suite series, part 2
 
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptxIOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
IOS-PENTESTING-BEGINNERS-PRACTICAL-GUIDE-.pptx
 

HMRC Developer Hub – an Experience Report

  • 1. HMRC Developer Hub: an Experience Report What have we learned? Tony Heap - Business Analyst Mick Schonhut - Technical Writer HMRC API Platform team
  • 2. HMRC Digital HMRC Developer Hub ● Helps developers integrate their software with HMRC APIs eg. software to submit tax returns or customs declarations ● In beta for 2.5 years - went live in Sept 2018 ● 52 APIs so far and still growing (many are private or in private trial) ● 1.1 to 1.2 million API calls per day with 99.99% availability ● Grown steadily to 20+ teams in HMRC producing APIs ● Over 200+ external API consumers, including:
  • 3. HMRC Digital Demo https://developer.service.hmrc.gov.uk/api-documentation ● Developer Hub homepage ○ General documentation examples: ■ Using the Developer Hub ■ Authorisation ○ API documentation list ○ API documentation example: ■ Individual Employments ● Intro sections ● Endpoint details
  • 4. HMRC Digital How we write documentation ● Writing style - finding a common (ubiquitous) language ○ Eg “company benefits” or “employment benefits”? ○ GOV.UK, HMRC and Developer Hub style guides ● Content ○ Pairing is really important - a Subject Matter Expert (Tony) and writer (Mick) ○ Ideally done in real time - can be done asynchronously with collaboration tools (Google Docs) but less efficient
  • 5. HMRC Digital Our experience with RESTful API Modelling Language (RAML) ● Chose RAML over Swagger (now OpenAPI) ○ Betamax versus VHS :) ● We use RAML v1.0 and JSON Schema ● API producer teams create a RAML file to define each version of their API ● Convert RAML to HTML - a single API documentation page with standard sections and API endpoint details ● Gives consistency of API documentation across different teams - but are still challenges from different API content needs ● Some limitations in content types rendered eg diagrams
  • 6. HMRC Digital Feedback and iteration ● How we get feedback ○ 30+ cycles of user research testing in beta ○ Sign out survey ○ Beta banner feedback (until recently) ○ Feedback tool - heatmaps, pop up polls and a survey ● How we iterate the documentation ○ Compile individual feedback tickets into specific page “quick wins” ○ Share API doc feedback with API producer teams
  • 7. HMRC Digital End to end documentation needs - beyond the API Development audiences including entrepreneurs, product owners, business analysts, architects, lead developers have extra content needs: ● Timelines for staged API development and rollouts (“Roadmap”) ● Usage scenarios and relationships between related APIs and endpoints ● End to end user journey contextual information - about sole traders, limited companies, non-profits, agents, agencies, etc.
  • 8. HMRC Digital Prototypes: ● API documentation groupings https://hmrc-devhub-cycle-31.herokuapp.com/api-docs-migrate/api-docs-f ilter ● VAT Roadmap (GDS tech doc template) https://hmrc-vat-roadmap-cycle-33.herokuapp.com/#vat-mtd-roadmap ● VAT End-to-End Service Guide (GDS tech doc template) https://hmrc-vat-e-to-e-wd-cycle-33.herokuapp.com/#vat-mtd-end-to-end- service-guide
  • 9. HMRC Digital Our approach to API development ● Design ● Delivery ● Governance ● HMRC’s API Service Process and Standard https://confluence.tools.tax.service.gov.uk/display/DP/API+Service+Process ● We've been helping Government Digital Service (GDS) to draft cross government standards for API docs https://www.gov.uk/guidance/gds-api-technical-and-data-standards
  • 10. HMRC Digital What have we learned?
  • 11. HMRC Digital Feedback is essential ● User research is just as important as for public facing services - developers come in all shapes and sizes! ● Sign out surveys and beta banner surveys - just get ignored ● In-page polls are powerful - but can irritate users ● Analytics (page popularity) have helped a bit ● Heatmaps have helped a bit ● Feedback from API producers - from API hackathons - very useful ● Produce our own APIs to “eat our own dog food” - and run our own hackathons - very useful
  • 12. HMRC Digital Documentation quality really matters ● Getting quality across API documentation is hard ● API producer teams don’t normally hire technical writers ● API developers often left struggling to produce documentation ● API developers tend to prioritise API build over docs (it’s an Agile value!) ● API producer teams sometimes don’t even do user research - “We’re an API - we don’t do user research” ● Good quality documentation really makes a difference to API consumers (and poor quality documentation is really a problem)
  • 13. HMRC Digital Developers come in all shapes and sizes ● API platforms are hard to explain simply (e.g. OAuth 2.0 standard) ● Not all developers are as experienced as you might think ● Everyone wants examples and code snippets - in their favourite programming languages ● Some people are very visual thinkers - can't or won't read the text between the code snippets ● Complex APIs need a lot of contextual documentation - about the end-to-end user journey
  • 14. HMRC Digital Ease and speed of doc updates matters ● We need a lightweight CMS so we can make changes more quickly & easily - “Docs as code” model − We're building one based on GitHub and a simple markdown processor
  • 15. HMRC Digital Headlines - what we have learned ● Feedback is essential - just as much as any public facing service ● Documentation quality really matters to developers ● Developers come in all shapes and sizes ● Ease and speed of documentation updates is really important
  • 16. HMRC Digital Questions? For Tony (the BA) or Mick (the writer) or the both of us… Email: tony.heap@digital.hmrc.gov.uk mick.schonhut@digital.hmrc.gov.uk Read our latest blog post at: https://hmrcdigital.blog.gov.uk/2018/10/18/the-developer-hub-is-live/