René's URL Explorer Experiment


Title: Web API Design Best Practices - Azure Architecture Center | Microsoft Learn

Open Graph Title: Web API Design Best Practices - Azure Architecture Center

Description: Learn how to apply best practices for designing RESTful web APIs that support platform independence and loose coupling for service evolution.

Open Graph Description: Learn how to apply best practices for designing RESTful web APIs that support platform independence and loose coupling for service evolution.

Keywords:

Opengraph URL: https://learn.microsoft.com/en-us/azure/architecture/best-practices/api-design

X: @MicrosoftLearn

direct link

Domain: docs.microsoft.com

color-schemelight dark
twitter:cardsummary_large_image
og:typewebsite
og:image:altMicrosoft Learn
og:imagehttps://learn.microsoft.com/en-us/media/open-graph-image.png
platform_idaeae6090-1f11-ab77-9cde-894c31746737
scopeAzure,Azure Architecture Center
localeen-us
uhfHeaderIdazure
page_typeconceptual
feedback_systemStandard
breadcrumb_path/azure/architecture/bread/toc.json
ms.authorpnp
ms.serviceazure-architecture-center
ms.update-cycle1095-days
managercoxford
ms.topicbest-practice
authorclaytonsiemens77
ms.date2025-03-27T00:00:00Z
ms.subservicebest-practice
document_idad651d6a-f8d8-2050-e7a7-adbae7326112
document_version_independent_id4fddd724-cabd-8623-7692-857088c1dccb
updated_at2026-06-03T05:05:00Z
original_content_git_urlhttps://github.com/MicrosoftDocs/architecture-center-pr/blob/live/docs/best-practices/api-design.md
gitcommithttps://github.com/MicrosoftDocs/architecture-center-pr/blob/069a83fe2cc8d78c25f4123a93ba3b9819821147/docs/best-practices/api-design.md
git_commit_id069a83fe2cc8d78c25f4123a93ba3b9819821147
site_nameDocs
depot_nameMSDN.azure-architecture-center-pr2
schemaConceptual
toc_rel../toc.json
pdf_url_templatehttps://learn.microsoft.com/pdfstore/en-us/MSDN.azure-architecture-center-pr2/{branchName}{pdfName}
word_count6682
asset_idbest-practices/api-design
item_typeContent
source_pathdocs/best-practices/api-design.md
previous_tlsh_hash1B5F0603B80C4B10FF831E551867F99014F0804D9BB0AB8415263772F5DA3EB34B196AF6F3D363C4233642A70292AA4FA3D5E739D17C73B22569E8AD819C3592A7E937BBC4
github_feedback_content_git_urlhttps://github.com/microsoftdocs/architecture-center/blob/main/docs/best-practices/api-design.md
markdown_urlhttps://learn.microsoft.com/en-us/azure/architecture/best-practices/api-design?accept=text/markdown
cmProductshttps://authoring-docs-microsoft.poolparty.biz/devrel/540ac133-a371-4dbb-8f94-28d6cc77a70b
spProductshttps://authoring-docs-microsoft.poolparty.biz/devrel/60bfc045-f127-4841-9d00-ea35495a5800

Links:

Skip to main content https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#main
Skip to Ask Learn chat experience https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design
Download Microsoft Edge https://go.microsoft.com/fwlink/p/?LinkID=2092881
More info about Internet Explorer and Microsoft Edge https://learn.microsoft.com/en-us/lifecycle/faq/internet-explorer-microsoft-edge
Read in English https://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design
Edit https://github.com/microsoftdocs/architecture-center/blob/main/docs/best-practices/api-design.md
signing inhttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design
Data partitioninghttps://docs.microsoft.com/en-us/azure/architecture/best-practices/data-partitioning
Use Hypertext as the Engine of Application State (HATEOAS) to enable navigation to related resourceshttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#implement-hateoas
Chatty I/Ohttps://docs.microsoft.com/en-us/azure/architecture/antipatterns/chatty-io/
Extraneous Fetchinghttps://docs.microsoft.com/en-us/azure/architecture/antipatterns/extraneous-fetching/
GEThttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#get-requests
POSThttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#post-requests
PUThttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#put-request
PATCHhttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#patch-requests
DELETEhttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#delete-requests
RFC 5789https://tools.ietf.org/html/rfc5789
RFC 7396https://tools.ietf.org/html/rfc7396
RFC 6902https://tools.ietf.org/html/rfc6902
Provide asynchronous support for long-running requestshttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-implementation#provide-asynchronous-support-for-long-running-requests
Asynchronous Request-Reply patternhttps://docs.microsoft.com/en-us/azure/architecture/patterns/asynchronous-request-reply
URI versioninghttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#uri-versioning
Query string versioninghttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#query-string-versioning
Header versioninghttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#header-versioning
Media type versioninghttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#media-type-versioning
URI versioninghttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#uri-versioning
query string versioninghttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#query-string-versioning
Map requests to tenants in a multitenant solutionhttps://docs.microsoft.com/en-us/azure/architecture/guide/multitenant/considerations/map-requests
tenant-specific domainshttps://docs.microsoft.com/en-us/azure/architecture/guide/multitenant/considerations/domain-names
Preserve the hostnamehttps://docs.microsoft.com/en-us/azure/architecture/best-practices/host-name-preservation
the complexity of modern architectures increaseshttps://docs.microsoft.com/en-us/azure/architecture/best-practices/monitoring
HATEOAShttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design#implement-hateoas
OpenAPI Initiativehttps://www.openapis.org
ASP.NET Core web API documentation with Swagger/OpenAPIhttps://docs.microsoft.com/en-us/aspnet/core/tutorials/web-api-help-pages-using-swagger
recommendations for designing REST APIs on Azurehttps://github.com/microsoft/api-guidelines/blob/vNext/azure/Guidelines.md
checklisthttps://mathieu.fenniak.net/the-api-checklist
software as a service and multitenant solution architectureshttps://docs.microsoft.com/en-us/azure/architecture/guide/saas-multitenant-solution-architecture/
en-ushttps://docs.microsoft.com/en-us/azure/architecture/best-practices/api-design
Your Privacy Choiceshttps://aka.ms/yourcaliforniaprivacychoices
AI Disclaimerhttps://learn.microsoft.com/en-us/principles-for-ai-generated-content
Previous Versionshttps://learn.microsoft.com/en-us/previous-versions/
Bloghttps://techcommunity.microsoft.com/t5/microsoft-learn-blog/bg-p/MicrosoftLearnBlog
Contributehttps://learn.microsoft.com/en-us/contribute
Privacyhttps://go.microsoft.com/fwlink/?LinkId=521839
Consumer Health Privacyhttps://go.microsoft.com/fwlink/?linkid=2259814
Terms of Usehttps://learn.microsoft.com/en-us/legal/termsofuse
Trademarkshttps://www.microsoft.com/legal/intellectualproperty/Trademarks/

Viewport: width=device-width, initial-scale=1.0


URLs of crawlers that visited me.