SlideShare a Scribd company logo
1 of 16
Download to read offline
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
 
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
 
#RADC4L16: An API-First Archives Approach at NPR
#RADC4L16: An API-First Archives Approach at NPR#RADC4L16: An API-First Archives Approach at NPR
#RADC4L16: An API-First Archives Approach at NPRCamille Salas
 

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...
 
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
 
#RADC4L16: An API-First Archives Approach at NPR
#RADC4L16: An API-First Archives Approach at NPR#RADC4L16: An API-First Archives Approach at NPR
#RADC4L16: An API-First Archives Approach at NPR
 

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

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

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/