Hierarchy

  • LangfuseCore
    • Langfuse

Constructors

  • Parameters

    • Optionalparams: {
          publicKey?: string;
          secretKey?: string;
      } & {
          enabled?: boolean;
          persistence?:
              | "localStorage"
              | "sessionStorage"
              | "memory"
              | "cookie";
          persistence_name?: string;
      } & LangfuseCoreOptions

    Returns Langfuse

Properties

_events: SimpleEventEmitter
_flushTimer?: any
_retryOptions: RetriableOptions
additionalHeaders: Record<string, string>
api: {
    commentsCreate: ((data: ApiCreateCommentRequest, params?: RequestParams) => Promise<ApiCreateCommentResponse>);
    commentsGet: ((query: ApiCommentsGetParams, params?: RequestParams) => Promise<ApiGetCommentsResponse>);
    commentsGetById: ((commentId: string, params?: RequestParams) => Promise<ApiComment>);
    datasetItemsCreate: ((data: ApiCreateDatasetItemRequest, params?: RequestParams) => Promise<ApiDatasetItem>);
    datasetItemsGet: ((id: string, params?: RequestParams) => Promise<ApiDatasetItem>);
    datasetItemsList: ((query: ApiDatasetItemsListParams, params?: RequestParams) => Promise<ApiPaginatedDatasetItems>);
    datasetRunItemsCreate: ((data: ApiCreateDatasetRunItemRequest, params?: RequestParams) => Promise<ApiDatasetRunItem>);
    datasetsCreate: ((data: ApiCreateDatasetRequest, params?: RequestParams) => Promise<ApiDataset>);
    datasetsGet: ((datasetName: string, params?: RequestParams) => Promise<ApiDataset>);
    datasetsGetRun: ((datasetName: string, runName: string, params?: RequestParams) => Promise<ApiDatasetRunWithItems>);
    datasetsGetRuns: ((__namedParameters: ApiDatasetsGetRunsParams, params?: RequestParams) => Promise<ApiPaginatedDatasetRuns>);
    datasetsList: ((query: ApiDatasetsListParams, params?: RequestParams) => Promise<ApiPaginatedDatasets>);
    healthHealth: ((params?: RequestParams) => Promise<ApiHealthResponse>);
    ingestionBatch: ((data: ApiIngestionBatchPayload, params?: RequestParams) => Promise<ApiIngestionResponse>);
    mediaGet: ((mediaId: string, params?: RequestParams) => Promise<ApiGetMediaResponse>);
    mediaGetUploadUrl: ((data: ApiGetMediaUploadUrlRequest, params?: RequestParams) => Promise<ApiGetMediaUploadUrlResponse>);
    mediaPatch: ((mediaId: string, data: ApiPatchMediaBody, params?: RequestParams) => Promise<void>);
    metricsDaily: ((query: ApiMetricsDailyParams, params?: RequestParams) => Promise<ApiDailyMetrics>);
    modelsCreate: ((data: ApiCreateModelRequest, params?: RequestParams) => Promise<ApiModel>);
    modelsDelete: ((id: string, params?: RequestParams) => Promise<void>);
    modelsGet: ((id: string, params?: RequestParams) => Promise<ApiModel>);
    modelsList: ((query: ApiModelsListParams, params?: RequestParams) => Promise<ApiPaginatedModels>);
    observationsGet: ((observationId: string, params?: RequestParams) => Promise<ApiObservationsView>);
    observationsGetMany: ((query: ApiObservationsGetManyParams, params?: RequestParams) => Promise<ApiObservationsViews>);
    projectsGet: ((params?: RequestParams) => Promise<ApiProjects>);
    promptsCreate: ((data: ApiCreatePromptRequest, params?: RequestParams) => Promise<ApiPrompt>);
    promptsGet: ((__namedParameters: ApiPromptsGetParams, params?: RequestParams) => Promise<ApiPrompt>);
    promptsList: ((query: ApiPromptsListParams, params?: RequestParams) => Promise<ApiPromptMetaListResponse>);
    promptVersionUpdate: ((name: string, version: number, data: ApiPromptVersionUpdatePayload, params?: RequestParams) => Promise<ApiPrompt>);
    scoreConfigsCreate: ((data: ApiCreateScoreConfigRequest, params?: RequestParams) => Promise<ApiScoreConfig>);
    scoreConfigsGet: ((query: ApiScoreConfigsGetParams, params?: RequestParams) => Promise<ApiScoreConfigs>);
    scoreConfigsGetById: ((configId: string, params?: RequestParams) => Promise<ApiScoreConfig>);
    scoreCreate: ((data: ApiCreateScoreRequest, params?: RequestParams) => Promise<ApiCreateScoreResponse>);
    scoreDelete: ((scoreId: string, params?: RequestParams) => Promise<void>);
    scoreGet: ((query: ApiScoreGetParams, params?: RequestParams) => Promise<ApiGetScoresResponse>);
    scoreGetById: ((scoreId: string, params?: RequestParams) => Promise<ApiScore>);
    sessionsGet: ((sessionId: string, params?: RequestParams) => Promise<ApiSessionWithTraces>);
    sessionsList: ((query: ApiSessionsListParams, params?: RequestParams) => Promise<ApiPaginatedSessions>);
    traceGet: ((traceId: string, params?: RequestParams) => Promise<ApiTraceWithFullDetails>);
    traceList: ((query: ApiTraceListParams, params?: RequestParams) => Promise<ApiTraces>);
}

Type declaration

  • commentsCreate: ((data: ApiCreateCommentRequest, params?: RequestParams) => Promise<ApiCreateCommentResponse>)

    Create a comment. Comments may be attached to different object types (trace, observation, session, prompt).

    Comments

    CommentsCreate

    POST:/api/public/comments

      • (data, params?): Promise<ApiCreateCommentResponse>
      • Parameters

        • data: ApiCreateCommentRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiCreateCommentResponse>

  • commentsGet: ((query: ApiCommentsGetParams, params?: RequestParams) => Promise<ApiGetCommentsResponse>)

    Get all comments

    Comments

    CommentsGet

    GET:/api/public/comments

      • (query, params?): Promise<ApiGetCommentsResponse>
      • Parameters

        • query: ApiCommentsGetParams
        • Optionalparams: RequestParams

        Returns Promise<ApiGetCommentsResponse>

  • commentsGetById: ((commentId: string, params?: RequestParams) => Promise<ApiComment>)

    Get a comment by id

    Comments

    CommentsGetById

    GET:/api/public/comments/{commentId}

      • (commentId, params?): Promise<ApiComment>
      • Parameters

        • commentId: string
        • Optionalparams: RequestParams

        Returns Promise<ApiComment>

  • datasetItemsCreate: ((data: ApiCreateDatasetItemRequest, params?: RequestParams) => Promise<ApiDatasetItem>)

    Create a dataset item

    DatasetItems

    DatasetItemsCreate

    POST:/api/public/dataset-items

      • (data, params?): Promise<ApiDatasetItem>
      • Parameters

        • data: ApiCreateDatasetItemRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiDatasetItem>

  • datasetItemsGet: ((id: string, params?: RequestParams) => Promise<ApiDatasetItem>)

    Get a dataset item

    DatasetItems

    DatasetItemsGet

    GET:/api/public/dataset-items/{id}

      • (id, params?): Promise<ApiDatasetItem>
      • Parameters

        • id: string
        • Optionalparams: RequestParams

        Returns Promise<ApiDatasetItem>

  • datasetItemsList: ((query: ApiDatasetItemsListParams, params?: RequestParams) => Promise<ApiPaginatedDatasetItems>)

    Get dataset items

    DatasetItems

    DatasetItemsList

    GET:/api/public/dataset-items

      • (query, params?): Promise<ApiPaginatedDatasetItems>
      • Parameters

        • query: ApiDatasetItemsListParams
        • Optionalparams: RequestParams

        Returns Promise<ApiPaginatedDatasetItems>

  • datasetRunItemsCreate: ((data: ApiCreateDatasetRunItemRequest, params?: RequestParams) => Promise<ApiDatasetRunItem>)

    Create a dataset run item

    DatasetRunItems

    DatasetRunItemsCreate

    POST:/api/public/dataset-run-items

      • (data, params?): Promise<ApiDatasetRunItem>
      • Parameters

        • data: ApiCreateDatasetRunItemRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiDatasetRunItem>

  • datasetsCreate: ((data: ApiCreateDatasetRequest, params?: RequestParams) => Promise<ApiDataset>)

    Create a dataset

    Datasets

    DatasetsCreate

    POST:/api/public/v2/datasets

      • (data, params?): Promise<ApiDataset>
      • Parameters

        • data: ApiCreateDatasetRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiDataset>

  • datasetsGet: ((datasetName: string, params?: RequestParams) => Promise<ApiDataset>)

    Get a dataset

    Datasets

    DatasetsGet

    GET:/api/public/v2/datasets/{datasetName}

      • (datasetName, params?): Promise<ApiDataset>
      • Parameters

        • datasetName: string
        • Optionalparams: RequestParams

        Returns Promise<ApiDataset>

  • datasetsGetRun: ((datasetName: string, runName: string, params?: RequestParams) => Promise<ApiDatasetRunWithItems>)

    Get a dataset run and its items

    Datasets

    DatasetsGetRun

    GET:/api/public/datasets/{datasetName}/runs/{runName}

      • (datasetName, runName, params?): Promise<ApiDatasetRunWithItems>
      • Parameters

        • datasetName: string
        • runName: string
        • Optionalparams: RequestParams

        Returns Promise<ApiDatasetRunWithItems>

  • datasetsGetRuns: ((__namedParameters: ApiDatasetsGetRunsParams, params?: RequestParams) => Promise<ApiPaginatedDatasetRuns>)

    Get dataset runs

    Datasets

    DatasetsGetRuns

    GET:/api/public/datasets/{datasetName}/runs

      • (__namedParameters, params?): Promise<ApiPaginatedDatasetRuns>
      • Parameters

        • __namedParameters: ApiDatasetsGetRunsParams
        • Optionalparams: RequestParams

        Returns Promise<ApiPaginatedDatasetRuns>

  • datasetsList: ((query: ApiDatasetsListParams, params?: RequestParams) => Promise<ApiPaginatedDatasets>)

    Get all datasets

    Datasets

    DatasetsList

    GET:/api/public/v2/datasets

      • (query, params?): Promise<ApiPaginatedDatasets>
      • Parameters

        • query: ApiDatasetsListParams
        • Optionalparams: RequestParams

        Returns Promise<ApiPaginatedDatasets>

  • healthHealth: ((params?: RequestParams) => Promise<ApiHealthResponse>)

    Check health of API and database

    Health

    HealthHealth

    GET:/api/public/health

      • (params?): Promise<ApiHealthResponse>
      • Parameters

        • Optionalparams: RequestParams

        Returns Promise<ApiHealthResponse>

  • ingestionBatch: ((data: ApiIngestionBatchPayload, params?: RequestParams) => Promise<ApiIngestionResponse>)

    Batched ingestion for Langfuse Tracing. If you want to use tracing via the API, such as to build your own Langfuse client implementation, this is the only API route you need to implement. Within each batch, there can be multiple events. Each event has a type, an id, a timestamp, metadata and a body. Internally, we refer to this as the "event envelope" as it tells us something about the event but not the trace. We use the event id within this envelope to deduplicate messages to avoid processing the same event twice, i.e. the event id should be unique per request. The event.body.id is the ID of the actual trace and will be used for updates and will be visible within the Langfuse App. I.e. if you want to update a trace, you'd use the same body id, but separate event IDs. Notes: - Introduction to data model: https://langfuse.com/docs/tracing-data-model - Batch sizes are limited to 3.5 MB in total. You need to adjust the number of events per batch accordingly. - The API does not return a 4xx status code for input errors. Instead, it responds with a 207 status code, which includes a list of the encountered errors.

    Ingestion

    IngestionBatch

    POST:/api/public/ingestion

      • (data, params?): Promise<ApiIngestionResponse>
      • Parameters

        • data: ApiIngestionBatchPayload
        • Optionalparams: RequestParams

        Returns Promise<ApiIngestionResponse>

  • mediaGet: ((mediaId: string, params?: RequestParams) => Promise<ApiGetMediaResponse>)

    Get a media record

    Media

    MediaGet

    GET:/api/public/media/{mediaId}

      • (mediaId, params?): Promise<ApiGetMediaResponse>
      • Parameters

        • mediaId: string
        • Optionalparams: RequestParams

        Returns Promise<ApiGetMediaResponse>

  • mediaGetUploadUrl: ((data: ApiGetMediaUploadUrlRequest, params?: RequestParams) => Promise<ApiGetMediaUploadUrlResponse>)

    Get a presigned upload URL for a media record

    Media

    MediaGetUploadUrl

    POST:/api/public/media

      • (data, params?): Promise<ApiGetMediaUploadUrlResponse>
      • Parameters

        • data: ApiGetMediaUploadUrlRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiGetMediaUploadUrlResponse>

  • mediaPatch: ((mediaId: string, data: ApiPatchMediaBody, params?: RequestParams) => Promise<void>)

    Patch a media record

    Media

    MediaPatch

    PATCH:/api/public/media/{mediaId}

      • (mediaId, data, params?): Promise<void>
      • Parameters

        • mediaId: string
        • data: ApiPatchMediaBody
        • Optionalparams: RequestParams

        Returns Promise<void>

  • metricsDaily: ((query: ApiMetricsDailyParams, params?: RequestParams) => Promise<ApiDailyMetrics>)

    Get daily metrics of the Langfuse project

    Metrics

    MetricsDaily

    GET:/api/public/metrics/daily

      • (query, params?): Promise<ApiDailyMetrics>
      • Parameters

        • query: ApiMetricsDailyParams
        • Optionalparams: RequestParams

        Returns Promise<ApiDailyMetrics>

  • modelsCreate: ((data: ApiCreateModelRequest, params?: RequestParams) => Promise<ApiModel>)

    Create a model

    Models

    ModelsCreate

    POST:/api/public/models

      • (data, params?): Promise<ApiModel>
      • Parameters

        • data: ApiCreateModelRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiModel>

  • modelsDelete: ((id: string, params?: RequestParams) => Promise<void>)

    Delete a model. Cannot delete models managed by Langfuse. You can create your own definition with the same modelName to override the definition though.

    Models

    ModelsDelete

    DELETE:/api/public/models/{id}

      • (id, params?): Promise<void>
      • Parameters

        • id: string
        • Optionalparams: RequestParams

        Returns Promise<void>

  • modelsGet: ((id: string, params?: RequestParams) => Promise<ApiModel>)

    Get a model

    Models

    ModelsGet

    GET:/api/public/models/{id}

      • (id, params?): Promise<ApiModel>
      • Parameters

        • id: string
        • Optionalparams: RequestParams

        Returns Promise<ApiModel>

  • modelsList: ((query: ApiModelsListParams, params?: RequestParams) => Promise<ApiPaginatedModels>)

    Get all models

    Models

    ModelsList

    GET:/api/public/models

      • (query, params?): Promise<ApiPaginatedModels>
      • Parameters

        • query: ApiModelsListParams
        • Optionalparams: RequestParams

        Returns Promise<ApiPaginatedModels>

  • observationsGet: ((observationId: string, params?: RequestParams) => Promise<ApiObservationsView>)

    Get a observation

    Observations

    ObservationsGet

    GET:/api/public/observations/{observationId}

      • (observationId, params?): Promise<ApiObservationsView>
      • Parameters

        • observationId: string
        • Optionalparams: RequestParams

        Returns Promise<ApiObservationsView>

  • observationsGetMany: ((query: ApiObservationsGetManyParams, params?: RequestParams) => Promise<ApiObservationsViews>)

    Get a list of observations

    Observations

    ObservationsGetMany

    GET:/api/public/observations

      • (query, params?): Promise<ApiObservationsViews>
      • Parameters

        • query: ApiObservationsGetManyParams
        • Optionalparams: RequestParams

        Returns Promise<ApiObservationsViews>

  • projectsGet: ((params?: RequestParams) => Promise<ApiProjects>)

    Get Project associated with API key

    Projects

    ProjectsGet

    GET:/api/public/projects

      • (params?): Promise<ApiProjects>
      • Parameters

        • Optionalparams: RequestParams

        Returns Promise<ApiProjects>

  • promptsCreate: ((data: ApiCreatePromptRequest, params?: RequestParams) => Promise<ApiPrompt>)

    Create a new version for the prompt with the given name

    Prompts

    PromptsCreate

    POST:/api/public/v2/prompts

      • (data, params?): Promise<ApiPrompt>
      • Parameters

        • data: ApiCreatePromptRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiPrompt>

  • promptsGet: ((__namedParameters: ApiPromptsGetParams, params?: RequestParams) => Promise<ApiPrompt>)

    Get a prompt

    Prompts

    PromptsGet

    GET:/api/public/v2/prompts/{promptName}

      • (__namedParameters, params?): Promise<ApiPrompt>
      • Parameters

        • __namedParameters: ApiPromptsGetParams
        • Optionalparams: RequestParams

        Returns Promise<ApiPrompt>

  • promptsList: ((query: ApiPromptsListParams, params?: RequestParams) => Promise<ApiPromptMetaListResponse>)

    Get a list of prompt names with versions and labels

    Prompts

    PromptsList

    GET:/api/public/v2/prompts

      • (query, params?): Promise<ApiPromptMetaListResponse>
      • Parameters

        • query: ApiPromptsListParams
        • Optionalparams: RequestParams

        Returns Promise<ApiPromptMetaListResponse>

  • promptVersionUpdate: ((name: string, version: number, data: ApiPromptVersionUpdatePayload, params?: RequestParams) => Promise<ApiPrompt>)

    Update labels for a specific prompt version

    PromptVersion

    PromptVersionUpdate

    PATCH:/api/public/v2/prompts/{name}/versions/{version}

      • (name, version, data, params?): Promise<ApiPrompt>
      • Parameters

        • name: string
        • version: number
        • data: ApiPromptVersionUpdatePayload
        • Optionalparams: RequestParams

        Returns Promise<ApiPrompt>

  • scoreConfigsCreate: ((data: ApiCreateScoreConfigRequest, params?: RequestParams) => Promise<ApiScoreConfig>)

    Create a score configuration (config). Score configs are used to define the structure of scores

    ScoreConfigs

    ScoreConfigsCreate

    POST:/api/public/score-configs

      • (data, params?): Promise<ApiScoreConfig>
      • Parameters

        • data: ApiCreateScoreConfigRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiScoreConfig>

  • scoreConfigsGet: ((query: ApiScoreConfigsGetParams, params?: RequestParams) => Promise<ApiScoreConfigs>)

    Get all score configs

    ScoreConfigs

    ScoreConfigsGet

    GET:/api/public/score-configs

      • (query, params?): Promise<ApiScoreConfigs>
      • Parameters

        • query: ApiScoreConfigsGetParams
        • Optionalparams: RequestParams

        Returns Promise<ApiScoreConfigs>

  • scoreConfigsGetById: ((configId: string, params?: RequestParams) => Promise<ApiScoreConfig>)

    Get a score config

    ScoreConfigs

    ScoreConfigsGetById

    GET:/api/public/score-configs/{configId}

      • (configId, params?): Promise<ApiScoreConfig>
      • Parameters

        • configId: string
        • Optionalparams: RequestParams

        Returns Promise<ApiScoreConfig>

  • scoreCreate: ((data: ApiCreateScoreRequest, params?: RequestParams) => Promise<ApiCreateScoreResponse>)

    Create a score

    Score

    ScoreCreate

    POST:/api/public/scores

      • (data, params?): Promise<ApiCreateScoreResponse>
      • Parameters

        • data: ApiCreateScoreRequest
        • Optionalparams: RequestParams

        Returns Promise<ApiCreateScoreResponse>

  • scoreDelete: ((scoreId: string, params?: RequestParams) => Promise<void>)

    Delete a score

    Score

    ScoreDelete

    DELETE:/api/public/scores/{scoreId}

      • (scoreId, params?): Promise<void>
      • Parameters

        • scoreId: string
        • Optionalparams: RequestParams

        Returns Promise<void>

  • scoreGet: ((query: ApiScoreGetParams, params?: RequestParams) => Promise<ApiGetScoresResponse>)

    Get a list of scores

    Score

    ScoreGet

    GET:/api/public/scores

      • (query, params?): Promise<ApiGetScoresResponse>
      • Parameters

        • query: ApiScoreGetParams
        • Optionalparams: RequestParams

        Returns Promise<ApiGetScoresResponse>

  • scoreGetById: ((scoreId: string, params?: RequestParams) => Promise<ApiScore>)

    Get a score

    Score

    ScoreGetById

    GET:/api/public/scores/{scoreId}

      • (scoreId, params?): Promise<ApiScore>
      • Parameters

        • scoreId: string
        • Optionalparams: RequestParams

        Returns Promise<ApiScore>

  • sessionsGet: ((sessionId: string, params?: RequestParams) => Promise<ApiSessionWithTraces>)

    Get a session. Please note that traces on this endpoint are not paginated, if you plan to fetch large sessions, consider GET /api/public/traces?sessionId=<sessionId>

    Sessions

    SessionsGet

    GET:/api/public/sessions/{sessionId}

      • (sessionId, params?): Promise<ApiSessionWithTraces>
      • Parameters

        • sessionId: string
        • Optionalparams: RequestParams

        Returns Promise<ApiSessionWithTraces>

  • sessionsList: ((query: ApiSessionsListParams, params?: RequestParams) => Promise<ApiPaginatedSessions>)

    Get sessions

    Sessions

    SessionsList

    GET:/api/public/sessions

      • (query, params?): Promise<ApiPaginatedSessions>
      • Parameters

        • query: ApiSessionsListParams
        • Optionalparams: RequestParams

        Returns Promise<ApiPaginatedSessions>

  • traceGet: ((traceId: string, params?: RequestParams) => Promise<ApiTraceWithFullDetails>)

    Get a specific trace

    Trace

    TraceGet

    GET:/api/public/traces/{traceId}

      • (traceId, params?): Promise<ApiTraceWithFullDetails>
      • Parameters

        • traceId: string
        • Optionalparams: RequestParams

        Returns Promise<ApiTraceWithFullDetails>

  • traceList: ((query: ApiTraceListParams, params?: RequestParams) => Promise<ApiTraces>)

    Get list of traces

    Trace

    TraceList

    GET:/api/public/traces

      • (query, params?): Promise<ApiTraces>
      • Parameters

        • query: ApiTraceListParams
        • Optionalparams: RequestParams

        Returns Promise<ApiTraces>

baseUrl: string
isLocalEventExportEnabled: boolean
publicKey: string
sdkIntegration: string
secretKey: undefined | string

Methods

  • Parameters

    • projectId: string

    Returns Promise<(
        | {
            type: "trace-create";
        } & {
            body: {
                environment?: null | string;
                id?: null | string;
                input?: unknown;
                metadata?: unknown;
                name?: null | string;
                output?: unknown;
                public?: null | boolean;
                release?: null | string;
                sessionId?: null | string;
                tags?: null | string[];
                timestamp?: null | string;
                userId?: null | string;
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "score-create";
        } & {
            body: {
                comment?: null | string;
                configId?: null | string;
                dataType?: "NUMERIC" | "BOOLEAN" | "CATEGORICAL";
                environment?: null | string;
                id?: null | string;
                name: string;
                observationId?: null | string;
                traceId: string;
                value: string | number;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "span-create";
        } & {
            body: {
                endTime?: null | string;
            } & {
                id?: null | string;
            } & {
                environment?: null | string;
                input?: unknown;
                level?:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                startTime?: null | string;
                statusMessage?: null | string;
                traceId?: null | string;
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "span-update";
        } & {
            body: {
                endTime?: null | string;
            } & {
                id: string;
            } & {
                environment?: null | string;
                input?: unknown;
                level?:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                startTime?: null | string;
                statusMessage?: null | string;
                traceId?: null | string;
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "generation-create";
        } & {
            body: {
                completionStartTime?: null | string;
                costDetails?: null | {
                    [key: string]: number;
                };
                model?: null | string;
                modelParameters?: null | {
                    [key: string]: (...)[(...)]["MapValue"];
                };
                promptName?: null | string;
                promptVersion?: null | number;
                usage?: {
                    input?: null | number;
                    inputCost?: null | number;
                    output?: null | number;
                    outputCost?: null | number;
                    total?: null | number;
                    totalCost?: null | number;
                    unit?:
                        | "CHARACTERS"
                        | "TOKENS"
                        | "MILLISECONDS"
                        | "SECONDS"
                        | "IMAGES"
                        | "REQUESTS";
                } | {
                    completionTokens?: null | number;
                    promptTokens?: null | number;
                    totalTokens?: null | number;
                };
                usageDetails?: {
                    [key: string]: number;
                } | {
                    completion_tokens: number;
                    completion_tokens_details?: null | {
                        [key: ...]: ...;
                    };
                    prompt_tokens: number;
                    prompt_tokens_details?: null | {
                        [key: ...]: ...;
                    };
                    total_tokens: number;
                };
            } & {
                endTime?: null | string;
            } & {
                id?: null | string;
            } & {
                environment?: null | string;
                input?: unknown;
                level?:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                startTime?: null | string;
                statusMessage?: null | string;
                traceId?: null | string;
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "generation-update";
        } & {
            body: {
                completionStartTime?: null | string;
                costDetails?: null | {
                    [key: string]: number;
                };
                model?: null | string;
                modelParameters?: null | {
                    [key: string]: (...)[(...)]["MapValue"];
                };
                promptName?: null | string;
                promptVersion?: null | number;
                usage?: {
                    input?: null | number;
                    inputCost?: null | number;
                    output?: null | number;
                    outputCost?: null | number;
                    total?: null | number;
                    totalCost?: null | number;
                    unit?:
                        | "CHARACTERS"
                        | "TOKENS"
                        | "MILLISECONDS"
                        | "SECONDS"
                        | "IMAGES"
                        | "REQUESTS";
                } | {
                    completionTokens?: null | number;
                    promptTokens?: null | number;
                    totalTokens?: null | number;
                };
                usageDetails?: {
                    [key: string]: number;
                } | {
                    completion_tokens: number;
                    completion_tokens_details?: null | {
                        [key: ...]: ...;
                    };
                    prompt_tokens: number;
                    prompt_tokens_details?: null | {
                        [key: ...]: ...;
                    };
                    total_tokens: number;
                };
            } & {
                endTime?: null | string;
            } & {
                id: string;
            } & {
                environment?: null | string;
                input?: unknown;
                level?:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                startTime?: null | string;
                statusMessage?: null | string;
                traceId?: null | string;
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "event-create";
        } & {
            body: {
                id?: null | string;
            } & {
                environment?: null | string;
                input?: unknown;
                level?:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                startTime?: null | string;
                statusMessage?: null | string;
                traceId?: null | string;
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "sdk-log";
        } & {
            body: {
                log: unknown;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "observation-create";
        } & {
            body: {
                completionStartTime?: null | string;
                endTime?: null | string;
                environment?: null | string;
                id?: null | string;
                input?: unknown;
                level?:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                model?: null | string;
                modelParameters?: null | {
                    [key: string]: components["schemas"]["MapValue"];
                };
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                startTime?: null | string;
                statusMessage?: null | string;
                traceId?: null | string;
                type: "SPAN" | "GENERATION" | "EVENT";
                usage?: {
                    input?: null | number;
                    inputCost?: null | number;
                    output?: null | number;
                    outputCost?: null | number;
                    total?: null | number;
                    totalCost?: null | number;
                    unit?:
                        | "CHARACTERS"
                        | "TOKENS"
                        | "MILLISECONDS"
                        | "SECONDS"
                        | "IMAGES"
                        | "REQUESTS";
                };
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        }
        | {
            type: "observation-update";
        } & {
            body: {
                completionStartTime?: null | string;
                endTime?: null | string;
                environment?: null | string;
                id?: null | string;
                input?: unknown;
                level?:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                model?: null | string;
                modelParameters?: null | {
                    [key: string]: components["schemas"]["MapValue"];
                };
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                startTime?: null | string;
                statusMessage?: null | string;
                traceId?: null | string;
                type: "SPAN" | "GENERATION" | "EVENT";
                usage?: {
                    input?: null | number;
                    inputCost?: null | number;
                    output?: null | number;
                    outputCost?: null | number;
                    total?: null | number;
                    totalCost?: null | number;
                    unit?:
                        | "CHARACTERS"
                        | "TOKENS"
                        | "MILLISECONDS"
                        | "SECONDS"
                        | "IMAGES"
                        | "REQUESTS";
                };
                version?: null | string;
            };
        } & {
            id: string;
            metadata?: unknown;
            timestamp: string;
        })[]>

  • Parameters

    • id: string

    Returns Promise<Omit<{
        contentLength: number;
        contentType: string;
        mediaId: string;
        uploadedAt: string;
        url: string;
        urlExpiry: string;
    }, "externalId" | "traceIdType">>

  • Parameters

    • name: string

    Returns Promise<Omit<{
        createdAt: Date;
        description?: null | string;
        id: string;
        metadata?: any;
        name: string;
        projectId: string;
        updatedAt: Date;
    }, "externalId" | "traceIdType">>

  • Parameters

    • query: undefined | {
          datasetName?: null | string;
          limit?: null | number;
          page?: null | number;
          sourceObservationId?: null | string;
          sourceTraceId?: null | string;
      }

    Returns Promise<Omit<{
        data: {
            createdAt: string;
            datasetId: string;
            datasetName: string;
            expectedOutput?: unknown;
            id: string;
            input?: unknown;
            metadata?: unknown;
            sourceObservationId?: null | string;
            sourceTraceId?: null | string;
            status: "ACTIVE" | "ARCHIVED";
            updatedAt: string;
        }[];
        meta: {
            limit: number;
            page: number;
            totalItems: number;
            totalPages: number;
        };
    }, "externalId" | "traceIdType">>

  • Parameters

    • p: {
          body?: string | Buffer;
          fetchTimeout?: number;
          method:
              | "GET"
              | "POST"
              | "PUT"
              | "PATCH";
      }
      • Optionalbody?: string | Buffer
      • OptionalfetchTimeout?: number
      • method:
            | "GET"
            | "POST"
            | "PUT"
            | "PATCH"

    Returns LangfuseFetchOptions

  • Parameters

    • response: any

    Returns any

  • Parameters

    • body: Omit<{
          completionStartTime?: null | Date;
          costDetails?: null | {
              [key: string]: number;
          };
          endTime?: null | Date;
          environment?: null | string;
          id: string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          model?: null | string;
          modelParameters?: null | {
              [key: string]: components["schemas"]["MapValue"];
          };
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          promptName?: null | string;
          promptVersion?: null | number;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          usage?: {
              input?: null | number;
              inputCost?: null | number;
              output?: null | number;
              outputCost?: null | number;
              total?: null | number;
              totalCost?: null | number;
              unit?:
                  | "CHARACTERS"
                  | "TOKENS"
                  | "MILLISECONDS"
                  | "SECONDS"
                  | "IMAGES"
                  | "REQUESTS";
          } | {
              completionTokens?: null | number;
              promptTokens?: null | number;
              totalTokens?: null | number;
          };
          usageDetails?: {
              [key: string]: number;
          } | {
              completion_tokens: number;
              completion_tokens_details?: null | {
                  [key: string]: number;
              };
              prompt_tokens: number;
              prompt_tokens_details?: null | {
                  [key: string]: number;
              };
              total_tokens: number;
          };
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns this

  • Parameters

    • body: Omit<{
          endTime?: null | Date;
          environment?: null | string;
          id: string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns this

  • Returns Promise<void>

  • Parameters

    • publicKey: string
    • OptionalsecretKey: string

    Returns {
        Authorization: string;
    }

    • Authorization: string
  • Creates a dataset. Upserts the dataset if it already exists.

    Parameters

    • dataset: string | {
          description?: string;
          metadata?: any;
          name: string;
      }

      Can be either a string (name) or an object with name, description and metadata

    Returns Promise<Omit<{
        createdAt: Date;
        description?: null | string;
        id: string;
        metadata?: any;
        name: string;
        projectId: string;
        updatedAt: Date;
    }, "externalId" | "traceIdType">>

    A promise that resolves to the response of the create operation.

  • Creates a dataset item. Upserts the item if it already exists.

    Parameters

    • body: Omit<{
          datasetName: string;
          expectedOutput?: any;
          id?: null | string;
          input?: any;
          metadata?: any;
          sourceObservationId?: null | string;
          sourceTraceId?: null | string;
          status?: "ACTIVE" | "ARCHIVED";
      }, "externalId" | "traceIdType">

      The body of the dataset item to be created.

    Returns Promise<Omit<{
        createdAt: Date;
        datasetId: string;
        datasetName: string;
        expectedOutput?: any;
        id: string;
        input?: any;
        metadata?: any;
        sourceObservationId?: null | string;
        sourceTraceId?: null | string;
        status: "ACTIVE" | "ARCHIVED";
        updatedAt: Date;
    }, "externalId" | "traceIdType">>

    A promise that resolves to the response of the create operation.

  • Parameters

    • body: Omit<{
          datasetItemId: string;
          metadata?: any;
          observationId?: null | string;
          runDescription?: null | string;
          runName: string;
          traceId?: null | string;
      }, "externalId" | "traceIdType">

    Returns Promise<Omit<{
        createdAt: Date;
        datasetItemId: string;
        datasetRunId: string;
        datasetRunName: string;
        id: string;
        observationId?: null | string;
        traceId: string;
        updatedAt: Date;
    }, "externalId" | "traceIdType">>

  • Parameters

    • body: CreateChatPromptBody

    Returns Promise<ChatPromptClient>

  • Parameters

    • body: CreateTextPromptBody

    Returns Promise<TextPromptClient>

  • Parameters

    • body: CreateLangfusePromptBody

    Returns Promise<{
        type: "chat";
    } & {
        prompt: {
            content: string;
            role: string;
        }[];
    } & {
        commitMessage?: null | string;
        config: unknown;
        labels: string[];
        name: string;
        tags: string[];
        version: number;
    } | {
        type: "text";
    } & {
        prompt: string;
    } & {
        commitMessage?: null | string;
        config: unknown;
        labels: string[];
        name: string;
        tags: string[];
        version: number;
    }>

  • Parameters

    • Optionalenabled: boolean

    Returns void

  • ** QUEUEING AND FLUSHING *

    Parameters

    • type:
          | "trace-create"
          | "score-create"
          | "span-create"
          | "span-update"
          | "generation-create"
          | "generation-update"
          | "event-create"
          | "sdk-log"
          | "observation-create"
          | "observation-update"
    • body: EventBody

    Returns void

  • Parameters

    • body: Omit<{
          environment?: null | string;
          id?: null | string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns LangfuseEventClient

  • Parameters

    • body: Omit<{
          environment?: null | string;
          id?: null | string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns string

  • Parameters

    • url: string
    • options: LangfuseFetchOptions

    Returns Promise<LangfuseFetchResponse>

  • Parameters

    • id: string

    Returns Promise<Omit<{
        contentLength: number;
        contentType: string;
        mediaId: string;
        uploadedAt: string;
        url: string;
        urlExpiry: string;
    }, "externalId" | "traceIdType">>

  • Parameters

    • observationId: string

    Returns Promise<{
        data: Omit<{
            calculatedInputCost?: null | number;
            calculatedOutputCost?: null | number;
            calculatedTotalCost?: null | number;
            completionStartTime?: null | Date;
            costDetails?: null | {
                [key: string]: number;
            };
            endTime?: null | Date;
            environment?: null | string;
            id: string;
            input?: any;
            inputPrice?: null | number;
            latency?: null | number;
            level:
                | "DEBUG"
                | "DEFAULT"
                | "WARNING"
                | "ERROR";
            metadata?: any;
            model?: null | string;
            modelId?: null | string;
            modelParameters?: null | {
                [key: string]: components["schemas"]["MapValue"];
            };
            name?: null | string;
            output?: any;
            outputPrice?: null | number;
            parentObservationId?: null | string;
            promptId?: null | string;
            promptName?: null | string;
            promptVersion?: null | number;
            startTime: Date;
            statusMessage?: null | string;
            timeToFirstToken?: null | number;
            totalPrice?: null | number;
            traceId?: null | string;
            type: string;
            usage?: {
                input?: null | number;
                inputCost?: null | number;
                output?: null | number;
                outputCost?: null | number;
                total?: null | number;
                totalCost?: null | number;
                unit?:
                    | "CHARACTERS"
                    | "TOKENS"
                    | "MILLISECONDS"
                    | "SECONDS"
                    | "IMAGES"
                    | "REQUESTS";
            };
            usageDetails?: null | {
                [key: string]: number;
            };
            version?: null | string;
        }, "externalId" | "traceIdType">;
    }>

  • Parameters

    • Optionalquery: GetLangfuseObservationsQuery

    Returns Promise<Omit<{
        data: ({
            calculatedInputCost?: null | number;
            calculatedOutputCost?: null | number;
            calculatedTotalCost?: null | number;
            inputPrice?: null | number;
            latency?: null | number;
            modelId?: null | string;
            outputPrice?: null | number;
            promptName?: null | string;
            promptVersion?: null | number;
            timeToFirstToken?: null | number;
            totalPrice?: null | number;
        } & {
            completionStartTime?: null | string;
            costDetails?: null | {
                [key: string]: number;
            };
            endTime?: null | string;
            environment?: null | string;
            id: string;
            input?: unknown;
            level:
                | "DEBUG"
                | "DEFAULT"
                | "WARNING"
                | "ERROR";
            metadata?: unknown;
            model?: null | string;
            modelParameters?: null | {
                [key: string]: components["schemas"]["MapValue"];
            };
            name?: null | string;
            output?: unknown;
            parentObservationId?: null | string;
            promptId?: null | string;
            startTime: string;
            statusMessage?: null | string;
            traceId?: null | string;
            type: string;
            usage?: {
                input?: null | number;
                inputCost?: null | number;
                output?: null | number;
                outputCost?: null | number;
                total?: null | number;
                totalCost?: null | number;
                unit?:
                    | "CHARACTERS"
                    | "TOKENS"
                    | "MILLISECONDS"
                    | "SECONDS"
                    | "IMAGES"
                    | "REQUESTS";
            };
            usageDetails?: null | {
                [key: string]: number;
            };
            version?: null | string;
        })[];
        meta: {
            limit: number;
            page: number;
            totalItems: number;
            totalPages: number;
        };
    }, "externalId" | "traceIdType">>

  • Parameters

    • Optionalquery: GetLangfuseSessionsQuery

    Returns Promise<Omit<{
        data: {
            createdAt: string;
            id: string;
            projectId: string;
        }[];
        meta: {
            limit: number;
            page: number;
            totalItems: number;
            totalPages: number;
        };
    }, "externalId" | "traceIdType">>

  • Parameters

    • traceId: string

    Returns Promise<{
        data: Omit<{
            environment?: null | string;
            htmlPath: string;
            id: string;
            input?: any;
            latency: number;
            metadata?: any;
            name?: null | string;
            observations: ({
                calculatedInputCost?: null | number;
                calculatedOutputCost?: null | number;
                calculatedTotalCost?: null | number;
                inputPrice?: null | number;
                latency?: null | number;
                modelId?: null | string;
                outputPrice?: null | number;
                promptName?: null | string;
                promptVersion?: null | number;
                timeToFirstToken?: null | number;
                totalPrice?: null | number;
            } & {
                completionStartTime?: null | string;
                costDetails?: null | {
                    [key: string]: number;
                };
                endTime?: null | string;
                environment?: null | string;
                id: string;
                input?: unknown;
                level:
                    | "DEBUG"
                    | "DEFAULT"
                    | "WARNING"
                    | "ERROR";
                metadata?: unknown;
                model?: null | string;
                modelParameters?: null | {
                    [key: string]: (...)[(...)]["MapValue"];
                };
                name?: null | string;
                output?: unknown;
                parentObservationId?: null | string;
                promptId?: null | string;
                startTime: string;
                statusMessage?: null | string;
                traceId?: null | string;
                type: string;
                usage?: {
                    input?: null | number;
                    inputCost?: null | number;
                    output?: null | number;
                    outputCost?: null | number;
                    total?: null | number;
                    totalCost?: null | number;
                    unit?:
                        | "CHARACTERS"
                        | "TOKENS"
                        | "MILLISECONDS"
                        | "SECONDS"
                        | "IMAGES"
                        | "REQUESTS";
                };
                usageDetails?: null | {
                    [key: string]: number;
                };
                version?: null | string;
            })[];
            output?: any;
            public?: null | boolean;
            release?: null | string;
            scores: ({
                dataType: "NUMERIC";
            } & {
                value: number;
            } & {
                authorUserId?: null | string;
                comment?: null | string;
                configId?: null | string;
                createdAt: string;
                environment?: null | string;
                id: string;
                name: string;
                observationId?: null | string;
                queueId?: null | string;
                source: "ANNOTATION" | "API" | "EVAL";
                timestamp: string;
                traceId: string;
                updatedAt: string;
            } | {
                dataType: "CATEGORICAL";
            } & {
                stringValue: string;
                value?: null | number;
            } & {
                authorUserId?: null | string;
                comment?: null | string;
                configId?: null | string;
                createdAt: string;
                environment?: null | string;
                id: string;
                name: string;
                observationId?: null | string;
                queueId?: null | string;
                source: "ANNOTATION" | "API" | "EVAL";
                timestamp: string;
                traceId: string;
                updatedAt: string;
            } | {
                dataType: "BOOLEAN";
            } & {
                stringValue: string;
                value: number;
            } & {
                authorUserId?: null | string;
                comment?: null | string;
                configId?: null | string;
                createdAt: string;
                environment?: null | string;
                id: string;
                name: string;
                observationId?: null | string;
                queueId?: null | string;
                source: "ANNOTATION" | "API" | "EVAL";
                timestamp: string;
                traceId: string;
                updatedAt: string;
            })[];
            sessionId?: null | string;
            tags?: null | string[];
            timestamp: Date;
            totalCost: number;
            userId?: null | string;
            version?: null | string;
        }, "externalId" | "traceIdType">;
    }>

  • Parameters

    • Optionalquery: GetLangfuseTracesQuery

    Returns Promise<Omit<{
        data: ({
            htmlPath: string;
            latency: number;
            observations: string[];
            scores: string[];
            totalCost: number;
        } & {
            environment?: null | string;
            id: string;
            input?: unknown;
            metadata?: unknown;
            name?: null | string;
            output?: unknown;
            public?: null | boolean;
            release?: null | string;
            sessionId?: null | string;
            tags?: null | string[];
            timestamp: string;
            userId?: null | string;
            version?: null | string;
        })[];
        meta: {
            limit: number;
            page: number;
            totalItems: number;
            totalPages: number;
        };
    }, "externalId" | "traceIdType">>

  • Parameters

    • __namedParameters: {
          data: any;
          field: "input" | "output" | "metadata";
          observationId?: string;
          traceId: string;
      }
      • data: any
      • field: "input" | "output" | "metadata"
      • OptionalobservationId?: string
      • traceId: string

    Returns Promise<any>

  • Parameters

    • Optionalcallback: ((err?: any, data?: any) => void)
        • (err?, data?): void
        • Parameters

          • Optionalerr: any
          • Optionaldata: any

          Returns void

    Returns void

  • Asynchronously flushes all events that are not yet sent to the server. This function always resolves, even if there were errors when flushing. Errors are emitted as "error" events and the promise resolves.

    Returns Promise<void>

    A promise that resolves when the flushing is completed.

  • Parameters

    • body: Omit<Omit<{
          completionStartTime?: null | Date;
          costDetails?: null | {
              [key: string]: number;
          };
          endTime?: null | Date;
          environment?: null | string;
          id?: null | string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          model?: null | string;
          modelParameters?: null | {
              [key: string]: components["schemas"]["MapValue"];
          };
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          promptName?: null | string;
          promptVersion?: null | number;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          usage?: {
              input?: null | number;
              inputCost?: null | number;
              output?: null | number;
              outputCost?: null | number;
              total?: null | number;
              totalCost?: null | number;
              unit?:
                  | "CHARACTERS"
                  | "TOKENS"
                  | "MILLISECONDS"
                  | "SECONDS"
                  | "IMAGES"
                  | "REQUESTS";
          } | {
              completionTokens?: null | number;
              promptTokens?: null | number;
              totalTokens?: null | number;
          };
          usageDetails?: {
              [key: string]: number;
          } | {
              completion_tokens: number;
              completion_tokens_details?: null | {
                  [key: string]: number;
              };
              prompt_tokens: number;
              prompt_tokens_details?: null | {
                  [key: string]: number;
              };
              total_tokens: number;
          };
          version?: null | string;
      }, "externalId" | "traceIdType">, "promptName" | "promptVersion"> & PromptInput

    Returns LangfuseGenerationClient

  • Parameters

    • body: Omit<Omit<{
          completionStartTime?: null | Date;
          costDetails?: null | {
              [key: string]: number;
          };
          endTime?: null | Date;
          environment?: null | string;
          id?: null | string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          model?: null | string;
          modelParameters?: null | {
              [key: string]: components["schemas"]["MapValue"];
          };
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          promptName?: null | string;
          promptVersion?: null | number;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          usage?: {
              input?: null | number;
              inputCost?: null | number;
              output?: null | number;
              outputCost?: null | number;
              total?: null | number;
              totalCost?: null | number;
              unit?:
                  | "CHARACTERS"
                  | "TOKENS"
                  | "MILLISECONDS"
                  | "SECONDS"
                  | "IMAGES"
                  | "REQUESTS";
          } | {
              completionTokens?: null | number;
              promptTokens?: null | number;
              totalTokens?: null | number;
          };
          usageDetails?: {
              [key: string]: number;
          } | {
              completion_tokens: number;
              completion_tokens_details?: null | {
                  [key: string]: number;
              };
              prompt_tokens: number;
              prompt_tokens_details?: null | {
                  [key: string]: number;
              };
              total_tokens: number;
          };
          version?: null | string;
      }, "externalId" | "traceIdType">, "promptName" | "promptVersion"> & PromptInput

    Returns string

  • Returns any

  • Returns void

  • Parameters

    • name: string
    • Optionaloptions: {
          fetchItemsPageSize: number;
      }
      • fetchItemsPageSize: number

    Returns Promise<{
        description?: string;
        id: string;
        items: DatasetItem[];
        metadata?: any;
        name: string;
        projectId: string;
    }>

  • Parameters

    • id: string

    Returns Promise<Omit<{
        createdAt: Date;
        datasetId: string;
        datasetName: string;
        expectedOutput?: any;
        id: string;
        input?: any;
        metadata?: any;
        sourceObservationId?: null | string;
        sourceTraceId?: null | string;
        status: "ACTIVE" | "ARCHIVED";
        updatedAt: Date;
    }, "externalId" | "traceIdType">>

  • Parameters

    • params: Omit<{
          datasetName: string;
          runName: string;
      }, "externalId" | "traceIdType">

    Returns Promise<Omit<{
        createdAt: Date;
        datasetId: string;
        datasetName: string;
        datasetRunItems: {
            createdAt: string;
            datasetItemId: string;
            datasetRunId: string;
            datasetRunName: string;
            id: string;
            observationId?: null | string;
            traceId: string;
            updatedAt: string;
        }[];
        description?: null | string;
        id: string;
        metadata?: any;
        name: string;
        updatedAt: Date;
    }, "externalId" | "traceIdType">>

  • Parameters

    • datasetName: string
    • Optionalquery: {
          limit?: null | number;
          page?: null | number;
      }
      • Optionallimit?: null | number

        limit of items per page

      • Optionalpage?: null | number

        page number, starts at 1

    Returns Promise<Omit<{
        data: {
            createdAt: string;
            datasetId: string;
            datasetName: string;
            description?: null | string;
            id: string;
            metadata?: unknown;
            name: string;
            updatedAt: string;
        }[];
        meta: {
            limit: number;
            page: number;
            totalItems: number;
            totalPages: number;
        };
    }, "externalId" | "traceIdType">>

  • Returns string

  • Returns string

  • Type Parameters

    • T

    Parameters

    • key: LangfusePersistedProperty

    Returns undefined | T

  • Parameters

    • name: string
    • Optionalversion: number
    • Optionaloptions: {
          cacheTtlSeconds?: number;
          fallback?: string;
          fetchTimeoutMs?: number;
          label?: string;
          maxRetries?: number;
          type?: "text";
      }
      • OptionalcacheTtlSeconds?: number
      • Optionalfallback?: string
      • OptionalfetchTimeoutMs?: number
      • Optionallabel?: string
      • OptionalmaxRetries?: number
      • Optionaltype?: "text"

    Returns Promise<TextPromptClient>

  • Parameters

    • name: string
    • Optionalversion: number
    • Optionaloptions: {
          cacheTtlSeconds?: number;
          fallback?: Omit<{
              content: string;
              role: string;
          }, "externalId" | "traceIdType">[];
          fetchTimeoutMs?: number;
          label?: string;
          maxRetries?: number;
          type: "chat";
      }
      • OptionalcacheTtlSeconds?: number
      • Optionalfallback?: Omit<{
            content: string;
            role: string;
        }, "externalId" | "traceIdType">[]
      • OptionalfetchTimeoutMs?: number
      • Optionallabel?: string
      • OptionalmaxRetries?: number
      • type: "chat"

    Returns Promise<ChatPromptClient>

  • Parameters

    • name: string
    • Optionalversion: number
    • Optionallabel: string
    • OptionalmaxRetries: number
    • OptionalrequestTimeout: number

    Returns Promise<GetLangfusePromptResponse>

  • Returns string

  • Parameters

    • event: string
    • cb: ((...args: any[]) => void)
        • (...args): void
        • Parameters

          • Rest...args: any[]

          Returns void

    Returns (() => void)

      • (): void
      • Returns void

  • Parameters

    • type:
          | "trace-create"
          | "score-create"
          | "span-create"
          | "span-update"
          | "generation-create"
          | "generation-update"
          | "event-create"
          | "sdk-log"
          | "observation-create"
          | "observation-update"
    • body: EventBody

    Returns undefined | null | string

  • Parameters

    • type:
          | "trace-create"
          | "score-create"
          | "span-create"
          | "span-update"
          | "generation-create"
          | "generation-update"
          | "event-create"
          | "sdk-log"
          | "observation-create"
          | "observation-update"
    • body: EventBody

    Returns Promise<void>

  • Parameters

    • type:
          | "trace-create"
          | "score-create"
          | "span-create"
          | "span-update"
          | "generation-create"
          | "generation-update"
          | "event-create"
          | "sdk-log"
          | "observation-create"
          | "observation-update"
    • body: EventBody

    Returns Promise<void>

  • Parameters

    • queue: LangfuseQueueItem[]
    • MAX_MSG_SIZE: number
    • BATCH_SIZE_LIMIT: number

    Returns {
        processedItems: LangfuseQueueItem[];
        remainingItems: LangfuseQueueItem[];
    }

    • processedItems: LangfuseQueueItem[]
    • remainingItems: LangfuseQueueItem[]
  • Replaces the media reference strings in an object with base64 data URIs for the media content.

    This method recursively traverses an object (up to a maximum depth of 10) looking for media reference strings in the format "@@@langfuseMedia:...@@@". When found, it fetches the actual media content using the provided Langfuse client and replaces the reference string with a base64 data URI.

    If fetching media content fails for a reference string, a warning is logged and the reference string is left unchanged.

    Type Parameters

    • T

    Parameters

    • params: Omit<LangfuseMediaResolveMediaReferencesParams<T>, "langfuseClient">

      Configuration object

    Returns Promise<T>

    A deep copy of the input object with all media references replaced with base64 data URIs where possible

    const obj = {
    image: "@@@langfuseMedia:type=image/jpeg|id=123|source=bytes@@@",
    nested: {
    pdf: "@@@langfuseMedia:type=application/pdf|id=456|source=bytes@@@"
    }
    };

    const result = await LangfuseMedia.resolveMediaReferences({
    obj,
    langfuseClient
    });

    // Result:
    // {
    // image: "data:image/jpeg;base64,/9j/4AAQSkZJRg...",
    // nested: {
    // pdf: "data:application/pdf;base64,JVBERi0xLjcK..."
    // }
    // }
  • Parameters

    • body: Omit<{
          comment?: null | string;
          configId?: null | string;
          dataType?: "NUMERIC" | "BOOLEAN" | "CATEGORICAL";
          environment?: null | string;
          id?: null | string;
          name: string;
          observationId?: null | string;
          traceId: string;
          value: string | number;
      }, "externalId" | "traceIdType">

    Returns this

  • Parameters

    • body: Omit<{
          comment?: null | string;
          configId?: null | string;
          dataType?: "NUMERIC" | "BOOLEAN" | "CATEGORICAL";
          environment?: null | string;
          id?: null | string;
          name: string;
          observationId?: null | string;
          traceId: string;
          value: string | number;
      }, "externalId" | "traceIdType">

    Returns string

  • Type Parameters

    • T

    Parameters

    • key: LangfusePersistedProperty
    • value: null | T

    Returns void

  • Returns void

  • Returns Promise<void>

  • Parameters

    • body: Omit<{
          endTime?: null | Date;
          environment?: null | string;
          id?: null | string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns LangfuseSpanClient

  • Parameters

    • body: Omit<{
          endTime?: null | Date;
          environment?: null | string;
          id?: null | string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns string

  • Parameters

    • Optionalbody: Omit<{
          environment?: null | string;
          id?: null | string;
          input?: any;
          metadata?: any;
          name?: null | string;
          output?: any;
          public?: null | boolean;
          release?: null | string;
          sessionId?: null | string;
          tags?: null | string[];
          timestamp?: null | Date;
          userId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns LangfuseTraceClient

  • ** Handlers for each object type *

    Parameters

    • body: Omit<{
          environment?: null | string;
          id?: null | string;
          input?: any;
          metadata?: any;
          name?: null | string;
          output?: any;
          public?: null | boolean;
          release?: null | string;
          sessionId?: null | string;
          tags?: null | string[];
          timestamp?: null | Date;
          userId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns string

  • Truncates the event body if its byte size exceeds the specified maximum byte size. Emits a warning event if truncation occurs. The fields that may be truncated are: "input", "output", and "metadata". The fields are truncated in the order of their size, from largest to smallest until the total byte size is within the limit.

    Parameters

    • body: EventBody
    • maxByteSize: number

    Returns EventBody

  • Parameters

    • body: Omit<Omit<{
          completionStartTime?: null | Date;
          costDetails?: null | {
              [key: string]: number;
          };
          endTime?: null | Date;
          environment?: null | string;
          id: string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          model?: null | string;
          modelParameters?: null | {
              [key: string]: components["schemas"]["MapValue"];
          };
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          promptName?: null | string;
          promptVersion?: null | number;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          usage?: {
              input?: null | number;
              inputCost?: null | number;
              output?: null | number;
              outputCost?: null | number;
              total?: null | number;
              totalCost?: null | number;
              unit?:
                  | "CHARACTERS"
                  | "TOKENS"
                  | "MILLISECONDS"
                  | "SECONDS"
                  | "IMAGES"
                  | "REQUESTS";
          } | {
              completionTokens?: null | number;
              promptTokens?: null | number;
              totalTokens?: null | number;
          };
          usageDetails?: {
              [key: string]: number;
          } | {
              completion_tokens: number;
              completion_tokens_details?: null | {
                  [key: string]: number;
              };
              prompt_tokens: number;
              prompt_tokens_details?: null | {
                  [key: string]: number;
              };
              total_tokens: number;
          };
          version?: null | string;
      }, "externalId" | "traceIdType">, "promptName" | "promptVersion"> & PromptInput

    Returns string

  • Parameters

    • body: {
          name: string;
          newLabels: string[];
          version: number;
      }
      • name: string
      • newLabels: string[]
      • version: number

    Returns Promise<LangfusePromptClient>

  • Parameters

    • body: Omit<{
          newLabels: string[];
      }, "externalId" | "traceIdType"> & {
          name: string;
          version: number;
      }

    Returns Promise<LangfusePromptClient>

  • Parameters

    • body: Omit<{
          endTime?: null | Date;
          environment?: null | string;
          id: string;
          input?: any;
          level?:
              | "DEBUG"
              | "DEFAULT"
              | "WARNING"
              | "ERROR";
          metadata?: any;
          name?: null | string;
          output?: any;
          parentObservationId?: null | string;
          startTime?: null | Date;
          statusMessage?: null | string;
          traceId?: null | string;
          version?: null | string;
      }, "externalId" | "traceIdType">

    Returns string