Patreon Oauth2 API
The Oauth2 API from Patreon — 13 operation(s) for oauth2.
The Oauth2 API from Patreon — 13 operation(s) for oauth2.
openapi: 3.1.0
info:
title: Patreon API v2 Oauth2 API
description: 'Patreon''s APIv2 exposes identity, campaign, member, post, livestream and
webhook resources for creator integrations. Authentication uses OAuth2
Bearer tokens issued via the Patreon OAuth flow.
'
version: 2.0.0
contact:
name: Patreon Developers
url: https://docs.patreon.com/
servers:
- url: https://www.patreon.com
description: Patreon production
security:
- BearerAuth: []
tags:
- name: Oauth2
paths:
/oauth2/authorize:
get:
summary: OAuth2 authorization request
parameters:
- in: query
name: response_type
required: true
schema:
type: string
example: code
- in: query
name: client_id
required: true
schema:
type: string
- in: query
name: redirect_uri
required: true
schema:
type: string
- in: query
name: scope
schema:
type: string
- in: query
name: state
schema:
type: string
responses:
'302':
description: Redirect to the configured redirect URI with an authorization code.
security: []
tags:
- Oauth2
/api/oauth2/token:
post:
summary: Exchange a code or refresh token for an access token
requestBody:
required: true
content:
application/x-www-form-urlencoded:
schema:
type: object
properties:
grant_type:
type: string
example: authorization_code
code:
type: string
refresh_token:
type: string
client_id:
type: string
client_secret:
type: string
redirect_uri:
type: string
responses:
'200':
description: Access token issued.
security: []
tags:
- Oauth2
/api/oauth2/v2/identity:
get:
summary: Fetch the current user's profile
responses:
'200':
description: Current user identity.
tags:
- Oauth2
/api/oauth2/v2/campaigns:
get:
summary: List campaigns owned by the authorized user
responses:
'200':
description: A list of campaigns.
tags:
- Oauth2
/api/oauth2/v2/campaigns/{campaign_id}:
get:
summary: Get a single campaign
parameters:
- in: path
name: campaign_id
required: true
schema:
type: string
responses:
'200':
description: Campaign details.
tags:
- Oauth2
/api/oauth2/v2/campaigns/{campaign_id}/members:
get:
summary: List members of a campaign
parameters:
- in: path
name: campaign_id
required: true
schema:
type: string
responses:
'200':
description: A paginated list of members.
tags:
- Oauth2
/api/oauth2/v2/members/{member_id}:
get:
summary: Get an individual member
parameters:
- in: path
name: member_id
required: true
schema:
type: string
responses:
'200':
description: Member details.
tags:
- Oauth2
/api/oauth2/v2/campaigns/{campaign_id}/posts:
get:
summary: List posts on a campaign
parameters:
- in: path
name: campaign_id
required: true
schema:
type: string
responses:
'200':
description: A paginated list of posts.
tags:
- Oauth2
/api/oauth2/v2/posts/{id}:
get:
summary: Get an individual post
parameters:
- in: path
name: id
required: true
schema:
type: string
responses:
'200':
description: Post details.
tags:
- Oauth2
/api/oauth2/v2/lives:
post:
summary: Create a livestream event
requestBody:
required: true
content:
application/json:
schema:
type: object
responses:
'200':
description: Livestream created.
tags:
- Oauth2
/api/oauth2/v2/lives/{id}:
get:
summary: Get livestream details
parameters:
- in: path
name: id
required: true
schema:
type: string
responses:
'200':
description: Livestream details.
tags:
- Oauth2
patch:
summary: Update livestream state
parameters:
- in: path
name: id
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
responses:
'200':
description: Livestream updated.
tags:
- Oauth2
/api/oauth2/v2/webhooks:
get:
summary: List webhooks for a campaign
responses:
'200':
description: A list of webhooks.
tags:
- Oauth2
post:
summary: Create a webhook
requestBody:
required: true
content:
application/json:
schema:
type: object
responses:
'200':
description: Webhook created.
tags:
- Oauth2
/api/oauth2/v2/webhooks/{id}:
patch:
summary: Update a webhook
parameters:
- in: path
name: id
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
type: object
responses:
'200':
description: Webhook updated.
tags:
- Oauth2
delete:
summary: Delete a webhook
parameters:
- in: path
name: id
required: true
schema:
type: string
responses:
'200':
description: Webhook deleted.
tags:
- Oauth2
components:
securitySchemes:
BearerAuth:
type: http
scheme: bearer
bearerFormat: OAuth2 access token
description: 'Pass `Authorization: Bearer {access_token}`. Tokens are issued via
the Patreon OAuth flow (`/oauth2/authorize` and `/api/oauth2/token`).
'