Work with this as data
Every API here is available over the APIs.io API and to AI agents over MCP.
MCP server
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
Tools for apis
7 MCP tools reach this
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.
Call it yourself
curl for this page
This API
curl "https://apis.io/api/v1/apis/aol-oauth2-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Get an API key
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
OpenAPI Specification
openapi: 3.2.0
info:
title: Yahoo (formerly AOL) OAuth 2.0 and OpenID Connect O Auth2…
description: 'Yahoo OAuth 2.0 and OpenID Connect endpoints used by developers building on
the Yahoo / former AOL identity platform.'
version: 1.0.0
contact:
name: Yahoo Developer Support
url: https://developer.yahoo.com/forum/
license:
name: Yahoo Terms of Service
url: https://legal.yahoo.com/us/en/yahoo/terms/otos/index.html
servers:
- url: https://api.login.yahoo.com
description: Yahoo identity / OAuth 2.0 / OpenID Connect server
tags:
- name: OAuth2
description: OAuth 2.0 Authorization Code grant endpoints
paths:
/oauth2/request_auth:
get:
tags:
- OAuth2
summary: Authorization request
description: 'Redirects the user to Yahoo''s authorization page where the user
authenticates and grants the requesting application access. On
success Yahoo redirects back to `redirect_uri` with a `code`
query parameter that can be exchanged at the token endpoint.'
operationId: requestAuth
parameters:
- name: client_id
in: query
required: true
description: Consumer Key issued when registering an app at developer.yahoo.com
schema:
type: string
- name: redirect_uri
in: query
required: true
description: URI Yahoo will redirect to after the user authorizes the app
schema:
type: string
format: uri
- name: response_type
in: query
required: true
description: Must be `code` for the Authorization Code grant
schema:
type: string
enum:
- code
- name: scope
in: query
required: false
description: Space-separated OpenID Connect scopes (for example `openid profile email`)
schema:
type: string
- name: state
in: query
required: false
description: Opaque value returned unchanged on the redirect; use to prevent CSRF
schema:
type: string
- name: language
in: query
required: false
description: Language identifier for the Yahoo authorization UI
schema:
type: string
default: en-us
responses:
'302':
description: Redirect to the configured `redirect_uri` with `code` and `state` query parameters on success, or with `error` on failure.
/oauth2/get_token:
post:
tags:
- OAuth2
summary: Token exchange and refresh
description: 'Exchanges an authorization code for access and refresh tokens, or
exchanges a refresh token for a new access token. The `grant_type`
parameter selects the behaviour. Client credentials may be passed
in the body or in an `Authorization: Basic` header with
base64-encoded `client_id:client_secret`.'
operationId: getToken
security:
- basicAuth: []
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
required:
- client_id
- client_secret
- redirect_uri
- grant_type
properties:
client_id:
type: string
description: Consumer Key
client_secret:
type: string
description: Consumer Secret
redirect_uri:
type: string
format: uri
description: Same redirect URI used in the authorization request
grant_type:
type: string
enum:
- authorization_code
- refresh_token
description: Selects code exchange or refresh-token exchange
code:
type: string
description: Authorization code returned from /oauth2/request_auth (required when grant_type=authorization_code)
refresh_token:
type: string
description: Previously issued refresh token (required when grant_type=refresh_token)
responses:
'200':
description: Token response
content:
application/json:
schema:
$ref: '#/components/schemas/TokenResponse'
'400':
description: Invalid request
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
'401':
description: Invalid client authentication
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
components:
schemas:
TokenResponse:
type: object
properties:
access_token:
type: string
token_type:
type: string
example: bearer
expires_in:
type: integer
description: Lifetime of the access token in seconds
refresh_token:
type: string
id_token:
type: string
description: Signed JWT ID token (when the `openid` scope is requested)
xoauth_yahoo_guid:
type: string
description: Yahoo GUID of the authenticated user
Error:
type: object
properties:
error:
type: string
error_description:
type: string
securitySchemes:
basicAuth:
type: http
scheme: basic
description: HTTP Basic authentication with base64-encoded `client_id:client_secret`
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: OAuth 2.0 Bearer access token
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: https://api.login.yahoo.com/oauth2/request_auth
tokenUrl: https://api.login.yahoo.com/oauth2/get_token
scopes:
openid: OpenID Connect authentication
profile: Basic profile information
email: Email address