Canonical App Authorization Service API

The AppAuthorizationService API from Canonical — 3 operation(s) for appauthorizationservice.

Operations 6

Each operation below carries the questions people ask an LLM about it and the instructions they give an agent to run it. Generated by API Evangelist overlay

DELETE /api/v0/authz/apps/{app_id}/groups Remove an app from every group · RemoveAllowedGroupsForApp removes an app from all groups it is allowed in #
Ask an LLM
“How do I revoke an app's access from all groups at once?”
“Can I strip every group authorization from a single app?”
Tell an agent destructive · confirm first
Remove app {app_id} from all groups it is allowed in.
Revoke every group authorization for app {app_id}.
GET /api/v0/authz/apps/{app_id}/groups List groups an app is allowed in · GetAllowedGroupsForApp retrieves the list of groups an app is allowed in #
Ask an LLM
“Which groups is a given OAuth app allowed to be used in?”
“Can I check where a client app has been authorized?”
Tell an agent
List the groups app {app_id} is allowed in.
Show every group that authorizes app {app_id}.
DELETE /api/v0/authz/groups/{group_id}/apps Remove all apps from a group · RemoveAllowedAppsFromGroup removes all apps from the allowed list of a group #
Ask an LLM
“Can I clear a group's entire allowed-apps list in one go?”
“How do I revoke every app from one group?”
Tell an agent destructive · confirm first
Remove all apps from the allowed list of group {group_id}.
Clear every allowed app from group {group_id}.
GET /api/v0/authz/groups/{group_id}/apps List apps allowed in a group · GetAllowedAppsInGroup retrieves the list of apps allowed in a specific group #
Ask an LLM
“Which apps are members of a group's allowed list?”
“What client apps can the members of a group use?”
Tell an agent
List the apps allowed in group {group_id}.
Show the allowed-apps list of group {group_id}.
POST /api/v0/authz/groups/{group_id}/apps Allow an app in a group · AddAllowedAppToGroup adds an app to the allowed list of a group #
Ask an LLM
“How do I authorize a client app for a group?”
“Can I add an OAuth client to a group's allowed list by its client ID?”
Tell an agent
Allow client {client_id} in group {group_id}.
Add app {client_id} to the allowed list of group {group_id}.
DELETE /api/v0/authz/groups/{group_id}/apps/{app_id} Remove one app from a group · RemoveAllowedAppFromGroup removes a specific app from the allowed list of a… #
Ask an LLM
“How do I take a single app off a group's allowed list?”
“Can I revoke one client app from one group without touching the others?”
Tell an agent destructive · confirm first
Remove app {app_id} from group {group_id}.
Revoke app {app_id}'s authorization in group {group_id} only.

Documentation

Specifications

Schemas & Data

Other Resources

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/canonical:canonical-appauthorizationservice-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

canonical-appauthorizationservice-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  contact:
    name: Identity Platform API
    url: https://github.com/canonical/identity-platform-api
  description: REST API for the Admin UI service
  license:
    name: AGPL-3.0
    url: https://github.com/canonical/identity-platform-api/blob/main/LICENSE
  title: Identity Platform App Authorization Service API
  version: '0.1'
tags:
- name: AppAuthorizationService
paths:
  /api/v0/authz/apps/{app_id}/groups:
    delete:
      operationId: AppAuthorizationService_RemoveAllowedGroupsForApp
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/authorizationRemoveAllowedGroupsForAppResp'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Bad request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Forbidden
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Internal server error
      summary: RemoveAllowedGroupsForApp removes an app from all groups it is allowed in
      tags:
      - AppAuthorizationService
    get:
      operationId: AppAuthorizationService_GetAllowedGroupsForApp
      parameters:
      - in: path
        name: app_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/authorizationGetAllowedGroupsForAppResp'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Forbidden
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Internal server error
      summary: GetAllowedGroupsForApp retrieves the list of groups an app is allowed in
      tags:
      - AppAuthorizationService
  /api/v0/authz/groups/{group_id}/apps:
    delete:
      operationId: AppAuthorizationService_RemoveAllowedAppsFromGroup
      parameters:
      - in: path
        name: group_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/authorizationRemoveAllowedAppsFromGroupResp'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Bad request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Forbidden
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Internal server error
      summary: RemoveAllowedAppsFromGroup removes all apps from the allowed list of a group
      tags:
      - AppAuthorizationService
    get:
      operationId: AppAuthorizationService_GetAllowedAppsInGroup
      parameters:
      - in: path
        name: group_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/authorizationGetAllowedAppsInGroupResp'
          description: ''
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Forbidden
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Internal server error
      summary: GetAllowedAppsInGroup retrieves the list of apps allowed in a specific group
      tags:
      - AppAuthorizationService
    post:
      operationId: AppAuthorizationService_AddAllowedAppToGroup
      parameters:
      - in: path
        name: group_id
        required: true
        schema:
          type: string
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/authorizationApp'
        required: true
        x-originalParamName: app
      responses:
        '201':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/authorizationAddAllowedAppToGroupResp'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Bad request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Forbidden
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Internal server error
      summary: AddAllowedAppToGroup adds an app to the allowed list of a group
      tags:
      - AppAuthorizationService
  /api/v0/authz/groups/{group_id}/apps/{app_id}:
    delete:
      operationId: AppAuthorizationService_RemoveAllowedAppFromGroup
      parameters:
      - in: path
        name: group_id
        required: true
        schema:
          type: string
      - in: path
        name: app_id
        required: true
        schema:
          type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/authorizationRemoveAllowedAppFromGroupResp'
          description: ''
        '400':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Bad request
        '401':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Unauthorized
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Forbidden
        default:
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/typesErrorResponse'
          description: Internal server error
      summary: RemoveAllowedAppFromGroup removes a specific app from the allowed list of a…
      tags:
      - AppAuthorizationService
components:
  schemas:
    authorizationGetAllowedGroupsForAppResp:
      properties:
        data:
          items:
            $ref: '#/components/schemas/apiauthorizationGroup'
          type: array
        message:
          type: string
        status:
          format: int32
          type: integer
      type: object
    typesErrorResponse:
      properties:
        message:
          type: string
        status:
          format: int32
          type: integer
      type: object
    authorizationRemoveAllowedGroupsForAppResp:
      properties:
        message:
          type: string
        status:
          format: int32
          type: integer
      type: object
    authorizationApp:
      properties:
        client_id:
          type: string
      type: object
    authorizationGetAllowedAppsInGroupResp:
      properties:
        data:
          items:
            $ref: '#/components/schemas/authorizationApp'
          type: array
        message:
          type: string
        status:
          format: int32
          type: integer
      type: object
    apiauthorizationGroup:
      properties:
        group_id:
          type: string
      type: object
    authorizationAddAllowedAppToGroupResp:
      properties:
        message:
          type: string
        status:
          format: int32
          type: integer
      type: object
    authorizationRemoveAllowedAppsFromGroupResp:
      properties:
        message:
          type: string
        status:
          format: int32
          type: integer
      type: object
    authorizationRemoveAllowedAppFromGroupResp:
      properties:
        message:
          type: string
        status:
          format: int32
          type: integer
      type: object
  securitySchemes:
    OAuth2:
      flows:
        authorizationCode:
          authorizationUrl: https://example.com/oauth/authorize
          scopes:
            email: ''
            openid: ''
            profile: ''
          tokenUrl: https://example.com/oauth/token
      type: oauth2
externalDocs:
  description: REST API for the Admin UI service
  url: https://github.com/canonical/identity-platform-admin-ui/blob/main/API.md