API Evangelist API Evangelist
API Learnings
Toolbox
API Evangelist LLC

Technical Policies
info
share_location

search
policy

API Governance Rules

Spectral rules that apply to the API level, linting OpenAPI.

Business Contract
policy

API Licensing

Publishing a license for the interface, client code, server code, and data to ensure consumers understand the legal implications of using the API, code, and data into their own applications and int...

Business Contract
policy

API Lifecycle

A human and machine-readable schema of the common and agreed upon API lifecycle.

Business Contract
policy

Authentication

The details for how to authenticate with an API should always be part of the business and technical contracts for an API. Information on how to authenticate with an API should be readily available ...

policy

Authentication

Require details regarding how authentication is handled as part of API security.

Business Contract
policy

Base URL for API

Providing a valid URL to the base for an API that is designed for machines to use when making call to an API by an consumer.

API Contract
policy

Blog Feeds

A blog RSS or Atom feed provides a simple way to syndicate information and updates about APIs with producers and consumers, allowing it to be pushed out to where they are located and regularly cons...

Business Contract
policy

Blogs

A blog helps provide a regular channel for publishing relevant stories and information for both producers and consumers of an API, providing a simple, informative, and recurring way to stay in enga...

Business Contract
policy

Business Contract Validator

The APIs.json business contract must have a link to the validator for each, providing the ability to run linting rules for each type of contract and see the details of rules as they are applied.

Business Contract
policy

Business Guidance

Provide access to business API guidance as part of API contract support.

Business Contract
policy

CSharp

Require a CSharp client SDK available with each API.

Business Contract
policy

Centralizing Headers Using Components

Requiring that OpenAPI components headers meet the policy standards.

Technical Contract
policy

Centralizing Headers Using Components

Requiring that OpenAPI components headers meet the policy standards.

Technical Contract
policy

Certifications

Provide the provenance of an API contract using regular certifications

Business Contract
policy

Change Log

Having a change log of anything added, updated, or removed for an API, but also for the other operational and supporting resources for each API, ensuring there is a easy to read manifest of what ha...

Business Contract
policy

Change Log Date

The date of the change that was made to an API.

policy

Change Log Details

The description of the change that was made to an API.

policy

Change Log Title

The title of the change that was made to an API.

policy

Change Log Version

The version of the change that was made to an API.

policy

Contact Information for APIs

Requiring that there is a contact included in the OpenAPI info.

Technical Contract
policy

Created Date for APIs.json Contracts

Providing the data in which an API contract was created, establishing the inception of a specific contract involving one or more APIs, which defines the age of the contract.

Business Contract
policy

Date

The date for the proposed API change in the road map.

Business Contract
policy

Date-Based Versioning

Require usage of date-base versioning for managing change.

Business Contract
policy

Description of API Operations

Requiring that all operational descriptions meets the policy standards.

Technical Contract
policy

Description of APIs

Requiring the info description property meets the policy standards.

Technical Contract
policy

Descriptions for APIs

Providing a robust description of each API, providing the right amount of information for consumers to understand what is possible and what the business use case is.

API Contract
policy

Descriptions for APIs.json Contracts

Providing a robust description of the API contract, as well as each API it contains, providing my context for stakeholders of the contract.

Business Contract
policy

Details

The description for the proposed API change in the road map.

Business Contract
policy

Documentation

The human-readable HTML, Markdown, or PDF representation of the technical surface area of each API, providing path, methods, summaries, description, examples, and the other resources consumers will...

Business Contract
policy

Documentation Examples

Providing examples of request and responses, with as many variations as possible, helping demonstrate wide usage of an API.

Business Contract
policy

Documentation Paths

Providing simple, clean, and intuitive paths as part of the documentation being published for consumers to use.

Business Contract
policy

Documentation Request Bodies

Including details and examples regarding the request bodies being submitted for POST, PUT, and other possible methods.

Business Contract
policy

Documentation Responses

Making sure there is a complete example for each API response in documentation, including happy and unhappy responses.

Business Contract
policy

Documentation Schema

Documenting all of the schema which are used as part of request bodies and responses, providing JSON SChema representations of each.

Business Contract
policy

Elements

Offering other elements or features of an API that are included or not included within a plan to help API consumers understand scope of what is available.

Business Contract
policy

Environments

The environments for development, staging, or production environments should be available to manually or automatically working with an API in any environment, providing a machine-readable way for n...

Business Contract
policy

Feedback

Providing feedback on the business and technical details of each API contract, helping facilitate feedback from consumers and other stakeholders, but also from the learnings across other private an...

Business Contract
policy

Feedback Issues

Allow for teams to receive feedback on API contracts via Git issue.

Business Contract
policy

Gateways

All APIs are made available via a designated gateway for the company, domain, line of business, or team, ensuring that all APIs have access to shared authentication, rate limits, service compositio...

Business Contract
policy

Getting Started

The step by step walk-through for new API consumers, ensuring they have exactly what is needed to discover and onboard, but also help make sure the getting started steps are as simple, plain langua...

Business Contract
policy

Getting Started Authentication

Needs description.

Business Contract
policy

Getting Started Documentation

Provide a link and description to your API documentation, providing the entry point for API consumers to begin learning about what your API does.

Business Contract
policy

Getting Started SDKs

Provide a link and description of where API consumers can learn more about authentication and how it will work when they use an API.

Business Contract
policy

GitHub Actions

Employing actions as a pipeline to make sure that the deliver of each API is a repeatable process.

Business Contract
policy

GitHub Organization README

GitHub organization provide the ability to have a dedicated README, providing a single landing page for the API workspace of a domain, line of business, or domain, where all API contracts can be fo...

Business Contract
policy

GitHub Organization Repositories

GitHub organizations provide teams with the ability to create repositories for managing API contracts, separating and organizing contracts by meaningful bounded contexts within a specific domain.

Business Contract
policy

GitHub Organization Teams

GitHub organizations allow for the management of people and teams to help define who has access to repositories, contracts, and other assets managed via this dedicated domain workspace.

Business Contract
policy

GitHub Organizations

A GitHub organization provides a dedicated workspaces for teams to produce APIs, organize all the API contracts in motion, and leverage source countrol, CI/CD, teams, and other resources provided b...

policy

GitHub Repository

A GitHub repository for an API, providing the single source of truth for the API contract, OpenAPI, and other artifacts, as well as the road map, change log, support, feedback, and other elements o...

policy

Go

Require a Go client SDK available with each API.

Business Contract
policy

Governance

Governance standardizes APIs across teams using a common platform and lifecycle, applying governance policies and rules, and keeping everyone moving in the same direction using common guidance.

Business Contract
policy

Governance Policies

Human and machine-readable policies that define an aspect of API operations, which are always kept in alignment with business objectives.

Business Contract
policy

Governance Vocabulary

A formal vocabulary of words and phrases that can and cannot be used across operations.

Business Contract
policy

Guidance

Ensuring there is guidance for teams throughout their API journey, providing simple text and video guidance for all of the topics business and engineering teams will encounter as part of their regu...

Business Contract
policy

HTTP

The Hyper Text Transfer Protocol (HTTP) from the IETF.

Standards
policy

How Will API Be Used

How will consumers be putting API resources and capabilities, getting into the details of programming languages and frameworks.

Business Contract
policy

Human URL for APIs.json Contract

Providing a valid URL to a landing page for the API that is designed for humans to use when learning more about an API.

Business Contract
policy

Images for APIs

Including images as part of the metadata for your APIs helps make APIs more visible as part of portals, documentation, and other resources.

API Contract
policy

Images for APIs.json Contracts

Including images as part of the metadata for your APIs helps make APIs more visible as part of portals, documentation, and other resources.

Business Contract
policy

Issues

Provide the provenance of an API contract using Git issues.

Business Contract
policy

Issues

Leveraging issues as a way to communicate API change and feedback.

Business Contract
policy

JSON

Using the JavaScript Object Notation (JSON) format.

Standards
policy

JSON Schema

Using the JSON Schema to define and validate models.

policy

JWT (Authentication)

Require JWT usage meets standards set by authentication policies.

policy

Java

Require a Java client SDK available with each API.

Business Contract
policy

JavaScript

Require a JavaScript client SDK available with each API.

Business Contract
policy

Keys (Authentication)

Require the API key usage meets standards set by authentication policies.

policy

Latency

Requiring details regarding the regular latency for each available API.

Business Contract
policy

License for APIs

Requiring the info license property meets the policy standards.

Technical Contract
policy

Login for APIs

Providing a way to login and gain access to an API, offering a simple human-readable URL to the login page, or ideally some sort of automated login process that allows access with as few clicks and...

Business Contract
policy

Metadata for APIs

Unique identifier, name, description, tags, and other metadata for the API that defines the purpose of each individual API, and how it benefits API producer and consumers, establishing the base of ...

API Contract
policy

Metadata for APIs.json Contracts

Unique identifier, name, description, tags, and other metadata for the contract that defines the purpose of the API Contract, and how it benefits API producer and consumers, establishing the base o...

Business Contract
policy

Metrics

Providing details regarding the metrics available for each plan, outlining how the usage of digital resources and capabilities are being measured.

Business Contract
policy

Modified Date for APIs.json Contracts

Providing the data in which an API contract was last modified, tracking the change that occurs with each API contract, understanding the velocity as well as stagnation of APIs.

Business Contract
policy

Names for APIs

Providing a clear, descriptive, and concise name for each API, as well as the APIs it contains, properly defining the scope, with an intuitive first impression of an API.

API Contract
policy

Names for APIs.json Contracts

Providing a clear, descriptive, and concise name for each API contract, as well as the APIs it contains, properly defining the scope.

Business Contract
policy

OAuth (Authentication)

Require that OAuth usage meets standards set by authentication policies.

policy

OWASP

Require that OWASP API security top ten has been applied as part of API security.

Business Contract
policy

OpenAPI

A machine-readable OpenAPI using the most recent version of the API specification, describing the surface area of each API, which is then used to render the human-readable documentation, and other ...

Technical Contract
policy

OpenAPI

Using the OpenAPI specification to describe HTTP APIs.

policy

OpenAPI Components

The OpenAPI Components object enables the centralization of common technical details within an API, promoting modularity and reusability. Using the components object as a standard practice helps re...

Technical Contract
policy

OpenAPI Security

Requiring that OpenAPI security meet the policy standards.

Technical Contract
policy

OpenAPI Tags

Requiring that all OpenAPI tags meet the policy standards.

Technical Contract
policy

OpenAPI Version

Requiring there is the latest version of OpenAPI available.

Technical Contract
policy

Operation Security

Requiring that all operational security meets the policy standards.

Technical Contract
policy

Operation Summary

Requiring that all operational summaries meets the policy standards.

Technical Contract
policy

Operation Tags

Requiring that all operational tags meets the policy standards.

Technical Contract
policy

Operational Governance Rules

Spectral rules that apply to the operational level, linting APIs.json.

Business Contract
policy

PHP

Require a PHP client SDK available with each API.

Business Contract
policy

Parameter Descriptions

Requiring that all operational parameters descriptions meets the policy standards.

Technical Contract
policy

Parameter Enumerators

Requiring that all operational parameters enums meets the policy standards.

Technical Contract
policy

Parameter In Query or Path

Requiring that all operational parameters in property meets the policy standards.

Technical Contract
policy

Parameter Names

Requiring that all operational parameters names meets the policy standards.

Technical Contract
policy

Parameter Schema

Requiring that all operational parameters schema meets the policy standards.

Technical Contract
policy

Parameter Types

Requiring that all operational parameters type property meets the policy standards.

Technical Contract
policy

Parameters

Requiring that all operational parameters meets the policy standards.

Technical Contract
policy

Path Names

Requiring API paths meets the policy standards that are set.

Technical Contract
policy

People Guidance

Provide access to people API guidance as part of API contract support.

Business Contract
policy

Performance

Publishing details regarding the performance of APIs, complimenting status and uptime information, but drilling into more detail regarding speed, latency, and other performance related metrics that...

Business Contract
policy

Plans

Plans are all about being explicit and transparent with all of the access for an API, breaking down the tiers, rate limits, features, and pricing that is available for API consumers, standardizing ...

Business Contract
policy

Policies

Providing the machine-readable policies that link machine-readable rules with the business reasons why we are governing an API and the operations around it, helping organize rules based upon the bu...

Business Contract
policy

Policy Guidance

Provide access to API policy guidance as part of API contract support.

Business Contract
policy

Portals

Dedicated developer portals for an API provide a way to make documentation, sign-up, getting started, plans, SDKs, and other resources API consumers need more easily accessible publicly or privatel...

Business Contract
policy

Postman Collection

A machine-readable Postman Collection describing the surface area of the API contract or providing more modular and executable representations of portions of the API contract. - Postman - Executable

Technical Contract
policy

Postman Workspace

A Postman Workspace provides a dedicated space to manage API contracts within a domain, complimenting other types of workspaces, allowing for private, partner, and public workspaces to exist for ma...

Business Contract
policy

Privacy Policy

Publishing a privacy policy covering the producer and consumers of an API, as well as end-users of applications, adding to the legal resources that are available to 3rd party developers when puttin...

Business Contract
policy

Problem Details for HTTP APIs

Requiring that errors use the Problem Details for HTTP APIs standard.

Technical Contract
policy

Provenance

Helping curate the provenance of each API contract as it evolves over time, documenting change, and cataloging the reviews, validation, certification, and conversation that occurs as each API moves...

Business Contract
policy

Providing External Document References

Requiring that all OpenAPI external documentation meet the policy standards.

Technical Contract
policy

Pull Requests

Provide the provenance of an API contract using Git pull requests.

Business Contract
policy

Pull Requests

Using pull requests to submit changes to business or technical artifacts.

Business Contract
policy

Questions

Empowering teams to ask questions via issue or discussion via Git repository, or directly via email about the API lifecycle, governance, as well as the business or technical elements of producing a...

Business Contract
policy

Questions Issues

Allow for teams to ask questions and get answers via Git Issues.

Business Contract
policy

README

Require that each API contract repository has a dedicated README.

Business Contract
policy

Rate Limits

Providing details of rate limits being applied as part of each plan, and what is available to consumers as part of their application usage.

Business Contract
policy

Regions

Providing regional details available for access API resources and capabilities in different geographical regions as part of API plan usage.

Business Contract
policy

Request Bodies

Requiring that all operational request bodies meets the policy standards.

Technical Contract
policy

Request Bodies Examples

Requiring that all operational request body examples meets the policy standards.

Technical Contract
policy

Request Bodies Media Types

Requiring that all operational request body media types meets the policy standards.

Technical Contract
policy

Request Bodies Schema

Requiring that all operational request body schema meets the policy standards.

Technical Contract
policy

Response 2xx

Requiring that all 2xx responses meets the policy standards.

Technical Contract
policy

Response 4xx

Requiring that all 4xx responses meets the policy standards.

Technical Contract
policy

Response 5xx

Requiring that all 5xx responses meets the policy standards.

Technical Contract
policy

Response Time

Requiring details regarding the regular response time for each available API.

Business Contract
policy

Reviews

Provide the provenance of an API contract using API governance reviews.

Business Contract
policy

Road Map

Providing a simple yet informative look at what features are being planned for future releases of an API, or even sharing that nothing is currently being planned--just providing any insight on what...

Business Contract
policy

Rules

Providing the machine-readable rules used to govern an API that can be used as part of pipelines or other automation to lint an API, making sure the baseline for each API and the operations around ...

Business Contract
policy

SDKs

Offering software development kits, or SDKs for an API, handling authentication, and working across all available API operations in a variety of relevant programming languages to the targeted consu...

Business Contract
policy

SDKs (Getting Started)

Provide a link and description of where API consumers can get access to SDKs, libraries, and the code that will jumpstart their integration with an API.

Business Contract
policy

Schema Descriptions

Requiring that all schema descriptions meets the policy standards.

Technical Contract
policy

Schema Names

Requiring that all schema names meets the policy standards.

Technical Contract
policy

Schema Properties

Requiring that all schema properties meets the policy standards.

Technical Contract
policy

Schema Property Descriptions

Requiring that all schema property descriptions meets the policy standards.

Technical Contract
policy

Schema Property Names

Requiring that all schema property names meets the policy standards.

Technical Contract
policy

Schema Property Shapes

Requiring that all schema property shapes meets the policy standards.

Technical Contract
policy

Schema Property Type

Requiring that all schema property types meets the policy standards.

Technical Contract
policy

Schema Type

Requiring that all schema type meets the policy standards.

Technical Contract
policy

Scopes (Authentication)

Require Oauth scopes meets standards set by authentication policies.

policy

Security

Providing an overview of security practices for an API, including details covered as part of authentication and access management, but also security testing and certifications that matter to API co...

Business Contract
policy

Semantic Versioning

Require usage of major, minor, and patch Semantic Versioning for managing change.

Business Contract
policy

Spectral

Using the Spectral to define linting rules for APIs.

policy

Standards

Internet, industry, market, and government standards help make APIs more consistent, but also save time and money for both producer and consumer, while keeping APIs better aligned with existing ind...

Business Contract
policy

Status

Making an API status page, monitoring reports, or other real-time updates regarding the uptime and availability of an API, providing current, but also the historical status of API, helping maintain...

Business Contract
policy

Status Dashboard

Require a link to as well as results from a status dashboard for an API.

Business Contract
policy

Status History

Require a link to as well as results from a status history for an API.

Business Contract
policy

Support

Outline what support is available for API consumers, including email, tickets, forums, and paid support services, making it easy for API consumers to understand how they can get the help they need ...

Business Contract
policy

Support Email

Require that an API is supported using email.

Business Contract
policy

Support Issues

Require that an API is supported using Git issues.

Business Contract
policy

Tags for APIs

Tags provide a bounded context for your APIs, providing keywords that help organize APIs by domains, and make them more discoverable.

API Contract
policy

Tags for APIs.json Contracts

Tags provide a bounded context for your APIs, providing keywords that help organize APIs by domains, and make them more discoverable.

Business Contract
policy

Teams

Require that API contract management is controlled using Git teams.

Business Contract
policy

Teams

Requiring at least one product and one engineering, as well as other potential stakeholders involved through the API lifecycle from define to production, ensuring there is always someone actively o...

Business Contract
policy

Technical Contract Validator

The OpenAPI technical contract must have a link to the validator for each, providing the ability to run linting rules for each type of contract and see the details of rules as they are applied.

Technical Contract
policy

Technical Guidance

Provide access to technical API guidance as part of API contract support.

Business Contract
policy

Terms of Service

Making sure that terms of service are front and center for API consumers, ensuring that the legal side of using API resources and capabilities in applications and integrations by 3rd party consumer...

Business Contract
policy

Terms of Service for APIs

Requiring the info terms of service property meets the policy standards.

Technical Contract
policy

Testing

Require that security testing has occurred and publishing results for API security.

Business Contract
policy

Time Frame

Break down usage for for consumers based upon second, minutes, days, weeks, months, or other relevant time-frame for them to understand their usage.

Business Contract
policy

Title

The title for the proposed API change in the road map.

Business Contract
policy

Title of APIs

Requiring the info title property meets the policy standards.

Technical Contract
policy

URL for APIs.json Contracts

Providing the valid URL for the APIs.json contract, identifying the source of the contract which may or may not be where it is found, helping make contract authoritative.

Business Contract
policy

Unique Identifiers for APIs

Providing unique identifiers for API apis, as well as the APIs that are indexed as part of an API, providing a key reference for discovery and automating around a contract.

API Contract
policy

Unique Identifiers for APIs.json Contracts

Providing unique identifiers for API contracts, as well as the APIs that are indexed as part of a contract, providing a key reference.

Business Contract
policy

Unique Identrifiers for API Operations

Requiring that all operational unique identifiers meets the policy standards.

Technical Contract
policy

Usage of JSON Path Standard

Using JSON Path to identify properties of a schema.

Standard
policy

Use Cases

The who, what, how, and why of producing an API, making sure all of the known use cases are accurately described and kept up to date, then used to ensure each API is delivering what is expected wit...

Business Contract
policy

Version

The version of the proposed API change in the road map.

Business Contract
policy

Version of APIs

Requiring the info version property meets the policy standards.

Technical Contract
policy

Versioning

Providing semantic or date-based versioning for an API, offering an overview of what is adopted for an API and why, letting consumers know that their is change management in place and how they can ...

policy

Videos

Videos offer an engaging way to provide information and updates with producers nad consumers of APIs, demonstrating how an API can be used, providing webinars, workshops, and other useful videos ab...

Business Contract
policy

What Will Be Done With API

What will consumers be building with the resources and capabilities being made available via APIs.

Business Contract
policy

Who Will Be Using API

Who is using an API, focusing on the people who will be putting an API to work in their applications.

Business Contract
policy

Why Will API Be Used

What are the reasons an API consumer will be putting APIs to work in their applications and integrations as part of their business.

Business Contract
policy

YAML

Using the Yet Another Markdown Language (YAML) format.

Standards