Última actualización: 9 de noviembre de 2026
Cambio de proveedor y datos
Cómo recuperar tus datos o llevarlos a otro servicio, qué datos se entregan y dónde se presta el servicio.
1. Cómo pedir tus datos o cambiar de proveedor
Un administrador del cliente lo pide por email a info@citaia.es. Puede pedir que llevemos los datos a otro proveedor o a sus propios sistemas, o que los borremos. Las reglas completas están en la cláusula 25 de las Condiciones de Servicio.
- El preaviso es de 15 días naturales como máximo y el cambio se completa en 30 días naturales como máximo.
- Después tienes al menos 30 días naturales más para recuperar los datos. Pasado ese plazo, se borran.
- El cambio, la ayuda y la entrega de datos no tienen coste.
2. Qué recibes y en qué formato
Un archivo JSON (UTF-8) con todos los datos de tu empresa, ordenados en las listas de la sección 3. Cada registro conserva su identificador y los identificadores de los registros con los que se relaciona. El propio archivo incluye una sección fields que describe cada lista, sus campos, su tipo y a qué lista apunta cada identificador. Las fechas van en formato ISO 8601.
Los archivos que guardaste en la sección de documentos se entregan tal como están guardados, en su formato original.
No se entregan las contraseñas, claves de acceso ni otras credenciales; el software de Citaia; ni qué modelos, regiones o rutas técnicas usa Citaia. Los textos, instrucciones y ajustes que escribiste para tu asistente sí se entregan. El nuevo servicio puede no tener todas las funciones de Citaia.
3. Registro de datos exportables
Esta es la lista completa de datos y campos que contiene la exportación. Se genera a partir del mismo código que la produce.
company: Datos y ajustes de la empresa, incluidos los textos del asistente
idINTEGERnameVARCHARdata_controller_nameVARCHAR(200)privacy_contact_emailVARCHAR(254)notice_emailVARCHAR(254)ai_booking_enabledBOOLEANlead_follow_up_enabledBOOLEANrefund_window_hoursINTEGERprivacy_policy_urlVARCHAR(1000)catalog_revisionBIGINTbusiness_typeVARCHARpanel_product_modeVARCHAR(20)default_timezoneVARCHAR(64)ai_infoTEXTai_faqTEXTai_neverTEXTai_casesJSONwebchat_enabledBOOLEANwebchat_widget_titleVARCHARwebchat_widget_subtitleVARCHARwebchat_widget_ctaVARCHARwebchat_widget_sizeINTEGERwebchat_widget_shapeVARCHARwebchat_widget_opacityINTEGERwebchat_widget_border_widthFLOATwebchat_widget_border_colorVARCHARwebchat_welcome_messageTEXTwebchat_brand_colorVARCHARwebchat_brand_visual_modeVARCHARwebchat_brand_gradient_fromVARCHARwebchat_brand_gradient_toVARCHARwebchat_header_bg_modeVARCHARwebchat_header_gradient_toVARCHARwebchat_header_text_colorVARCHARwebchat_font_familyVARCHARwebchat_launcher_font_familyVARCHARwebchat_launcher_label_positionVARCHARwebchat_installation_activeBOOLEANwebchat_installation_updated_atDATETIMEwebchat_installation_updated_by_user_idINTEGERwebchat_widget_positionVARCHARwebchat_logo_urlVARCHARwebchat_bubble_logo_urlVARCHARwebchat_logo_bg_colorVARCHARpanel_logo_urlVARCHARlogo_urlTEXTwebchat_chat_sizeINTEGERwebchat_bubble_iconVARCHARwebchat_logo_iconVARCHARwebchat_streaming_enabledBOOLEANwebchat_ai_message_styleVARCHARis_landing_demoBOOLEANcitaia_number_requested_atDATETIMEallowed_originsJSONcreated_viaVARCHARdemo_profiles_enabledBOOLEANdata_levelVARCHAR(12)fast_decisionsBOOLEANai_usage_limitsJSONcountry_codeVARCHAR(2)
locations: Centros
idINTEGERnameVARCHARslugVARCHARcompany_idINTEGER -> company.idaddressVARCHARcityVARCHARphoneVARCHARwhatsapp_numberVARCHARreception_phoneVARCHARreception_line_checkVARCHAR(16)reception_line_checked_atDATETIMEemailVARCHARtimezoneVARCHAR(64)require_phoneBOOLEANrequire_emailBOOLEANminimum_advance_hoursINTEGERminimum_cancellation_notice_hoursINTEGERallow_late_cancellationBOOLEANmaximum_advance_daysINTEGERauto_cancellation_minutesINTEGERauto_cancellation_enabledBOOLEANscheduling_interval_minutesINTEGERdescriptionVARCHARlatFLOATlonFLOATgeocoded_addressVARCHARopen_time_1VARCHAR(5)close_time_1VARCHAR(5)open_time_2VARCHAR(5)close_time_2VARCHAR(5)open_time_3VARCHAR(5)close_time_3VARCHAR(5)open_time_4VARCHAR(5)close_time_4VARCHAR(5)
location_schedules: Horario de cada centro
idINTEGERlocation_idINTEGER -> locations.idday_of_weekINTEGERstart_timeTIMEend_timeTIMEseason_nameVARCHAR(40)season_startSMALLINTseason_endSMALLINT
services: Servicios
idINTEGERnameVARCHARduration_minutesINTEGERdescriptionVARCHARpublic_short_descriptionVARCHAR(600)colorVARCHARiconVARCHARprice_centsINTEGERprepay_modeVARCHAR(10)deposit_centsINTEGERparent_service_idINTEGER -> services.idvariant_nameVARCHAR(80)duration_from_parentBOOLEANprice_from_parentBOOLEAN
service_locations: Qué servicios da cada centro, con sus ajustes en ese centro
service_idINTEGER -> services.idlocation_idINTEGER -> locations.idpriorityINTEGERprofessional_preference_enabledBOOLEANauto_confirm_enabledBOOLEANlite_public_enabledBOOLEANlite_requires_confirmation_overrideBOOLEANwithout_professionalBOOLEAN
professionals: Profesionales y salas
has_connection_codeBOOLEANidINTEGERnameVARCHARphoneVARCHARemailVARCHARpublic_nameVARCHAR(80)avatar_urlVARCHARpublic_avatar_urlVARCHARdescriptionTEXTis_capacity_placeholderBOOLEANis_roomBOOLEANlocation_idINTEGER -> locations.idcreated_atDATETIMEupdated_atDATETIMEservice_idslista de INTEGER -> services.id (servicios que hace)
professional_schedules: Horario de cada profesional
idINTEGERemployee_idINTEGER -> professionals.idday_of_weekINTEGERstart_timeTIMEend_timeTIMEservice_idslista de INTEGER -> services.id (servicios de ese horario; vacía = todos)
absences: Ausencias y bloqueos de agenda
idINTEGERcompany_idINTEGER -> company.idlocation_idINTEGER -> locations.idemployee_idINTEGER -> professionals.idstart_timeDATETIMEend_timeDATETIMEreasonVARCHARis_all_dayBOOLEANconnection_idINTEGER -> connections.idexternal_idVARCHAR(64)created_atDATETIME
clients: Clientes (pacientes y contactos)
idINTEGERcompany_idINTEGER -> company.idnameVARCHAR(120)phoneVARCHAR(32)emailVARCHAR(254)team_notesTEXTai_noteVARCHAR(300)reminder_by_callBOOLEANcreated_atDATETIMEupdated_atDATETIME
appointments: Citas
idINTEGERticket_codeVARCHARchat_idVARCHARmetrics_originVARCHAR(16)move_source_idINTEGERmove_source_revisionINTEGERprofessional_choiceVARCHAR(16)client_nameVARCHARclient_phoneVARCHARclient_emailVARCHARclient_idINTEGER -> clients.idstart_timeDATETIMEend_timeDATETIMEstatusVARCHARnotification_revisionINTEGERreminders_reconciled_revisionINTEGERchange_seqBIGINTsync_versionINTEGERnotesTEXTis_ai_bookedBOOLEANbooking_sourceVARCHAR(30)utm_sourceVARCHAR(100)utm_mediumVARCHAR(100)utm_campaignVARCHAR(100)created_atDATETIMEpending_sinceDATETIMElate_cancel_requested_atDATETIMElate_cancelled_atDATETIMEcancellation_originVARCHAR(12)cancel_requested_atDATETIMElocation_idINTEGER -> locations.idservice_idINTEGER -> services.idemployee_idINTEGER -> professionals.idroom_idINTEGER -> professionals.idseries_idINTEGER -> appointment_series.idreminder_callVARCHAR(12)reminder_call_triesINTEGERreminder_call_atDATETIME
appointment_series: Citas fijas que se repiten cada semana o cada 2 semanas
idINTEGERlocation_idINTEGER -> locations.idemployee_idINTEGER -> professionals.idservice_idINTEGER -> services.idclient_nameVARCHARclient_phoneVARCHARclient_emailVARCHARnotesTEXTfirst_dateDATElocal_startTIMEduration_minutesINTEGERinterval_weeksINTEGERend_dateDATEmaterialized_untilDATEskipped_datesJSONcreated_atDATETIME
appointment_change_requests: Peticiones de cambio de cita
idINTEGERsource_appointment_idINTEGER -> appointments.idsource_revisionINTEGERtarget_location_idINTEGERtarget_service_idINTEGERtarget_employee_idINTEGERtarget_startDATETIMEtarget_endDATETIMEprofessional_choiceVARCHAR(16)statusVARCHAR(16)requested_viaVARCHAR(20)requested_byVARCHAR(255)created_atDATETIMEadmitted_atDATETIMEexpires_atDATETIMEresolved_atDATETIMEresolved_by_user_idINTEGER
booking_requests: Solicitudes de cita pendientes de atender
idINTEGERchat_idVARCHARcompany_idINTEGER -> company.idlocation_idINTEGER -> locations.idscope_idINTEGER -> chat_assistants.idchannelVARCHAR(20)client_nameVARCHARclient_emailVARCHARclient_phoneVARCHARclient_idINTEGER -> clients.idstatusVARCHAR(16)reasonVARCHAR(24)summaryTEXTpartial_dataJSONnotified_atDATETIMEnotice_attemptsINTEGERnotice_started_atDATETIMEhandled_atDATETIMEhandled_by_user_idINTEGER -> panel_users.idfollow_up_due_atDATETIMEfollow_up_statusVARCHAR(16)follow_up_noteVARCHAR(120)created_atDATETIMEupdated_atDATETIME
chat_assistants: Asistentes de chat y WhatsApp y sus ajustes
idINTEGERnameVARCHARcompany_idINTEGER -> company.idagent_nameVARCHARsystem_prompt_extraTEXTlanguageVARCHARtoneVARCHARappointment_initial_statusVARCHARis_mainBOOLEANwhatsapp_enabledBOOLEANwebchat_enabledBOOLEANwebchat_widget_titleVARCHARwebchat_widget_subtitleVARCHARwebchat_welcome_messageTEXTwebchat_brand_colorVARCHARwebchat_brand_visual_modeVARCHARwebchat_brand_gradient_fromVARCHARwebchat_brand_gradient_toVARCHARwebchat_logo_urlVARCHARwebchat_bubble_logo_urlVARCHARwebchat_logo_bg_colorVARCHARwebchat_chat_sizeINTEGERwebchat_bubble_iconVARCHARwebchat_logo_iconVARCHARwebchat_widget_shapeVARCHARwebchat_widget_opacityINTEGERwebchat_widget_border_widthFLOATwebchat_widget_border_colorVARCHARwebchat_header_bg_modeVARCHARwebchat_header_gradient_toVARCHARwebchat_header_text_colorVARCHARwebchat_font_familyVARCHARwebchat_launcher_font_familyVARCHARwebchat_launcher_label_positionVARCHARwebchat_streaming_enabledBOOLEANwebchat_ai_message_styleVARCHARvoice_enabledBOOLEANvoice_nameVARCHARvoice_languageVARCHARvoice_demo_enabledBOOLEANvoice_record_transcriptBOOLEANvoice_call_disclaimerTEXTvoice_prompt_extraTEXT
conversations: Mensajes de chat; los de una misma conversación comparten chat_id
idINTEGERchat_idVARCHARscope_idINTEGER -> chat_assistants.idmetrics_originVARCHAR(16)roleVARCHARcontentTEXTcontent_typeVARCHARresponse_secondsFLOATlocation_idINTEGER -> locations.idcreated_atDATETIME
voice_assistants: Asistentes de voz y sus ajustes
idINTEGERcompany_idINTEGER -> company.idchat_scope_idINTEGER -> chat_assistants.idnameVARCHAR(120)public_nameVARCHAR(120)voice_nameVARCHAR(80)language_variantVARCHAR(16)toneVARCHAR(400)voice_prompt_extraTEXTis_defaultBOOLEANenabledBOOLEANfiller_keyboard_sound_enabledBOOLEANbarge_in_enabledBOOLEANcreated_atDATETIMEupdated_atDATETIME
calls: Llamadas
idINTEGERvoice_call_idVARCHAR(80)metrics_originVARCHAR(16)company_idINTEGER -> company.idvoice_agent_idINTEGER -> voice_assistants.idchat_scope_idINTEGER -> chat_assistants.idstarted_by_user_idINTEGER -> panel_users.idappointment_idINTEGER -> appointments.idchannelVARCHAR(24)statusVARCHAR(24)booking_resultVARCHAR(24)booking_statusVARCHAR(32)caller_nameVARCHAR(160)caller_phoneVARCHAR(40)titleVARCHAR(180)summaryTEXTmessage_countINTEGERduration_secondsINTEGERstarted_atDATETIMEended_atDATETIMEended_byVARCHAR(16)recording_deleted_atDATETIMEtransfer_statusVARCHAR(16)transfer_leg_idVARCHAR(128)last_activity_atDATETIMEcreated_atDATETIMEupdated_atDATETIME
call_transcripts: Transcripción de cada llamada, turno a turno
idINTEGERvoice_call_idVARCHAR(80)company_idINTEGERvoice_agent_idINTEGER -> voice_assistants.idchat_scope_idINTEGER -> chat_assistants.idturn_indexINTEGERroleVARCHAR(24)textTEXTcreated_atDATETIME
email_templates: Plantillas de correo
idINTEGERcompany_idINTEGER -> company.idnameVARCHARsubjectVARCHARbodyTEXTis_activeBOOLEANcreated_atDATETIMEupdated_atDATETIME
reminder_settings: Ajustes de recordatorios
idINTEGERcompany_idINTEGER -> company.idenabledBOOLEANoffsets_hoursJSONoffsets_minutesJSONchannelsJSONchannel_policyVARCHAR(40)channel_policy_manual_overrideBOOLEANsend_to_clientBOOLEANcall_offset_minutesINTEGERupdated_atDATETIMEcreated_atDATETIMEactivated_atDATETIME
booking_page: Página de reservas
idINTEGERcompany_idINTEGER -> company.idenabledBOOLEANlocked_by_adminBOOLEANslugVARCHAR(120)booking_scopeVARCHAR(20)show_workersBOOLEANdefault_requires_confirmationBOOLEANcontact_ai_verification_enabledBOOLEANtheme_configJSONcreated_atDATETIMEupdated_atDATETIME
panel_users: Usuarios del panel
idINTEGERusernameVARCHARfull_nameVARCHARemailVARCHARreset_expiresDATETIMEpending_emailVARCHARemail_change_expiresDATETIMEroleVARCHARpermissionsJSONsees_centre_agendaBOOLEANedits_own_scheduleBOOLEANappointment_noticesVARCHAR(8)avatar_urlVARCHARphoneVARCHARdescriptionTEXTcompany_idINTEGER -> company.idemployee_idINTEGER -> professionals.idcreated_atDATETIMEupdated_atDATETIME
panel_user_locations: Centros a los que accede cada usuario
user_idINTEGER -> panel_users.idlocation_idINTEGER -> locations.idpermissionsJSON
files: Archivos de la empresa; cada archivo se entrega aparte, en su formato original
idINTEGERcompany_idINTEGER -> company.idroot_folder_idINTEGER -> company_drive_folders.idnameVARCHAR(240)mime_typeVARCHAR(180)item_typeVARCHAR(24)size_bytesBIGINTmd5_checksumVARCHAR(64)statusVARCHAR(32)uploaded_by_user_idINTEGER -> panel_users.idlast_action_by_user_idINTEGER -> panel_users.idsynced_atDATETIMEcreated_atDATETIMEupdated_atDATETIME
4. Dónde se presta el servicio
La aplicación, su base de datos y los archivos se alojan en la Unión Europea, en los Países Bajos. Una copia de seguridad semanal de la base de datos se guarda en Suecia, también en la Unión Europea. Según las funciones que use cada cliente, otros servicios pueden tratar datos en otros países de la Unión Europea o fuera de ella, incluido Estados Unidos. Algunos proveedores son empresas de Estados Unidos o de grupos con sede allí, por lo que también les puede aplicar su derecho.
Cada cliente recibe por un canal privado la ficha de destinatarios: qué servicio interviene, dónde trata los datos y con qué garantías. Más información en destinatarios y transferencias.
5. Peticiones de autoridades de fuera de la Unión Europea
Citaia atiende las peticiones de autoridades de países de fuera de la Unión Europea solo en los casos que permiten el artículo 32 del Reglamento (UE) 2023/2854 y el artículo 48 del RGPD.
Cuando un proveedor trata datos personales fuera del Espacio Económico Europeo, la transferencia se basa en las garantías del capítulo V del RGPD que recoge su contrato, como las cláusulas contractuales tipo de la Comisión Europea o una decisión de adecuación. Los datos viajan cifrados (HTTPS) entre tu navegador y el servicio.