Amigo External Roles API
The External Roles API from Amigo — 2 operation(s) for external roles.
The External Roles API from Amigo — 2 operation(s) for external roles.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
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.curl "https://apis.io/api/v1/apis/amigo-external-roles-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
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: 3.2.0
info:
title: Platform External Roles API
description: Management API for the Amigo platform. Provides CRUD operations for workspaces, API keys, and resources.
version: 1.0.0
servers:
- url: https://api.platform.amigo.ai
description: Production
security:
- BearerAuth: []
tags:
- name: External Roles
paths:
/v1/{workspace_id}/external-roles:
get:
tags:
- External Roles
summary: List External Roles
operationId: list-external-roles
parameters:
- name: workspace_id
in: path
required: true
schema:
type: string
format: uuid
title: Workspace Id
- name: sort_by
in: query
required: false
schema:
type: array
items:
type: string
default: []
title: Sort By
- name: limit
in: query
required: false
schema:
type: integer
maximum: 200
exclusiveMinimum: 0
default: 50
title: Limit
- name: continuation_token
in: query
required: false
schema:
title: Continuation Token
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/src__routes__external_roles__ListResponse'
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
post:
tags:
- External Roles
summary: Create External Role
operationId: create-external-role
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/src__routes__external_roles__CreateRequest'
responses:
'201':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ExternalRoleItem'
'409':
description: An external role with the given name already exists
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
parameters:
- name: workspace_id
in: path
required: true
schema:
type: string
format: uuid
title: Workspace Id
/v1/{workspace_id}/external-roles/{role_id}:
get:
tags:
- External Roles
summary: Get External Role
operationId: get-external-role
parameters:
- name: workspace_id
in: path
required: true
schema:
type: string
format: uuid
title: Workspace Id
- name: role_id
in: path
required: true
schema:
type: string
format: uuid
title: Role Id
responses:
'200':
description: Successful Response
content:
application/json:
schema:
$ref: '#/components/schemas/ExternalRoleItem'
'404':
description: External role not found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
delete:
tags:
- External Roles
summary: Delete External Role
operationId: delete-external-role
parameters:
- name: workspace_id
in: path
required: true
schema:
type: string
format: uuid
title: Workspace Id
- name: role_id
in: path
required: true
schema:
type: string
format: uuid
title: Role Id
responses:
'204':
description: Successful Response
'404':
description: External role not found
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
src__routes__external_roles__CreateRequest:
properties:
name:
type: string
maxLength: 64
minLength: 1
pattern: ^[a-z][a-z0-9_]{0,63}$
title: Name
external_name:
type: string
maxLength: 256
minLength: 1
title: External Name
description:
anyOf:
- type: string
maxLength: 2048
- type: 'null'
title: Description
additionalProperties: false
type: object
required:
- name
- external_name
title: CreateRequest
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
src__routes__external_roles__ListResponse:
properties:
items:
items:
$ref: '#/components/schemas/ExternalRoleItem'
type: array
title: Items
has_more:
type: boolean
title: Has More
continuation_token:
title: Continuation Token
type: object
required:
- items
- has_more
title: ListResponse
ExternalRoleItem:
properties:
id:
type: string
format: uuid
title: Id
name:
type: string
title: Name
external_name:
type: string
title: External Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
created_at:
type: string
format: date-time
title: Created At
updated_at:
type: string
format: date-time
title: Updated At
type: object
required:
- id
- name
- external_name
- created_at
- updated_at
title: ExternalRoleItem
description: Wire shape for read + create responses.
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
securitySchemes:
BearerAuth:
type: http
scheme: bearer
description: API key issued via `POST /v1/{workspace_id}/api-keys`. Pass the returned `api_key` value as a Bearer token.