Endpoint Project API
Riferimento completo per gli endpoint REST API di gestione progetto, inclusi impostazioni, membri, chiavi dei provider, chiavi API e contatori.
La Project API offre la gestione completa del tuo progetto CodeCourier - metadati, impostazioni, membri del team, chiavi dei provider, chiavi API e contatori di utilizzo. Tutti gli endpoint richiedono una chiave API di progetto valida nell’header Authorization.
CRUD del progetto
GET /api/v1/project
Recupera i dettagli del progetto corrente, inclusi nome, slug, URL del repo GitHub e data di creazione.
curl -H "Authorization: Bearer cc_live_..." \
https://<deployment>.convex.site/api/v1/projectRisposta:
{
"data": {
"id": "...",
"_id": "...",
"name": "My Project",
"slug": "my-project",
"githubRepoUrl": "https://github.com/org/repo",
"_creationTime": 1700000000000
}
}POST /api/v1/project/update
Aggiorna i metadati del progetto. Tutti i campi del body sono opzionali - vengono aggiornati solo i campi forniti.
curl -X POST -H "Authorization: Bearer cc_live_..." \
-H "Content-Type: application/json" \
-d '{"name": "New Name", "slug": "new-slug", "githubRepoUrl": "https://github.com/org/new-repo"}' \
https://<deployment>.convex.site/api/v1/project/updateCampi del body:
name(string, opzionale) - Nuovo nome del progettoslug(string, opzionale) - Nuovo slug URLgithubRepoUrl(string, opzionale) - URL del repository
POST /api/v1/project/delete
Elimina il progetto. Questa è un’operazione distruttiva. Nessun body della richiesta richiesto.
Impostazioni del progetto
GET /api/v1/project/settings
Recupera tutte le impostazioni del progetto, inclusi i prompt di sistema, le variabili d’ambiente, la configurazione dei learning e l’identità dei commit git.
POST /api/v1/project/settings/update
Aggiorna le impostazioni del progetto. Tutti i campi del body sono opzionali.
curl -X POST -H "Authorization: Bearer cc_live_..." \
-H "Content-Type: application/json" \
-d '{
"sandboxSystemPrompt": "You are a helpful coding assistant.",
"claudeMd": "# Project Instructions\n...",
"issueDiscoveryPrompt": "Analyze the codebase and identify issues.",
"envVars": {"NODE_ENV": "production"},
"gitCommitName": "CodeCourier Bot",
"gitCommitEmail": "bot@example.com"
}' \
https://<deployment>.convex.site/api/v1/project/settings/updateCampi del body:
sandboxSystemPrompt- Prompt di sistema iniettato nelle sandboxclaudeMd- Contenuto CLAUDE.md per gli agenti sandboxissueDiscoveryPrompt- Prompt predefinito per le sessioni di issue discoveryselectedSkills- Array di identificatori di skillselectedCommands- Array di identificatori di commandselectedScripts- Array di identificatori di scriptenvVars- Variabili d’ambiente chiave-valoredeployEnvVars- Variabili d’ambiente specifiche del deploytestUserCredentials- Oggetto con le credenziali utente di testconvexDeployKey- Chiave di deploy ConvexconvexDevKey- Chiave di sviluppo ConvexlearningTemplateId- Template per l’estrazione dei learninglearningModel- Modello usato per l’estrazione dei learningmergingTemplateId- Template per le operazioni di mergemergingModel- Modello usato per le operazioni di mergegitCommitName- Nome autore gitgitCommitEmail- Email autore git
Membri del team
GET /api/v1/project/members
Elenca tutti i membri del team del progetto con i loro ruoli e stato.
POST /api/v1/project/members/invite
Invita un nuovo membro nel progetto.
{
"email": "user@example.com",
"role": "member"
}Ruoli validi: "owner", "admin", "member".
POST /api/v1/project/members/remove
Rimuove un membro dal progetto.
{ "targetUserId": "..." }POST /api/v1/project/members/update-role
Aggiorna il ruolo di un membro.
{ "targetUserId": "...", "role": "admin" }Chiavi dei provider
Le chiavi dei provider sono credenziali per servizi esterni usati a runtime della sandbox (E2B, Anthropic, OpenRouter, OpenAI, GitHub).
GET /api/v1/project/provider-keys
Elenca tutte le chiavi dei provider. Restituisce solo il nome del provider e le ultime 4 cifre (le chiavi sono cifrate a riposo).
POST /api/v1/project/provider-keys/set
Imposta o aggiorna una chiave di provider.
{
"provider": "anthropic",
"key": "sk-ant-..."
}POST /api/v1/project/provider-keys/remove
Rimuove una chiave di provider.
{ "provider": "anthropic" }Chiavi API
GET /api/v1/project/api-keys
Elenca tutte le chiavi API del progetto mostrando prefisso, nome, data di creazione, data dell’ultimo utilizzo e stato di revoca.
POST /api/v1/project/api-keys/generate
Genera una nuova chiave API. Restituisce la chiave completa (mostrata una sola volta).
curl -X POST -H "Authorization: Bearer cc_live_..." \
-H "Content-Type: application/json" \
-d '{"name": "My New Key"}' \
https://<deployment>.convex.site/api/v1/project/api-keys/generateRisposta:
{
"data": {
"key": "cc_live_abc123def456...",
"id": "..."
}
}POST /api/v1/project/api-keys/revoke
Revoca una chiave API. La revoca è immediata e permanente.
{ "keyId": "..." }Contatori del progetto
GET /api/v1/project/counters
Recupera i conteggi aggregati del progetto (run totali, sandbox, workflow, ecc.). Utile per i riepiloghi di dashboard.