ApiDoc BACKEND

MetricService

Table of Contents

Constants

NOT_FOUND_ERR  = 1
NOT_SAVED_ERR  = 2
SUCCESS_CODE  = 0

Methods

consumeSdCredits()  : array{period: array, ratio_used_not_used: array, event_types: array}
Desc: Retorna el consumo de créditos de SD por periodo, ratio de créditos usados vs no usados, y créditos usados por tipo de evento para un cliente específico o en general.
consumeSdCreditsByApiClient()  : array{period: array, ratio_used_not_used: array, event_types: array, metric_data: array|bool}
Desc: Retorna el consumo de créditos de SD por periodo, ratio de créditos usados vs no usados, y créditos usados por tipo de evento para un cliente específico o en general, junto con los créditos totales y consumidos.
getConfiguratorInteractions()  : array{credits_used: array, interactions: array}
Desc: Retorna el número de interacciones de personalización y créditos usados por cada cliente en un rango de tiempo determinado.
registerEvent()  : MetricEvents|null}|null
getPeriodFormat()  : string
Desc: Retorna el formato de período para la consulta.
getPrevCreditsRegister()  : null|MetricEvents
Desc: Obtiene el registro previo
getRangeFormats()  : array{start: string, end: string}
Desc: Obtiene formato de rango de fechas según el nombre.
registerCreditService()  : MetricEvents|null}
Desc: Registra el evento de crédito según la lógica de negocio definida,

Constants

Methods

consumeSdCredits()

Desc: Retorna el consumo de créditos de SD por periodo, ratio de créditos usados vs no usados, y créditos usados por tipo de evento para un cliente específico o en general.

public consumeSdCredits(int $api_client_id, int $user_id[, string $period = 'minute' ][, string $range = 'this_month' ]) : array{period: array, ratio_used_not_used: array, event_types: array}

Notes: n/a, Ref: n/a,

Date: 2026-03-18, Version: v0.2603.21,

Example: n/a

Parameters
$api_client_id : int
$user_id : int
$period : string = 'minute'
$range : string = 'this_month'
Return values
array{period: array, ratio_used_not_used: array, event_types: array}

consumeSdCreditsByApiClient()

Desc: Retorna el consumo de créditos de SD por periodo, ratio de créditos usados vs no usados, y créditos usados por tipo de evento para un cliente específico o en general, junto con los créditos totales y consumidos.

public consumeSdCreditsByApiClient([string $period = 'day' ][, string $range = 'this_month' ][, int|null $api_client_id = null ]) : array{period: array, ratio_used_not_used: array, event_types: array, metric_data: array|bool}

Notes: para el caso de cliente específico, se filtra por api_client_id, para el caso general no se filtra por ningún cliente.

Ref: n/a,

Date: 2026-03-18, Version: v0.2603.21,

Example: n/a

Parameters
$period : string = 'day'
$range : string = 'this_month'
$api_client_id : int|null = null
Return values
array{period: array, ratio_used_not_used: array, event_types: array, metric_data: array|bool}

getConfiguratorInteractions()

Desc: Retorna el número de interacciones de personalización y créditos usados por cada cliente en un rango de tiempo determinado.

public getConfiguratorInteractions([string $range = 'this_month' ]) : array{credits_used: array, interactions: array}

Notes: n/a, Ref: n/a,

Date: 2026-03-18, Version: v0.2603.21,

Example: n/a

Parameters
$range : string = 'this_month'
Return values
array{credits_used: array, interactions: array}

getPeriodFormat()

Desc: Retorna el formato de período para la consulta.

private getPeriodFormat(string $period) : string

Notes: n/a, Ref: n/a,

Date: 2026-03-18, Version: v0.2603.21,

Example: n/a

Parameters
$period : string
Return values
string

getRangeFormats()

Desc: Obtiene formato de rango de fechas según el nombre.

private getRangeFormats(string $name) : array{start: string, end: string}

Notes: n/a, Ref: n/a,

Date: 2026-03-18, Version: v0.2603.21,

Example: n/a

Parameters
$name : string
Return values
array{start: string, end: string}

registerCreditService()

Desc: Registra el evento de crédito según la lógica de negocio definida,

private registerCreditService(MetricEvents $model) : MetricEvents|null}

Notes: Para el evento de personalización, se verifica si hay un evento previo de creación de sesión o personalización con costo 1 (crédito usado) en un rango de tiempo de 10 minutos. Si se encuentra un evento previo dentro de ese rango, el nuevo evento se registra con costo 0 (crédito no usado), de lo contrario se registra con costo 1 (crédito usado). Para los eventos de creación de sesión, exportación y AR, se registran directamente con costo 1 (crédito usado).

Ref: n/a,

Date: 2026-03-18, Version: v0.2603.21,

Example: n/a

Parameters
$model : MetricEvents
Return values
MetricEvents|null}

        
On this page

Search results