Anchor Browser Applications API
The Applications API from Anchor Browser — 6 operation(s) for applications.
The Applications API from Anchor Browser — 6 operation(s) for applications.
openapi: 3.1.0
info:
title: AnchorBrowser Agentic capabilities Applications API
version: 1.0.0
description: APIs to manage all browser-related actions and configuration.
servers:
- url: https://api.anchorbrowser.io
description: API server
tags:
- name: Applications
paths:
/v1/applications:
post:
summary: Create Application
description: 'Creates a new application for identity management.
'
security:
- api_key_header: []
tags:
- Applications
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateApplicationRequest'
examples:
createApplication:
summary: Create a new application
value:
source: https://example.com
name: Example App
description: An example application
responses:
'201':
description: Application created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/CreateApplicationResponse'
'400':
description: Invalid request parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Failed to create application
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
get:
summary: List Applications
description: 'Retrieves all applications for the authenticated team.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: search
in: query
required: false
description: Search query to filter applications by name
schema:
type: string
responses:
'200':
description: List of applications retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ListApplicationsResponse'
'500':
description: Failed to list applications
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/v1/applications/{applicationId}:
get:
summary: Get Application
description: 'Retrieves details of a specific application by its ID.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The ID of the application to retrieve
schema:
type: string
format: uuid
responses:
'200':
description: Application details retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/GetApplicationResponse'
'404':
description: Application not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Failed to get application
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
delete:
summary: Delete Application
description: 'Deletes an existing application.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The ID of the application to delete
schema:
type: string
format: uuid
responses:
'200':
description: Application deleted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteApplicationResponse'
'404':
description: Application not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Failed to delete application
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/v1/applications/{applicationId}/identities:
get:
summary: List Application Identities
description: 'Retrieves all identities associated with a specific application.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The ID of the application
schema:
type: string
format: uuid
- name: search
in: query
required: false
description: Search query to filter identities by name
schema:
type: string
- name: metadata
in: query
required: false
description: Filter identities by metadata. Pass a **JSON object** to filter identities whose metadata contains the specified key-value pairs.
schema:
type: string
additionalProperties: true
style: deepObject
explode: true
example:
department: Engineering
role: admin
responses:
'200':
description: List of identities retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ListApplicationIdentitiesResponse'
'500':
description: Failed to list application identities
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/v1/applications/{applicationId}/auth-flows:
get:
summary: List Application Authentication Flows
description: 'Retrieves all authentication flows for a specific application.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The ID of the application
schema:
type: string
format: uuid
responses:
'200':
description: List of authentication flows retrieved successfully
content:
application/json:
schema:
$ref: '#/components/schemas/ListApplicationAuthFlowsResponse'
'500':
description: Failed to list application authentication flows
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
post:
summary: Create Authentication Flow
description: 'Creates a new authentication flow for an application.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The ID of the application
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAuthFlowRequest'
examples:
createAuthFlow:
summary: Create an authentication flow with username/password
value:
name: Standard Login
description: Username and password authentication
is_recommended: true
methods:
- username_password
custom_fields: []
responses:
'201':
description: authentication flow created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/CreateAuthFlowResponse'
'400':
description: Invalid request parameters
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Failed to create authentication flow
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/v1/applications/{applicationId}/auth-flows/{authFlowId}:
patch:
summary: Update Authentication Flow
description: 'Updates an existing authentication flow.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The ID of the application
schema:
type: string
format: uuid
- name: authFlowId
in: path
required: true
description: The ID of the authentication flow to update
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAuthFlowRequest'
examples:
updateAuthFlow:
summary: Update authentication flow name and methods
value:
name: Updated Login Flow
methods:
- username_password
- authenticator
responses:
'200':
description: authentication flow updated successfully
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateAuthFlowResponse'
'500':
description: Failed to update authentication flow
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
delete:
summary: Delete Authentication Flow
description: 'Deletes an existing authentication flow.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The ID of the application
schema:
type: string
format: uuid
- name: authFlowId
in: path
required: true
description: The ID of the authentication flow to delete
schema:
type: string
format: uuid
responses:
'200':
description: authentication flow deleted successfully
content:
application/json:
schema:
$ref: '#/components/schemas/DeleteAuthFlowResponse'
'500':
description: Failed to delete authentication flow
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
/v1/applications/{applicationId}/tokens:
post:
summary: Create Identity Token
description: 'Creates an identity token for a specific application. This token is used to initiate
an authentication flow for linking user identities to the application.
The callback URL must use HTTPS and is where the user will be redirected after authentication.
'
security:
- api_key_header: []
tags:
- Applications
parameters:
- name: applicationId
in: path
required: true
description: The unique identifier of the application
schema:
type: string
format: uuid
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/CreateIdentityTokenRequest'
examples:
createToken:
summary: Create an identity token
value:
callbackUrl: https://example.com/auth/callback
responses:
'201':
description: Identity token created successfully
content:
application/json:
schema:
$ref: '#/components/schemas/IdentityTokenResponse'
'400':
description: Invalid request - callbackUrl must be a valid HTTPS URL
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'404':
description: Application not found
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
'500':
description: Failed to create identity token
content:
application/json:
schema:
$ref: '#/components/schemas/ErrorResponse'
components:
schemas:
ListApplicationAuthFlowsResponse:
type: object
properties:
auth_flows:
type: array
items:
$ref: '#/components/schemas/AuthFlowItem'
CustomFieldDefinition:
type: object
required:
- name
properties:
name:
type: string
description: Name of the custom field
CreateIdentityTokenRequest:
type: object
required:
- callbackUrl
properties:
callbackUrl:
type: string
format: uri
description: The HTTPS URL where the user will be redirected after authentication. Must use HTTPS protocol.
example: https://example.com/callback
CreateApplicationResponse:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the application
name:
type: string
description: Name of the application
url:
type: string
nullable: true
description: URL of the application
description:
type: string
nullable: true
description: Description of the application
created_at:
type: string
format: date-time
description: Timestamp when the application was created
IdentityTokenResponse:
type: object
properties:
data:
type: object
properties:
token:
type: string
description: The generated identity token for authentication
expires_at:
type: string
format: date-time
description: The timestamp when the token expires
token_hash:
type: string
description: A hash of the token for verification purposes
UpdateAuthFlowRequest:
type: object
properties:
name:
type: string
description: Name of the authentication flow
description:
type: string
description: Description of the authentication flow
is_recommended:
type: boolean
description: Whether this is the recommended authentication flow
methods:
type: array
items:
type: string
enum:
- username_password
- authenticator
- custom
description: Authentication methods in this flow
custom_fields:
type: array
items:
$ref: '#/components/schemas/CustomFieldDefinition'
description: Custom fields for this authentication flow
ErrorResponse:
type: object
properties:
error:
type: object
properties:
code:
type: integer
message:
type: string
ListApplicationsResponse:
type: object
properties:
applications:
type: array
items:
$ref: '#/components/schemas/ApplicationItem'
CreateAuthFlowResponse:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the authentication flow
name:
type: string
description: Name of the authentication flow
description:
type: string
nullable: true
description: Description of the authentication flow
is_recommended:
type: boolean
description: Whether this is the recommended authentication flow
methods:
type: array
items:
type: string
description: Authentication methods in this flow
custom_fields:
type: array
items:
$ref: '#/components/schemas/CustomFieldDefinition'
description: Custom fields for this authentication flow
created_at:
type: string
format: date-time
description: Timestamp when the authentication flow was created
updated_at:
type: string
format: date-time
description: Timestamp when the authentication flow was last updated
AuthFlowItem:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the authentication flow
name:
type: string
description: Name of the authentication flow
description:
type: string
nullable: true
description: Description of the authentication flow
is_recommended:
type: boolean
description: Whether this is the recommended authentication flow
methods:
type: array
items:
type: string
description: Authentication methods in this flow
custom_fields:
type: array
items:
$ref: '#/components/schemas/CustomFieldDefinition'
description: Custom fields for this authentication flow
created_at:
type: string
format: date-time
description: Timestamp when the authentication flow was created
updated_at:
type: string
format: date-time
description: Timestamp when the authentication flow was last updated
DeleteAuthFlowResponse:
type: object
properties:
success:
type: boolean
description: Whether the deletion was successful
CreateAuthFlowRequest:
type: object
required:
- name
- methods
properties:
name:
type: string
description: Name of the authentication flow
description:
type: string
description: Description of the authentication flow
is_recommended:
type: boolean
description: Whether this is the recommended authentication flow
methods:
type: array
items:
type: string
enum:
- username_password
- authenticator
- custom
minItems: 1
description: Authentication methods in this flow
custom_fields:
type: array
items:
$ref: '#/components/schemas/CustomFieldDefinition'
description: Custom fields for this authentication flow
ListApplicationIdentitiesResponse:
type: object
properties:
identities:
type: array
items:
$ref: '#/components/schemas/ApplicationIdentityItem'
UpdateAuthFlowResponse:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the authentication flow
name:
type: string
description: Name of the authentication flow
description:
type: string
nullable: true
description: Description of the authentication flow
is_recommended:
type: boolean
description: Whether this is the recommended authentication flow
methods:
type: array
items:
type: string
description: Authentication methods in this flow
custom_fields:
type: array
items:
$ref: '#/components/schemas/CustomFieldDefinition'
description: Custom fields for this authentication flow
created_at:
type: string
format: date-time
description: Timestamp when the authentication flow was created
updated_at:
type: string
format: date-time
description: Timestamp when the authentication flow was last updated
CreateApplicationRequest:
type: object
required:
- source
properties:
source:
type: string
format: uri
description: The source URL of the application
name:
type: string
description: Name of the application
description:
type: string
description: Description of the application
ApplicationIdentityItem:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the identity
name:
type: string
description: Name of the identity
auth_flow:
type: string
nullable: true
description: Authentication flow associated with this identity
status:
type: string
enum:
- pending
- validated
- failed
description: Status of the identity
created_at:
type: string
format: date-time
description: Timestamp when the identity was created
updated_at:
type: string
format: date-time
description: Timestamp when the identity was last updated
DeleteApplicationResponse:
type: object
properties:
success:
type: boolean
description: Whether the deletion was successful
ApplicationItem:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the application
name:
type: string
description: Name of the application
url:
type: string
nullable: true
description: URL of the application
description:
type: string
nullable: true
description: Description of the application
identity_count:
type: integer
description: Number of identities associated with this application
auth_methods:
type: array
items:
type: string
description: Authentication methods available for this application
created_at:
type: string
format: date-time
description: Timestamp when the application was created
updated_at:
type: string
format: date-time
description: Timestamp when the application was last updated
GetApplicationResponse:
type: object
properties:
id:
type: string
format: uuid
description: Unique identifier for the application
name:
type: string
description: Name of the application
url:
type: string
nullable: true
description: URL of the application
description:
type: string
nullable: true
description: Description of the application
identity_count:
type: integer
description: Number of identities associated with this application
auth_methods:
type: array
items:
type: string
description: Authentication methods available for this application
created_at:
type: string
format: date-time
description: Timestamp when the application was created
updated_at:
type: string
format: date-time
description: Timestamp when the application was last updated
securitySchemes:
api_key_header:
type: apiKey
in: header
name: anchor-api-key
description: API key passed in the header