Skip to main content
POST
Create New Index

Index erstellen

Erstellen Sie einen neuen Wissensdatenbankindex zum Speichern und Abrufen von Dokumenten.

Endpunkt

Beschreibung

Mit diesem Endpunkt können Administratoren einen neuen Wissensdatenbankindex erstellen. Der Index kann bestimmten Benutzern oder Gruppen zugewiesen werden. Nur Administratoren können Indizes erstellen.

Authentifizierung

Erforderlich: API-Schlüssel mit Administratorrechten

Anforderungstext

Beispielanfrage

Erfolgsantwort

Statuscode: 201 Created

Antwortfelder

Beispielverwendung

JavaScript

Python

cURL

Fehlerantworten

400 Ungültige Anfrage

Validierungen und Geschäftsregeln

  • Normalisierung des Indexnamens (für Speicher- und Eindeutigkeitsprüfungen):
    • Kleinbuchstaben, Leerzeichen entfernen
    • Ersetzen Sie Leerzeichen durch Bindestriche
    • Entfernen Sie alle Zeichen, die nicht in [a-z0-9-] enthalten sind.
  • Indexnamensvalidierung: Muss mit ^[a-z0-9-]{3,50}$ übereinstimmen; andernfalls wird 400 zurückgegeben.
  • Einzigartigkeit: Normalisiertes name muss eindeutig sein; Duplikate geben 409 zurück.
  • Zugewiesene Benutzerquote: Wenn assignedUser bereitgestellt wird, erzwingen Sie die Benutzerindexquote über checkUserIndexQuota; Das überschrittene Kontingent gibt 403 zurück.
  • Regionsbeschränkung (wesentlich): Für die Lizenz Essential können Indizes nur mit cloud=aws und region=us-east-1 erstellt werden; sonst 403.
  • Zugewiesene Gruppe: Wenn assignedGroup bereitgestellt wird, muss die Gruppe vorhanden sein und darf nicht archiviert werden (status != 'Archived'); sonst 400.

Normalisierung und Speicherung

  • name wird normalisiert gespeichert.
  • sharedIndexName verwendet standardmäßig das normalisierte name.
  • namespace ist standardmäßig user-{userId}-index-{normalizedName}, wenn es einem Benutzer zugewiesen wird.

Typische Fehlerformen

400 Ungültiger Indexname

403 Indexkontingent überschritten

403 Region nicht zulässig

400 Gruppe ungültig/inaktiv

401 Nicht autorisiert

403 Verboten

409 Konflikt

429 Zu viele Anfragen

Indextypen

Erforderliche Felder

Anwendungsfälle

  • Benutzerzuweisung: Erstellen Sie Indizes und weisen Sie sie bestimmten Benutzern zu
  • Gruppenzuweisung: Indizes erstellen und Gruppen zuweisen
  • Wissensdatenbanken: Erstellen Sie spezielle Wissensdatenbanken für bestimmte Domänen
  • Inhaltsorganisation: Organisieren Sie Inhalte nach Thema oder Kategorie
  • Vektorspeicher: Erstellen Sie Indizes zum Speichern und Abrufen von Vektoreinbettungen

Tarifbegrenzungen

  • Standard: 50 Anfragen pro Minute
  • Täglich: 5.000 Anfragen pro Tag
  • Monatlich: 150.000 Anfragen pro Monat

Notizen

– Auf diesen Endpunkt können nur Administratoren zugreifen
  • Erforderliche Felder: Name, Region, Cloud sind alle erforderlich
  • Zuweisung: Der Index kann einem Benutzer (assignedUser) oder einer Gruppe (assignedGroup) zugewiesen werden.
  • Automatische Generierung: Namespace wird automatisch generiert, wenn er nicht angegeben wird
  • Eindeutige Namen: Indexnamen müssen im gesamten System eindeutig sein
  • Der Index steht nach der Erstellung sofort zur Nutzung zur Verfügung
  • Dimension: Die Vektordimension wird intern von der Anwendung verwaltet (derzeit 4096).
  • Metrik: Die Ähnlichkeitsmetrik wird intern von der Anwendung verwaltet

Autorisierungen

Authorization
string
header
erforderlich

API key authentication using Bearer token format. Example: Authorization: Bearer sk-your-api-key-here

Body

application/json
name
string
erforderlich

Index name

Beispiel:

"my-knowledge-base"

region
string
erforderlich

AWS/GCP region for the vector database (e.g., "us-east-1", "us-west-1")

Beispiel:

"us-east-1"

cloud
enum<string>
erforderlich

Cloud provider ("aws" or "gcp")

Verfügbare Optionen:
aws,
gcp
Beispiel:

"aws"

assignedUser
string

User ID to assign the index to (MongoDB ObjectId)

Beispiel:

"60a7c8f5e8b4f5001f7a8c24"

assignedGroup
string

Group ID to assign the index to (MongoDB ObjectId)

Beispiel:

"60a7c8f5e8b4f5001f7a8c25"

sharedIndexName
string

Shared index name (optional, defaults to name)

Beispiel:

"my-knowledge-base"

namespace
string

Namespace for the index (optional, auto-generated)

Beispiel:

"user-60a7c8f5e8b4f5001f7a8c24-index-my-knowledge-base"

Antwort

Index created successfully

success
boolean
Beispiel:

true

message
string
Beispiel:

"Index created successfully"

index
object