Mis horas (versión preliminar)
Realice un seguimiento del tiempo y administre proyectos, tareas, clientes y etiquetas con selectores dinámicos. Este conector expone puntos de conexión para crear y buscar entidades.
Este conector está disponible en los siguientes productos y regiones:
| Service | Class | Regions |
|---|---|---|
| Copilot Studio | Premium | Todas las regiones de Power Automate excepto las siguientes: - Gobierno de EE. UU. (GCC) - Gobierno de EE. UU. (GCC High) - China Cloud operado por 21Vianet - Departamento de Defensa de EE. UU. (DoD) |
| Aplicaciones lógicas | Estándar | Todas las regiones de Logic Apps excepto las siguientes: - Regiones de Azure Government - Regiones de Azure China - Departamento de Defensa de EE. UU. (DoD) |
| Power Apps | Premium | Todas las regiones de Power Apps excepto las siguientes: - Gobierno de EE. UU. (GCC) - Gobierno de EE. UU. (GCC High) - China Cloud operado por 21Vianet - Departamento de Defensa de EE. UU. (DoD) |
| Power Automate | Premium | Todas las regiones de Power Automate excepto las siguientes: - Gobierno de EE. UU. (GCC) - Gobierno de EE. UU. (GCC High) - China Cloud operado por 21Vianet - Departamento de Defensa de EE. UU. (DoD) |
| Contacto | |
|---|---|
| Nombre | Mis horas |
| URL | https://myhours.com |
| Correo Electrónico | support@myhours.com |
| Metadatos del conector | |
|---|---|
| Publicador | Spica International |
| Sitio web | https://myhours.com |
| Directiva de privacidad | https://myhours.com/legal/personal-data-processing-addendum-for-my-hours-cloud-services |
| Categorías | Productividad |
Mis horas: introducción al conector
Realice un seguimiento del tiempo y administre proyectos, tareas, clientes y etiquetas mediante el conector My Hours.
Autenticación
Tipo: Clave de API (encabezado)
Al crear una conexión, escriba el valor completo en el campo único denominado Authorization con este formato exacto:
Ejemplo:
apikey 123abcXYZ
El conector envía este valor como encabezado Authorization en cada solicitud.
Dónde obtener la clave: Desde la configuración de la cuenta Mis horas. Cree o copie una clave de API. Mantenga el secreto y rátelo si se expone.
Acciones admitidas
- Crear cliente : cree un nuevo cliente.
- Buscar cliente por nombre : devuelve clientes que coinciden con el nombre proporcionado.
- Crear proyecto : cree un nuevo proyecto.
- Buscar proyecto por nombre : busque un proyecto por nombre.
- Agregar tarea al proyecto : cree una tarea en un proyecto seleccionado.
- Buscar tarea por nombre : busque una tarea de proyecto por nombre e identificador de proyecto.
- Crear etiqueta : cree una nueva etiqueta (con color hexadecimal).
- Buscar etiqueta por nombre : busque una etiqueta por nombre.
- Crear registro de tiempo : cree un nuevo registro de hora.
- Obtener registros de hora : recupere registros detallados de actividad y hora para un intervalo de fechas.
Desencadenadores admitidos
- Cuando se crea un nuevo proyecto: se desencadena cuando aparece un nuevo proyecto.
- Cuando se crea una nueva tarea: se desencadena cuando aparece una nueva tarea de proyecto.
- Cuando se crea un nuevo registro de hora: se activa cuando aparece un registro de hora nuevo.
Notas y límites de uso
-
Formato de autorización : la conexión requiere el prefijo
apikeyliteral seguido de la clave. Si omite el prefijo o agrega caracteres adicionales, es posible que se produzca un error en las solicitudes con 400 o 401. -
Formatos de fecha y hora : las fechas son AAAA-MM-DD. Los valores de fecha y hora son ISO 8601 (por ejemplo,
2025-09-05T08:30:00Zo un desplazamiento local). -
Creación de registros de tiempo : proporcione
duration(segundos) o ambosstartyend. Proporcionar los tres no es válido. - Selectores dinámicos : los campos Project, Task, Tag y User usan listas dinámicas; Asegúrese de que la cuenta tiene permiso para leer esas entidades o las listas pueden estar vacías.
-
Entorno : solo se admite el host de API de producción:
https://api2.myhours.com.
Control de errores
El conector devuelve códigos de estado HTTP estándar:
| Código | Meaning | Causas típicas |
|---|---|---|
| 200 | Success | Operaciones de lectura y lista. |
| 201 | Creado | Operaciones de creación correctas. |
| 400 | Solicitud incorrecta | Faltan o no son entradas no válidas, formato de encabezado incorrecto, campos de cuerpo en conflicto. |
| 500 | Error del servidor | Problema temporal de back-end o error inesperado. |
Solución de problemas
- Compruebe que el valor de Autorización usa el formato exacto
apikey YOUR_API_KEY. - Compruebe que los campos obligatorios están presentes y válidos.
- En Crear registro de tiempo, confirme que ha pasado
durationo (startyend).
Registro de cambios
- 1.0.0 : envío inicial para la certificación.
Support
- Sitio web: https://myhours.com/
- Correo electrónico: support@myhours.com
Creación de una conexión
El conector admite los siguientes tipos de autenticación:
| Predeterminado | Parámetros para crear una conexión. | Todas las regiones | No se puede compartir |
Predeterminado
Aplicable: Todas las regiones
Parámetros para crear una conexión.
Esta conexión no se puede compartir. Si la aplicación de energía se comparte con otro usuario, se pedirá a otro usuario que cree explícitamente una nueva conexión.
| Nombre | Tipo | Description | Obligatorio |
|---|---|---|---|
| Authorization | securestring | Autorización para esta API | Cierto |
Limitaciones
| Nombre | Llamadas | Período de renovación |
|---|---|---|
| Llamadas API por conexión | 100 | 60 segundos |
Acciones
| Agregar tarea al proyecto |
Cree una tarea en un proyecto seleccionado. |
| Buscar cliente por nombre |
Devuelve clientes que coinciden con el nombre proporcionado. |
| Buscar etiqueta por nombre |
Busque una etiqueta por su nombre. |
| Buscar proyecto por nombre |
Busque un proyecto por nombre. |
| Buscar tarea por nombre |
Busque una tarea de proyecto por nombre e identificador de proyecto. |
| Crear cliente |
Cree un nuevo registro de cliente. |
| Crear etiqueta |
Cree una nueva etiqueta. |
| Crear proyecto |
Cree un nuevo proyecto. |
| Obtener registros de hora |
Obtenga registros detallados de actividad o hora para un intervalo de fechas. |
| Registro de hora de creación |
Cree un registro de hora. Debe rellenarse el campo "duration" o los campos "hora de inicio" y "hora de finalización". En caso de que se rellenen los tres, obtendrá un error. |
Agregar tarea al proyecto
Cree una tarea en un proyecto seleccionado.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Id. de proyecto
|
projectId | True | integer |
Id. de proyecto. |
|
Nombre de la lista
|
listName | string |
Nombre de la lista de tareas. |
|
|
Nombre
|
name | True | string |
Nombre de la tarea. |
|
Description
|
description | string |
Descripción. |
Devoluciones
- Body
- ProjectTask
Buscar cliente por nombre
Devuelve clientes que coinciden con el nombre proporcionado.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Nombre de cliente
|
clientName | True | string |
Nombre de cliente con coincidencia exacta o parcial. |
Devoluciones
- response
- array of Client
Buscar etiqueta por nombre
Busque una etiqueta por su nombre.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Nombre de etiqueta
|
tagName | True | string |
Nombre de etiqueta. |
Devoluciones
- Body
- Tag
Buscar proyecto por nombre
Busque un proyecto por nombre.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Nombre de proyecto
|
projectName | True | string |
Nombre del proyecto. |
Devoluciones
- Body
- Project
Buscar tarea por nombre
Busque una tarea de proyecto por nombre e identificador de proyecto.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Nombre de tarea
|
projectTaskName | True | string |
Nombre de la tarea. |
|
Id. de proyecto
|
projectId | True | integer |
Id. de proyecto. |
Devoluciones
- Body
- ProjectTask
Crear cliente
Cree un nuevo registro de cliente.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Nombre
|
Name | True | string |
Nombre de cliente. |
Devoluciones
- Body
- Client
Crear etiqueta
Cree una nueva etiqueta.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Nombre de etiqueta
|
name | True | string |
Nombre de etiqueta. |
|
Color hexadecimal
|
hexColor | True | string |
Color hexadecimal en |
Devoluciones
- Body
- Tag
Crear proyecto
Cree un nuevo proyecto.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Nombre
|
name | True | string |
Nombre del proyecto. |
|
Id. de cliente
|
clientId | integer |
Id. de cliente. |
|
|
Notas
|
notes | string |
Notas. |
|
|
Usuario asignado
|
autoAssignUserId | integer |
Usuario asignado al proyecto. |
Devoluciones
- Body
- Project
Obtener registros de hora
Obtenga registros detallados de actividad o hora para un intervalo de fechas.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Fecha de
|
dateFrom | True | date |
Fecha de inicio en formato aaaa-MM-DD. |
|
Fecha a
|
dateTo | True | date |
Fecha de finalización en formato aaaa-MM-DD. |
Devoluciones
Registro de hora de creación
Cree un registro de hora. Debe rellenarse el campo "duration" o los campos "hora de inicio" y "hora de finalización". En caso de que se rellenen los tres, obtendrá un error.
Parámetros
| Nombre | Clave | Requerido | Tipo | Description |
|---|---|---|---|---|
|
Fecha
|
date | True | date |
Fecha en formato aaaa-MM-DD. |
|
Hora de inicio
|
start | date-time |
Hora de inicio en formato UTC o ISO 8601 local. |
|
|
Hora de finalización
|
end | date-time |
Hora de finalización en formato UTC o ISO 8601 local. |
|
|
Duración
|
duration | integer |
Duración en segundos. |
|
|
Description
|
Note | string |
Nota. |
|
|
Id. de proyecto
|
ProjectId | integer |
Id. de proyecto. |
|
|
Id. de tarea
|
TaskId | integer |
Id. de tarea. |
|
|
Identificador de etiqueta
|
TagId | integer |
Identificador de etiqueta. |
Devoluciones
- Body
- TimeLog
Desencadenadores
| Cuando se crea un nuevo proyecto |
Se desencadena cuando se crea un nuevo proyecto. |
| Cuando se crea un nuevo registro de hora |
Se desencadena cuando se crea un registro de hora nuevo. |
| Cuando se crea una nueva tarea |
Se desencadena cuando se crea una nueva tarea de proyecto. |
Cuando se crea un nuevo proyecto
Cuando se crea un nuevo registro de hora
Cuando se crea una nueva tarea
Se desencadena cuando se crea una nueva tarea de proyecto.
Devoluciones
Definiciones
TimeSlice
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
id
|
id | integer | |
|
duration
|
duration | integer | |
|
startTime
|
startTime | string | |
|
endTime
|
endTime | string | |
|
corriente
|
running | boolean | |
|
eliminado
|
deleted | boolean |
Datos adjuntos
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
fileName
|
fileName | string | |
|
fileUrl
|
fileUrl | string | |
|
id
|
id | integer |
Etiqueta
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
nombre
|
name | string | |
|
hexColor
|
hexColor | string | |
|
Archivados
|
archived | boolean | |
|
dateArchived
|
dateArchived | string | |
|
id
|
id | integer |
Client
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
nombre
|
name | string | |
|
contactName
|
contactName | string | |
|
contactoCorreo electrónico
|
contactEmail | string | |
|
contactTeléfono
|
contactPhone | string | |
|
address
|
address | string | |
|
customId
|
customId | string | |
|
customFieldValues
|
customFieldValues | string | |
|
id
|
id | integer |
Proyecto
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
invoiceMethod
|
invoiceMethod | integer | |
|
tasa
|
rate | float | |
|
budgetType
|
budgetType | integer | |
|
budgetValue
|
budgetValue | integer | |
|
budgetAlertPercent
|
budgetAlertPercent | integer | |
|
notas
|
notes | string | |
|
aprobado
|
approved | boolean | |
|
roundType
|
roundType | integer | |
|
roundInterval
|
roundInterval | integer | |
|
firstLogDate
|
firstLogDate | string | |
|
budgetTarget
|
budgetTarget | integer | |
|
budgetPeriodType
|
budgetPeriodType | string | |
|
startDate
|
startDate | string | |
|
dueDate
|
dueDate | string | |
|
dateCreated
|
dateCreated | string | |
|
createdByUserId
|
createdByUserId | integer | |
|
createdByUserName
|
createdByUserName | string | |
|
facturable
|
billable | boolean | |
|
customFieldValues
|
customFieldValues | string | |
|
clientId
|
clientId | integer | |
|
clientName
|
clientName | string | |
|
clientCustomId
|
clientCustomId | string | |
|
nombre
|
name | string | |
|
Archivados
|
archived | boolean | |
|
customId
|
customId | string | |
|
id
|
id | integer |
ProjectTask
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
nombre
|
name | string | |
|
orderNo
|
orderNo | integer | |
|
descripción
|
description | string | |
|
completado
|
completed | boolean | |
|
Archivados
|
archived | boolean | |
|
startDate
|
startDate | string | |
|
dueDate
|
dueDate | string | |
|
tasa
|
rate | float | |
|
billableByDefault
|
billableByDefault | boolean | |
|
budgetValue
|
budgetValue | float | |
|
budgetSpent
|
budgetSpent | float | |
|
budgetSpentPercentage
|
budgetSpentPercentage | float | |
|
projectBudgetType
|
projectBudgetType | integer | |
|
projectTaskUserIds
|
projectTaskUserIds | array of integer | |
|
customFieldValues
|
customFieldValues | string | |
|
customId
|
customId | string | |
|
projectCustomId
|
projectCustomId | string | |
|
clientCustomId
|
clientCustomId | string | |
|
id
|
id | integer |
TimeLog
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
nota
|
note | string | |
|
date
|
date | string | |
|
duration
|
duration | integer | |
|
nombre de usuario
|
userName | string | |
|
Nombre del proyecto
|
projectName | string | |
|
taskName
|
taskName | string | |
|
clientName
|
clientName | string | |
|
corriente
|
running | boolean | |
|
startTime
|
startTime | string | |
|
endTime
|
endTime | string | |
|
veces
|
times | array of TimeSlice | |
|
estado
|
status | integer | |
|
projectId
|
projectId | integer | |
|
taskId
|
taskId | integer | |
|
facturable
|
billable | boolean | |
|
gasto
|
expense | float | |
|
userId
|
userId | integer | |
|
billableRate
|
billableRate | float | |
|
billableAmount
|
billableAmount | float | |
|
laborRate
|
laborRate | float | |
|
laborCost
|
laborCost | float | |
|
customField1Name
|
customField1Name | string | |
|
customField2Name
|
customField2Name | string | |
|
customField3Name
|
customField3Name | string | |
|
customField1Value
|
customField1Value | string | |
|
customField2Value
|
customField2Value | string | |
|
customField3Value
|
customField3Value | string | |
|
tags
|
tags | string | |
|
durationInHours
|
durationInHours | float | |
|
id
|
id | integer | |
|
tagsData
|
tagsData | array of Tag | |
|
attachments
|
attachments | array of Attachment |
ActivityLogRow
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
logId
|
logId | integer | |
|
userId
|
userId | integer | |
|
date
|
date | string | |
|
teamsNames
|
teamsNames | string | |
|
nombre de usuario
|
userName | string | |
|
userCustomId
|
userCustomId | string | |
|
clientId
|
clientId | integer | |
|
clientName
|
clientName | string | |
|
clientCustomId
|
clientCustomId | string | |
|
projectId
|
projectId | integer | |
|
Nombre del proyecto
|
projectName | string | |
|
projectCustomId
|
projectCustomId | string | |
|
projectStartDate
|
projectStartDate | string | |
|
projectDueDate
|
projectDueDate | string | |
|
projectBudgetType
|
projectBudgetType | string | |
|
projectBudgetTargetTarget
|
projectBudgetTarget | string | |
|
projectBudgetPeriodType
|
projectBudgetPeriodType | string | |
|
projectBudgetValue
|
projectBudgetValue | integer | |
|
taskListName
|
taskListName | string | |
|
taskId
|
taskId | integer | |
|
taskName
|
taskName | string | |
|
taskCustomId
|
taskCustomId | string | |
|
taskStartDate
|
taskStartDate | string | |
|
taskDueDate
|
taskDueDate | string | |
|
taskCompleted
|
taskCompleted | boolean | |
|
userCustomFieldValues
|
userCustomFieldValues | string | |
|
projectCustomFieldValues
|
projectCustomFieldValues | string | |
|
clientCustomFieldValues
|
clientCustomFieldValues | string | |
|
taskCustomFieldValues
|
taskCustomFieldValues | string | |
|
tags
|
tags | string | |
|
tasa
|
rate | float | |
|
facturable
|
billable | boolean | |
|
inLockedPeriod
|
inLockedPeriod | boolean | |
|
billableAmount
|
billableAmount | float | |
|
importe
|
amount | float | |
|
laborCost
|
laborCost | float | |
|
laborRate
|
laborRate | float | |
|
logDuration
|
logDuration | integer | |
|
logDurationBillable
|
logDurationBillable | integer | |
|
laborDuration
|
laborDuration | integer | |
|
startEndTime
|
startEndTime | string | |
|
gasto
|
expense | float | |
|
billableExpense
|
billableExpense | float | |
|
costo
|
cost | float | |
|
nota
|
note | string | |
|
estado
|
status | string | |
|
ID de factura
|
invoiceId | integer | |
|
Facturado
|
invoiced | boolean | |
|
billableHours
|
billableHours | integer | |
|
billableHoursLogBillable
|
billableHoursLogBillable | integer | |
|
laborHours
|
laborHours | integer | |
|
customField1
|
customField1 | integer | |
|
customField2
|
customField2 | integer | |
|
customField3
|
customField3 | integer | |
|
equilibrar
|
balance | integer | |
|
monthOfYear
|
monthOfYear | string | |
|
weekNo
|
weekNo | integer | |
|
weekOfYear
|
weekOfYear | string | |
|
teams
|
teams | array of string | |
|
corriente
|
running | boolean | |
|
startTime
|
startTime | string | |
|
endTime
|
endTime | string | |
|
veces
|
times | array of TimeSlice | |
|
tagsData
|
tagsData | array of Tag | |
|
attachments
|
attachments | array of Attachment | |
|
roundType
|
roundType | string | |
|
invoicedAmount
|
invoicedAmount | float | |
|
uninvoicedAmount
|
uninvoicedAmount | float |
ActivityReportResponse
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
body
|
body | array of ActivityLogRow |
TriggerLogsEnvelope
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
logs
|
logs | array of TimeLog |
TriggerProjectsEnvelope
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
projects
|
projects | array of object | |
|
clientId
|
projects.clientId | integer | |
|
clientName
|
projects.clientName | string | |
|
clientCustomId
|
projects.clientCustomId | string | |
|
nombre
|
projects.name | string | |
|
customId
|
projects.customId | string | |
|
id
|
projects.id | integer |
TriggerProjectTasksEnvelope
| Nombre | Ruta de acceso | Tipo | Description |
|---|---|---|---|
|
projectTasks
|
projectTasks | array of object | |
|
projectId
|
projectTasks.projectId | integer | |
|
listName
|
projectTasks.listName | string | |
|
listOrderNo
|
projectTasks.listOrderNo | integer | |
|
nombre
|
projectTasks.name | string | |
|
orderNo
|
projectTasks.orderNo | integer | |
|
descripción
|
projectTasks.description | string | |
|
tasa
|
projectTasks.rate | float | |
|
budgetValue
|
projectTasks.budgetValue | float | |
|
projectBudgetType
|
projectTasks.projectBudgetType | integer | |
|
customId
|
projectTasks.customId | string | |
|
billableByDefault
|
projectTasks.billableByDefault | boolean | |
|
projectCustomId
|
projectTasks.projectCustomId | string | |
|
clientCustomId
|
projectTasks.clientCustomId | string | |
|
id
|
projectTasks.id | integer |