post__repo_{repoId}_ai_apikey

⚠️ TEST ENVIRONMENT ONLY

This API endpoint is currently available only in the TEST environment. It is not yet available in production.

POST /repo/{repoId}/ai/apikey

Create Repository AI API Key

Create a new AI-specific API key for a repository. These keys are used to access AI-powered features and services for the repository, providing secure authentication for AI operations.

Key Features:

  • Automatically generates unique API key and secret pairs

  • Keys are specific to a single repository

  • Supports different AI provider types (OPENAI, GOOGLE, ANTHROPIC, AWS, OTHER)

  • Encrypted storage of secrets

  • Repository-scoped access control

Important Notes:

  • The secret is only returned once during creation - store it securely

  • Users must have access to the repository to create API keys

  • Keys are soft-deleted (marked as deleted but not physically removed)

  • Each key is associated with a specific AI provider type

Security:

  • Secrets are encrypted before storage using industry-standard encryption

  • API key and secret are generated using cryptographically secure methods

  • Keys respect repository access controls

  • System events are logged for audit trails

TypeScript Client Library

public createRepoAiApiKey = async (repoId: string, data: CreateRepoAiApiKeyRequest): Promise<CreateRepoAiApiKeyResponse> => {
  return this.makeRequest<CreateRepoAiApiKeyResponse>(`repo/${repoId}/ai/apikey`, 'POST', data);
};

Code Samples

# You can also use wget
curl -X POST https://backend.flashback.tech/repo/{repoId}/ai/apikey \
  -H 'Content-Type: application/json' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer {access-token}'

Body parameter

{
  "name": "Production AI Key",
  "aiType": "OPENAI"
}

Parameters

Name
In
Type
Required
Description

repoId

path

string

true

Unique identifier of the repository

body

body

object

true

none

» name

body

string

true

Human-readable name for the API key

» aiType

body

string

true

Type of AI provider this key is for

Enumerated Values

Parameter
Value

» aiType

OPENAI

» aiType

GOOGLE

» aiType

ANTHROPIC

» aiType

AWS

» aiType

OTHER

Example responses

201 Response

{
  "success": true,
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "key": "FB_AI_abc123def456",
  "secret": "secret_xyz789abc123def456"
}

Responses

Status
Meaning
Description
Schema

201

API key created successfully

Inline

403

Insufficient permissions

Inline

500

Failed to create API key

Inline

Response Schema

Status Code 201

Name
Type
Required
Restrictions
Description

» success

boolean

false

none

Operation success status

» id

string

false

none

Unique identifier for the created API key

» key

string

false

none

The access key (store securely)

» secret

string

false

none

The secret key (store securely, only shown once)

IMPORTANT: The secret is only returned during creation. Store it securely as it cannot be retrieved again.

Status Code 403

Name
Type
Required
Restrictions
Description

» success

boolean

false

none

none

» id

string

false

none

none

» key

string

false

none

none

» secret

string

false

none

none

» message

string

false

none

Error message

Status Code 500

Name
Type
Required
Restrictions
Description

» success

boolean

false

none

none

» id

string

false

none

none

» key

string

false

none

none

» secret

string

false

none

none

» message

string

false

none

Error message

To perform this operation, you must be authenticated by means of one of the following methods: BearerAuth

Last updated

Was this helpful?