Replicas Credentials API
Manage coding-agent credentials for an organization or the authenticated user
Manage coding-agent credentials for an organization or the authenticated user
openapi: 3.1.0
info:
title: Replica Analytics Credentials API
version: 2.0.0
description: The Replica API allows you to programmatically manage cloud workspaces for AI agents. Use this API to manage environments (the org-scoped primitive workspaces are created from — including variables, files, skills, MCPs, warm hooks, start hooks, and warm pools), create and manage replicas, send messages, manage chats, stream events, read connected repositories and repository sets, and configure automations.
servers:
- url: https://api.tryreplicas.com
description: Production API
security:
- apiKey: []
tags:
- name: Credentials
description: Manage coding-agent credentials for an organization or the authenticated user
paths:
/v1/opencode-go/credentials:
get:
operationId: getOpenCodeGoOrganizationCredentials
summary: Get organization OpenCode Go credential status
tags:
- Credentials
responses:
'200':
description: Credential status
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialStatus'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalServerError'
post:
operationId: setOpenCodeGoOrganizationCredentials
summary: Set the organization OpenCode Go API key
tags:
- Credentials
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialRequest'
responses:
'200':
description: Credential stored
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialUploadResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
delete:
operationId: deleteOpenCodeGoOrganizationCredentials
summary: Delete the organization OpenCode Go API key
tags:
- Credentials
responses:
'200':
description: Credential deletion result
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialDeleteResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'403':
$ref: '#/components/responses/Forbidden'
'500':
$ref: '#/components/responses/InternalServerError'
/v1/opencode-go/user/credentials:
get:
operationId: getOpenCodeGoUserCredentials
summary: Get personal OpenCode Go credential status
tags:
- Credentials
responses:
'200':
description: Credential status
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialStatus'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalServerError'
post:
operationId: setOpenCodeGoUserCredentials
summary: Set the authenticated user's OpenCode Go API key
tags:
- Credentials
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialRequest'
responses:
'200':
description: Credential stored
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialUploadResponse'
'400':
$ref: '#/components/responses/BadRequest'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalServerError'
delete:
operationId: deleteOpenCodeGoUserCredentials
summary: Delete the authenticated user's OpenCode Go API key
tags:
- Credentials
responses:
'200':
description: Credential deletion result
content:
application/json:
schema:
$ref: '#/components/schemas/ApiKeyCredentialDeleteResponse'
'401':
$ref: '#/components/responses/Unauthorized'
'500':
$ref: '#/components/responses/InternalServerError'
components:
schemas:
ApiKeyCredentialDeleteResponse:
type: object
properties:
success:
type: boolean
required:
- success
ApiKeyCredentialUploadResponse:
type: object
properties:
success:
type: boolean
credentialId:
type: string
format: uuid
required:
- success
- credentialId
ApiKeyCredentialStatus:
type: object
properties:
hasCredentials:
type: boolean
credentialId:
type: string
format: uuid
apiKey:
type: string
lastFetchedAt:
type: string
format: date-time
required:
- hasCredentials
Error:
type: object
properties:
error:
type: string
description: Error message
details:
type:
- string
- 'null'
description: Additional error details
required:
- error
ApiKeyCredentialRequest:
type: object
properties:
api_key:
type: string
minLength: 1
required:
- api_key
responses:
Forbidden:
description: Forbidden - The authenticated account cannot access this resource
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
Unauthorized:
description: Unauthorized - Invalid or missing API key
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
BadRequest:
description: Bad request - Missing or invalid parameters
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
InternalServerError:
description: Internal server error
content:
application/json:
schema:
$ref: '#/components/schemas/Error'
securitySchemes:
apiKey:
type: http
scheme: bearer
description: API key authentication. Obtain your API key from the Replicas dashboard under Organization → Settings → API Keys.
engineSecret:
type: http
scheme: bearer
description: Workspace engine secret used by agent-mode workspace requests.
workspaceId:
type: apiKey
in: header
name: X-Workspace-Id
description: Workspace ID used with the engine secret for agent-mode workspace requests.