Posit OAuth Integration Templates API

The OAuth Integration Templates API from Posit — 2 operation(s) for oauth integration templates.

Operations 2

GET /v1/oauth/templates List OAuth templates #
GET /v1/oauth/templates/{key} Get OAuth template details #

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.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/posit-oauth-integration-templates-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

posit-oauth-integration-templates-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    email: support@posit.co
    name: Posit Connect Support
    url: https://support.posit.co/hc/en-us
  description: '## Overview


    The Posit Connect Server API can be used to perform certain

    user actions remotely.'
  license:
    name: Commercial. Copyright 2015-2026 Posit Software, PBC. All Rights Reserved.
    url: https://posit.co/about/eula/
  termsOfService: https://posit.co/about/eula/
  title: Posit Connect API Reference OAuth Integration Templates API
  version: 1.0.1
servers:
- url: /__api__
security:
- apiKey: []
tags:
- name: OAuth Integration Templates
paths:
  /v1/oauth/templates:
    get:
      description: 'List OAuth templates available to Posit Connect.

        You must have administrator or publisher privileges to perform this action.'
      operationId: listOAuthTemplates
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: '#/components/schemas/OAuthTemplate'
                type: array
          description: Successful response.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: The requested operation is invalid.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: The requested operation requires authentication.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: You do not have permission to perform this operation.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: The requested object does not exist.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: A server error occurred.
      summary: List OAuth templates
      tags:
      - OAuth Integration Templates
  /v1/oauth/templates/{key}:
    get:
      description: 'Get information about a specific OAuth template.

        You must have administrator or publisher privileges to perform this action.'
      operationId: getOAuthTemplate
      parameters:
      - in: path
        name: key
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/OAuthTemplate'
          description: Successful response.
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: The requested operation is invalid.
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: The requested operation requires authentication.
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: You do not have permission to perform this operation.
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: The requested object does not exist.
        '500':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/APIError'
          description: A server error occurred.
      summary: Get OAuth template details
      tags:
      - OAuth Integration Templates
components:
  schemas:
    APIError:
      additionalProperties: false
      description: The error object returned by the API on failure.
      properties:
        code:
          description: The specific code for the type of error returned. See the [API error codes reference](#api-error-codes) for the full set of values.
          type: integer
        error:
          description: A description of the problem that was encountered.
          type: string
        payload:
          description: Additional error details, if any. The structure varies by error type.
          type:
          - object
          - 'null'
      required:
      - code
      - error
      type: object
    OAuthTemplateSection:
      additionalProperties: false
      description: OAuthTemplateSection defines a section within an OAuth template used to group options and fields when building the UI.
      properties:
        id:
          description: The primary identifier of the template section.
          format: int32
          type: integer
        order:
          description: 'The order of this section relative to other sections within the OAuth

            template.'
          format: int32
          type: integer
        name:
          description: The name of this section.
          type: string
        description:
          description: The description of this section.
          type: string
      type: object
    ServicePrincipalTemplateVisibilityExpression:
      additionalProperties: false
      description: 'A Boolean expression tree that indicates if a specific option or field is

        allowed by the service principal configuration.'
      properties:
        name:
          description: The name of a config field being compared. Set only on leaf nodes.
          example: issuer
          type: string
        value:
          description: The value a config field is compared against. Set only on leaf nodes.
          type: object
        operator:
          description: A Boolean operator applied to the operands. Set only on non-leaf nodes.
          example: and
          type: string
        operands:
          description: The operands a Boolean operator applies to. Set only on non-leaf nodes.
          items:
            $ref: '#/components/schemas/ServicePrincipalTemplateVisibilityExpression'
          type: array
      type: object
    OAuthTemplate:
      additionalProperties: false
      description: 'OAuthTemplate holds the set of available fields that can be configured when creating

        or updating an OAuth integration in Posit Connect.'
      properties:
        id:
          description: The primary identifier for this OAuth template.
          example: custom
          type: string
        name:
          description: A human readable name for this OAuth template.
          example: Custom Integration
          type: string
        description:
          description: A human readable description for this OAuth template.
          example: A Custom integration is used to create OAuth integrations of any type
          type: string
        sections:
          description: 'The sections of the template are used to group fields and options when

            building the UI.'
          items:
            $ref: '#/components/schemas/OAuthTemplateSection'
          type: array
        options:
          description: 'The options of the template are used to define the set of boolean and

            drop-down inputs that the user configures when creating an OAuth

            integration.'
          items:
            $ref: '#/components/schemas/ServicePrincipalTemplateOption'
          type: array
        fields:
          description: 'The fields of the template are used to define the set of text inputs that

            the user configures when creating an OAuth integration.'
          items:
            $ref: '#/components/schemas/ServicePrincipalTemplateField'
          type: array
        environment_variables:
          description: The names of environment variables associated with this OAuth template.
          items:
            type: string
          type: array
      type: object
    ServicePrincipalTemplateField:
      additionalProperties: false
      description: A configuration field (text input) for a service principal template.
      properties:
        name:
          description: The primary identifier of the field, used as a config map key.
          type: string
        description:
          description: A description of the field.
          type: string
        order:
          description: The order of this field relative to other options and fields.
          format: int32
          type: integer
        label:
          description: The label to use for this field.
          type: string
        visibility_expression:
          allOf:
          - $ref: '#/components/schemas/ServicePrincipalTemplateVisibilityExpression'
          description: A Boolean expression tree that indicates if this field is visible.
        default:
          description: The default value of this field.
          type: string
        validation:
          description: A regular expression used to determine whether the input is valid.
          type: string
        validation_description:
          description: A description of the value constraints for this field.
          type: string
        secret:
          description: Indicates whether the field value is secret and should be hidden.
          type: boolean
        multiline:
          description: Indicates whether the field accepts multiline text input.
          type: boolean
      type: object
    ServicePrincipalTemplateOption:
      additionalProperties: false
      description: A configuration option (boolean or drop-down input) for a service principal template.
      properties:
        name:
          description: The primary identifier of the option, used as a config map key.
          type: string
        description:
          description: A description of the option.
          type: string
        order:
          description: The order of this option relative to other options and fields.
          format: int32
          type: integer
        label:
          description: The label to use for this option.
          type: string
        visibility_expression:
          allOf:
          - $ref: '#/components/schemas/ServicePrincipalTemplateVisibilityExpression'
          description: A Boolean expression tree that indicates if this option is visible.
        type:
          description: The type of this option, either "bool" or "select".
          type: string
        values:
          description: The possible values when type is "select".
          items:
            type: string
          type: array
        default:
          description: The default value of this option.
          type: object
      type: object
  securitySchemes:
    apiKey:
      description: 'Prefix your API key with `Key `, e.g. `Key ABC123`.

        '
      in: header
      name: Authorization
      type: apiKey