easywork-common-lib 1.0.1344 → 1.0.1348

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,339 +1,339 @@
1
- // drive/proto/drive.proto
2
- syntax = "proto3";
3
-
4
- package drive;
5
-
6
- // Define el mensaje que representa una carpeta.
7
- message FolderObject {
8
- string name = 1; // Nombre de la carpeta
9
- string metadata = 2; // Metadatos en formato JSON
10
- }
11
-
12
- // Representa la entidad propietaria de un archivo o carpeta.
13
- message OwnerEntity {
14
- string ownerId = 1; // Identificador del propietario
15
- string entityType = 2; // Tipo de entidad (e.g., usuario, organización)
16
- string relation = 3; // Relación del propietario con el recurso
17
- }
18
-
19
- // Representa un archivo para ser subido.
20
- message IFile {
21
- string name = 1; // Nombre del archivo
22
- int64 size = 2; // Tamaño del archivo en bytes
23
- string mimeType = 3; // Tipo MIME del archivo
24
- string s3Key = 4; // Clave del archivo en S3
25
- bytes filecontent = 5; // Contenido binario del archivo
26
- string metadata = 6; // Metadatos
27
- }
28
-
29
- message File {
30
- string id = 1; // Identificador del archivo creado
31
- string url = 2; // URL del archivo almacenado
32
- string name = 3; // Nombre del archivo creado
33
- string mimeType = 4; // Tipo MIME del archivo
34
- string folerId = 5; // Carpeta ubicación del archivo.
35
- }
36
-
37
- // Categorías para clasificar las carpetas de un recibo.
38
- enum ReceiptFolderCategory {
39
- factura = 0; // Categoría para facturas
40
- pago = 1; // Categoría para pagos recibidos
41
- }
42
-
43
- enum LeadDocumentFolderCategory {
44
- documentos = 0; // Categoría para documentos personales
45
- cotizacion = 1; // Categoría para cotizaciones
46
- perfil = 2; // Categoría perfiles
47
- poliza = 3; // Categoría carpeta polizas
48
- solicitud = 4; // Categoría carpeta solicitudes
49
- medica = 5;
50
- cotizacion_aprobada = 6;
51
- }
52
-
53
- enum ContactDocumentFolderCategory {
54
- documentos = 0; // Categoría para documentos personales
55
- perfil = 1; // Categoría perfiles
56
- poliza = 2; // Categoría carpeta polizas
57
- solicitud = 3; // Categoría carpeta solicitudes
58
- medica = 4;
59
- }
60
-
61
-
62
- // Consulta para especificar la categoría de los archivos subidos.
63
- message UploadFileToReceiptQueryDto {
64
- ReceiptFolderCategory category = 1; // Categoría del archivo
65
- }
66
-
67
- // Consulta para especificar la categoría de los archivos subidos en leads.
68
- message UploadFileToLeadQueryDto {
69
- LeadDocumentFolderCategory category = 1; // Categoría del archivo
70
- }
71
-
72
- // Consulta para especificar la categoría de los archivos subidos en contacts.
73
- message UploadFileToContactQueryDto {
74
- ContactDocumentFolderCategory category = 1; // Categoría del archivo
75
- }
76
-
77
- // Representa un usuario en el contexto del sistema.
78
- message User {
79
- string id = 1; // Identificador único del usuario
80
- string name = 2; // Nombre del usuario
81
- }
82
-
83
- // Solicitud para subir archivos a la carpeta de documentos de un recibo.
84
- message UploadFilesToReceiptRequest {
85
- repeated IFile files = 1; // Lista de archivos a subir
86
- string receiptId = 2; // ID del recibo al cual se asociarán los archivos
87
- UploadFileToReceiptQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
88
- User user = 4; // Usuario que realiza la operación
89
- }
90
-
91
- message UploadFilesToLeadRequest {
92
- repeated IFile files = 1; // Lista de archivos a subir
93
- string leadId = 2; // ID del lead al cual se asociarán los archivos
94
- UploadFileToLeadQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
95
- User user = 4; // Usuario que realiza la operación
96
- }
97
-
98
- message UploadTempFilesRequest {
99
- repeated IFile files = 1; // Lista de archivos a subir
100
- User user = 4; // Usuario que realiza la operación
101
- }
102
-
103
- message UploadFilesToContactRequest {
104
- repeated IFile files = 1; // Lista de archivos a subir
105
- string contactId = 2; // ID del contact al cual se asociarán los archivos
106
- string query = 3; // Parámetros de consulta relacionados con la categoría
107
- User user = 4; // Usuario que realiza la operación
108
- }
109
-
110
- message FolderFile {
111
- string id = 1;
112
- string name = 2;
113
- }
114
-
115
-
116
- message FileResponse {
117
- string id = 1; // Identificador del archivo
118
- string name = 2; // Nombre del archivo
119
- string url = 3; // URL del archivo almacenado
120
- string mimeType = 4; // Tipo MIME del archivo
121
- FolderFile folder = 5; // Carpeta donde se almacenó el archivo
122
- }
123
-
124
- // Respuesta tras subir archivos a la carpeta de documentos de un recibo.
125
- message UploadFilesToReceiptResponse {
126
- repeated FileResponse files = 1; // Identificadores de los archivos subidos
127
- bool success = 2; // Indicador de éxito de la operación
128
- string message = 3; // Mensaje de respuesta
129
- int32 code = 4; // Código de respuesta
130
- }
131
-
132
- message UploadFilesToLeadResponse {
133
- repeated FileResponse files = 1; // Identificadores de los archivos subidos
134
- bool success = 2; // Indicador de éxito de la operación
135
- string message = 3; // Mensaje de respuesta
136
- int32 code = 4; // Código de respuesta
137
- }
138
-
139
- message UploadTempFilesResponse {
140
- repeated FileResponse files = 1; // Identificadores de los archivos subidos
141
- bool success = 2; // Indicador de éxito de la operación
142
- string message = 3; // Mensaje de respuesta
143
- int32 code = 4; // Código de respuesta
144
- }
145
-
146
- message UploadFilesToContactResponse {
147
- repeated FileResponse files = 1; // Identificadores de los archivos subidos
148
- bool success = 2; // Indicador de éxito de la operación
149
- string message = 3; // Mensaje de respuesta
150
- int32 code = 4; // Código de respuesta
151
- }
152
-
153
- // Solicitud para crear una nueva carpeta.
154
- message CreateFolderRequest {
155
- string name = 1; // Nombre de la carpeta
156
- string parentId = 2; // ID de la carpeta padre (opcional)
157
- repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
158
- string metadata = 4; // Metadatos en formato JSON
159
- }
160
-
161
- // Solicitud para actualizar una carpeta existente.
162
- message UpdateFolderRequest {
163
- string id = 1; // ID de la carpeta a actualizar
164
- string name = 2; // Nombre de la carpeta
165
- string parentId = 3; // ID de la carpeta padre (opcional)
166
- repeated OwnerEntity ownersData = 4; // Información sobre los propietarios
167
- string metadata = 5; // Metadatos en formato JSON
168
- }
169
-
170
- // Solicitud para crear múltiples carpetas en una sola operación.
171
- message CreateFolderBulkRequest {
172
- repeated FolderObject folders = 1; // Lista de carpetas a crear
173
- string parentId = 2; // ID de la carpeta padre (opcional)
174
- repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
175
- }
176
-
177
- // Respuesta tras la creación de una carpeta.
178
- message FolderResponse {
179
- string id = 1; // Identificador de la carpeta creada
180
- string name = 2; // Nombre de la carpeta
181
- string parentId = 3; // ID de la carpeta padre (opcional)
182
- string createdAt = 4; // Fecha de creación
183
- }
184
-
185
- message UpdateFolderResponse {
186
- string id = 1; // Identificador de la carpeta creada
187
- string name = 2; // Nombre de la carpeta
188
- string parentId = 3; // ID de la carpeta padre (opcional)
189
- string createdAt = 4; // Fecha de creación
190
- }
191
-
192
- // Respuesta tras la creación de múltiples carpetas.
193
- message CreateFolderBulkResponse {
194
- bool success = 1; // Indicador de éxito de la operación
195
- }
196
-
197
- message CopyFileRequest {
198
- string fileId = 1;
199
- string newName = 2;
200
- string folderId = 3;
201
- string metadata = 4;
202
- }
203
-
204
- // Solicitud para crear un archivo.
205
- message CreateFileRequest {
206
- string name = 1; // Nombre del archivo
207
- string folderId = 2; // ID de la carpeta donde se almacenará el archivo (opcional)
208
- int64 size = 3; // Tamaño del archivo en bytes (opcional)
209
- string mimeType = 4; // Tipo MIME del archivo (opcional)
210
- string s3Key = 5; // Clave del archivo en S3 (opcional)
211
- bool isDefault = 6; // Indicador de si es el archivo por defecto (opcional)
212
- repeated OwnerEntity ownersData = 7; // Información sobre los propietarios
213
- bytes filecontent = 8; // Contenido binario del archivo
214
- string encoding = 9; // Codificación del archivo (opcional)
215
- string metadata = 10;
216
- }
217
-
218
- // Solicitud para adjuntar múltiples archivos.
219
- message CreateFilesRequest {
220
- repeated CreateFileRequest files = 1; // Lista de archivos a crear
221
- }
222
-
223
- message CopyFileResponse {
224
- string id = 1; // Identificador del archivo copiado
225
- string url = 2; // URL del archivo almacenado
226
- string name = 3; // Nombre del archivo copiado
227
- string mimeType = 4; // Tipo MIME del archivo
228
- string parentId = 5; // Ubicación del archivo
229
- }
230
-
231
- // Respuesta tras la creación de múltiples archivos.
232
- message CreateFilesResponse {
233
- repeated File files = 1; // Archivos creados
234
- }
235
-
236
- // Respuesta tras la creación de un archivo.
237
- message CreateFileResponse {
238
- string id = 1; // Identificador del archivo creado
239
- string url = 2; // URL del archivo almacenado
240
- string name = 3; // Nombre del archivo creado
241
- string mimeType = 4; // Tipo MIME del archivo
242
- string parentId = 5; // Ubicación del archivo
243
- }
244
-
245
- message DeleteAttachedFilesRequest {
246
- repeated string attachedIds = 1;
247
- User user = 2;
248
- }
249
-
250
- // Respuesta tras la creación de un archivo.
251
- message DeleteAttachedFilesResponse {
252
- string message = 1; // Mensaje de respuesta
253
- bool success = 2; // Indicador de éxito de la operación
254
- }
255
-
256
- // Solicitud para renombrar una carpeta cuando se actualiza el nombre de una entidad
257
- message RenameFolderRequest {
258
- string entityId = 1; // ID de la entidad (lead o contact)
259
- string entityType = 2; // Tipo de entidad: "lead" o "contact"
260
- string newName = 3; // Nuevo nombre de la entidad
261
- string userId = 4; // ID del usuario que realiza la actualización
262
- }
263
-
264
- // Respuesta tras renombrar una carpeta
265
- message RenameFolderResponse {
266
- bool success = 1; // Indicador de éxito de la operación
267
- string message = 2; // Mensaje de respuesta
268
- string folderId = 3; // ID de la carpeta renombrada
269
- string oldName = 4; // Nombre anterior de la carpeta
270
- string newName = 5; // Nuevo nombre de la carpeta
271
- }
272
-
273
- // Solicitud para vincular archivos existentes a una entidad
274
- message LinkFilesToEntityRequest {
275
- repeated string fileIds = 1; // Lista de IDs de archivos a vincular
276
- repeated OwnerEntity ownersData = 2; // Información sobre los propietarios
277
- }
278
-
279
- // Respuesta tras vincular archivos a una entidad
280
- message LinkFilesToEntityResponse {
281
- bool success = 1; // Indicador de éxito de la operación
282
- string message = 2; // Mensaje de respuesta
283
- repeated File linkedFiles = 3; // Archivos vinculados
284
- }
285
-
286
- message DeleteFileRequest {
287
- string fileId = 1; // ID del archivo a eliminar
288
- }
289
-
290
- message DeleteFileResponse {
291
- bool success = 1; // Indicador de éxito de la operación
292
- string message = 2; // Mensaje de respuesta
293
- }
294
-
295
-
296
- // Define el servicio de gestión de carpetas y archivos.
297
- service DriveService {
298
- // Crea una carpeta.
299
- rpc CreateFolder(CreateFolderRequest) returns (FolderResponse);
300
-
301
- // Actualiza una carpeta existente.
302
- rpc UpdateFolder(UpdateFolderRequest) returns (UpdateFolderResponse);
303
-
304
- // Crea múltiples carpetas en una sola operación.
305
- rpc CreateFolders(CreateFolderBulkRequest) returns (CreateFolderBulkResponse);
306
-
307
- // Copia un archivo
308
- rpc CopyFile(CopyFileRequest) returns (CopyFileResponse);
309
-
310
- // Crea un archivo.
311
- rpc CreateFile(CreateFileRequest) returns (CreateFileResponse);
312
-
313
- // Crea múltiples archivos en una sola operación.
314
- rpc CreateFiles(CreateFilesRequest) returns (CreateFilesResponse);
315
-
316
- // Sube archivos temporales
317
- rpc UploadTempFiles(UploadTempFilesRequest) returns (UploadTempFilesResponse);
318
-
319
- // Sube archivos a la carpeta de documentos de un recibo.
320
- rpc UploadFilesToReceipt(UploadFilesToReceiptRequest) returns (UploadFilesToReceiptResponse);
321
-
322
- // Sube archivos a la carpeta de documentos de un lead.
323
- rpc UploadFilesToLead(UploadFilesToLeadRequest) returns (UploadFilesToLeadResponse);
324
-
325
- // Sube archivos a la carpeta de documentos de un contacto.
326
- rpc UploadFilesToContact(UploadFilesToContactRequest) returns (UploadFilesToContactResponse);
327
-
328
- // Elimina archivos adjuntos
329
- rpc DeleteAttachedFiles(DeleteAttachedFilesRequest) returns (DeleteAttachedFilesResponse);
330
-
331
- // Renombra una carpeta cuando se actualiza el nombre de una entidad
332
- rpc RenameFolder(RenameFolderRequest) returns (RenameFolderResponse);
333
-
334
- // Vincula archivos existentes a una entidad
335
- rpc LinkFilesToEntity(LinkFilesToEntityRequest) returns (LinkFilesToEntityResponse);
336
-
337
- // Elimina un archivo por su ID
338
- rpc DeleteFile(DeleteFileRequest) returns (DeleteFileResponse);
339
- }
1
+ // drive/proto/drive.proto
2
+ syntax = "proto3";
3
+
4
+ package drive;
5
+
6
+ // Define el mensaje que representa una carpeta.
7
+ message FolderObject {
8
+ string name = 1; // Nombre de la carpeta
9
+ string metadata = 2; // Metadatos en formato JSON
10
+ }
11
+
12
+ // Representa la entidad propietaria de un archivo o carpeta.
13
+ message OwnerEntity {
14
+ string ownerId = 1; // Identificador del propietario
15
+ string entityType = 2; // Tipo de entidad (e.g., usuario, organización)
16
+ string relation = 3; // Relación del propietario con el recurso
17
+ }
18
+
19
+ // Representa un archivo para ser subido.
20
+ message IFile {
21
+ string name = 1; // Nombre del archivo
22
+ int64 size = 2; // Tamaño del archivo en bytes
23
+ string mimeType = 3; // Tipo MIME del archivo
24
+ string s3Key = 4; // Clave del archivo en S3
25
+ bytes filecontent = 5; // Contenido binario del archivo
26
+ string metadata = 6; // Metadatos
27
+ }
28
+
29
+ message File {
30
+ string id = 1; // Identificador del archivo creado
31
+ string url = 2; // URL del archivo almacenado
32
+ string name = 3; // Nombre del archivo creado
33
+ string mimeType = 4; // Tipo MIME del archivo
34
+ string folerId = 5; // Carpeta ubicación del archivo.
35
+ }
36
+
37
+ // Categorías para clasificar las carpetas de un recibo.
38
+ enum ReceiptFolderCategory {
39
+ factura = 0; // Categoría para facturas
40
+ pago = 1; // Categoría para pagos recibidos
41
+ }
42
+
43
+ enum LeadDocumentFolderCategory {
44
+ documentos = 0; // Categoría para documentos personales
45
+ cotizacion = 1; // Categoría para cotizaciones
46
+ perfil = 2; // Categoría perfiles
47
+ poliza = 3; // Categoría carpeta polizas
48
+ solicitud = 4; // Categoría carpeta solicitudes
49
+ medica = 5;
50
+ cotizacion_aprobada = 6;
51
+ }
52
+
53
+ enum ContactDocumentFolderCategory {
54
+ documentos = 0; // Categoría para documentos personales
55
+ perfil = 1; // Categoría perfiles
56
+ poliza = 2; // Categoría carpeta polizas
57
+ solicitud = 3; // Categoría carpeta solicitudes
58
+ medica = 4;
59
+ }
60
+
61
+
62
+ // Consulta para especificar la categoría de los archivos subidos.
63
+ message UploadFileToReceiptQueryDto {
64
+ ReceiptFolderCategory category = 1; // Categoría del archivo
65
+ }
66
+
67
+ // Consulta para especificar la categoría de los archivos subidos en leads.
68
+ message UploadFileToLeadQueryDto {
69
+ LeadDocumentFolderCategory category = 1; // Categoría del archivo
70
+ }
71
+
72
+ // Consulta para especificar la categoría de los archivos subidos en contacts.
73
+ message UploadFileToContactQueryDto {
74
+ ContactDocumentFolderCategory category = 1; // Categoría del archivo
75
+ }
76
+
77
+ // Representa un usuario en el contexto del sistema.
78
+ message User {
79
+ string id = 1; // Identificador único del usuario
80
+ string name = 2; // Nombre del usuario
81
+ }
82
+
83
+ // Solicitud para subir archivos a la carpeta de documentos de un recibo.
84
+ message UploadFilesToReceiptRequest {
85
+ repeated IFile files = 1; // Lista de archivos a subir
86
+ string receiptId = 2; // ID del recibo al cual se asociarán los archivos
87
+ UploadFileToReceiptQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
88
+ User user = 4; // Usuario que realiza la operación
89
+ }
90
+
91
+ message UploadFilesToLeadRequest {
92
+ repeated IFile files = 1; // Lista de archivos a subir
93
+ string leadId = 2; // ID del lead al cual se asociarán los archivos
94
+ UploadFileToLeadQueryDto query = 3; // Parámetros de consulta relacionados con la categoría
95
+ User user = 4; // Usuario que realiza la operación
96
+ }
97
+
98
+ message UploadTempFilesRequest {
99
+ repeated IFile files = 1; // Lista de archivos a subir
100
+ User user = 4; // Usuario que realiza la operación
101
+ }
102
+
103
+ message UploadFilesToContactRequest {
104
+ repeated IFile files = 1; // Lista de archivos a subir
105
+ string contactId = 2; // ID del contact al cual se asociarán los archivos
106
+ string query = 3; // Parámetros de consulta relacionados con la categoría
107
+ User user = 4; // Usuario que realiza la operación
108
+ }
109
+
110
+ message FolderFile {
111
+ string id = 1;
112
+ string name = 2;
113
+ }
114
+
115
+
116
+ message FileResponse {
117
+ string id = 1; // Identificador del archivo
118
+ string name = 2; // Nombre del archivo
119
+ string url = 3; // URL del archivo almacenado
120
+ string mimeType = 4; // Tipo MIME del archivo
121
+ FolderFile folder = 5; // Carpeta donde se almacenó el archivo
122
+ }
123
+
124
+ // Respuesta tras subir archivos a la carpeta de documentos de un recibo.
125
+ message UploadFilesToReceiptResponse {
126
+ repeated FileResponse files = 1; // Identificadores de los archivos subidos
127
+ bool success = 2; // Indicador de éxito de la operación
128
+ string message = 3; // Mensaje de respuesta
129
+ int32 code = 4; // Código de respuesta
130
+ }
131
+
132
+ message UploadFilesToLeadResponse {
133
+ repeated FileResponse files = 1; // Identificadores de los archivos subidos
134
+ bool success = 2; // Indicador de éxito de la operación
135
+ string message = 3; // Mensaje de respuesta
136
+ int32 code = 4; // Código de respuesta
137
+ }
138
+
139
+ message UploadTempFilesResponse {
140
+ repeated FileResponse files = 1; // Identificadores de los archivos subidos
141
+ bool success = 2; // Indicador de éxito de la operación
142
+ string message = 3; // Mensaje de respuesta
143
+ int32 code = 4; // Código de respuesta
144
+ }
145
+
146
+ message UploadFilesToContactResponse {
147
+ repeated FileResponse files = 1; // Identificadores de los archivos subidos
148
+ bool success = 2; // Indicador de éxito de la operación
149
+ string message = 3; // Mensaje de respuesta
150
+ int32 code = 4; // Código de respuesta
151
+ }
152
+
153
+ // Solicitud para crear una nueva carpeta.
154
+ message CreateFolderRequest {
155
+ string name = 1; // Nombre de la carpeta
156
+ string parentId = 2; // ID de la carpeta padre (opcional)
157
+ repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
158
+ string metadata = 4; // Metadatos en formato JSON
159
+ }
160
+
161
+ // Solicitud para actualizar una carpeta existente.
162
+ message UpdateFolderRequest {
163
+ string id = 1; // ID de la carpeta a actualizar
164
+ string name = 2; // Nombre de la carpeta
165
+ string parentId = 3; // ID de la carpeta padre (opcional)
166
+ repeated OwnerEntity ownersData = 4; // Información sobre los propietarios
167
+ string metadata = 5; // Metadatos en formato JSON
168
+ }
169
+
170
+ // Solicitud para crear múltiples carpetas en una sola operación.
171
+ message CreateFolderBulkRequest {
172
+ repeated FolderObject folders = 1; // Lista de carpetas a crear
173
+ string parentId = 2; // ID de la carpeta padre (opcional)
174
+ repeated OwnerEntity ownersData = 3; // Información sobre los propietarios
175
+ }
176
+
177
+ // Respuesta tras la creación de una carpeta.
178
+ message FolderResponse {
179
+ string id = 1; // Identificador de la carpeta creada
180
+ string name = 2; // Nombre de la carpeta
181
+ string parentId = 3; // ID de la carpeta padre (opcional)
182
+ string createdAt = 4; // Fecha de creación
183
+ }
184
+
185
+ message UpdateFolderResponse {
186
+ string id = 1; // Identificador de la carpeta creada
187
+ string name = 2; // Nombre de la carpeta
188
+ string parentId = 3; // ID de la carpeta padre (opcional)
189
+ string createdAt = 4; // Fecha de creación
190
+ }
191
+
192
+ // Respuesta tras la creación de múltiples carpetas.
193
+ message CreateFolderBulkResponse {
194
+ bool success = 1; // Indicador de éxito de la operación
195
+ }
196
+
197
+ message CopyFileRequest {
198
+ string fileId = 1;
199
+ string newName = 2;
200
+ string folderId = 3;
201
+ string metadata = 4;
202
+ }
203
+
204
+ // Solicitud para crear un archivo.
205
+ message CreateFileRequest {
206
+ string name = 1; // Nombre del archivo
207
+ string folderId = 2; // ID de la carpeta donde se almacenará el archivo (opcional)
208
+ int64 size = 3; // Tamaño del archivo en bytes (opcional)
209
+ string mimeType = 4; // Tipo MIME del archivo (opcional)
210
+ string s3Key = 5; // Clave del archivo en S3 (opcional)
211
+ bool isDefault = 6; // Indicador de si es el archivo por defecto (opcional)
212
+ repeated OwnerEntity ownersData = 7; // Información sobre los propietarios
213
+ bytes filecontent = 8; // Contenido binario del archivo
214
+ string encoding = 9; // Codificación del archivo (opcional)
215
+ string metadata = 10;
216
+ }
217
+
218
+ // Solicitud para adjuntar múltiples archivos.
219
+ message CreateFilesRequest {
220
+ repeated CreateFileRequest files = 1; // Lista de archivos a crear
221
+ }
222
+
223
+ message CopyFileResponse {
224
+ string id = 1; // Identificador del archivo copiado
225
+ string url = 2; // URL del archivo almacenado
226
+ string name = 3; // Nombre del archivo copiado
227
+ string mimeType = 4; // Tipo MIME del archivo
228
+ string parentId = 5; // Ubicación del archivo
229
+ }
230
+
231
+ // Respuesta tras la creación de múltiples archivos.
232
+ message CreateFilesResponse {
233
+ repeated File files = 1; // Archivos creados
234
+ }
235
+
236
+ // Respuesta tras la creación de un archivo.
237
+ message CreateFileResponse {
238
+ string id = 1; // Identificador del archivo creado
239
+ string url = 2; // URL del archivo almacenado
240
+ string name = 3; // Nombre del archivo creado
241
+ string mimeType = 4; // Tipo MIME del archivo
242
+ string parentId = 5; // Ubicación del archivo
243
+ }
244
+
245
+ message DeleteAttachedFilesRequest {
246
+ repeated string attachedIds = 1;
247
+ User user = 2;
248
+ }
249
+
250
+ // Respuesta tras la creación de un archivo.
251
+ message DeleteAttachedFilesResponse {
252
+ string message = 1; // Mensaje de respuesta
253
+ bool success = 2; // Indicador de éxito de la operación
254
+ }
255
+
256
+ // Solicitud para renombrar una carpeta cuando se actualiza el nombre de una entidad
257
+ message RenameFolderRequest {
258
+ string entityId = 1; // ID de la entidad (lead o contact)
259
+ string entityType = 2; // Tipo de entidad: "lead" o "contact"
260
+ string newName = 3; // Nuevo nombre de la entidad
261
+ string userId = 4; // ID del usuario que realiza la actualización
262
+ }
263
+
264
+ // Respuesta tras renombrar una carpeta
265
+ message RenameFolderResponse {
266
+ bool success = 1; // Indicador de éxito de la operación
267
+ string message = 2; // Mensaje de respuesta
268
+ string folderId = 3; // ID de la carpeta renombrada
269
+ string oldName = 4; // Nombre anterior de la carpeta
270
+ string newName = 5; // Nuevo nombre de la carpeta
271
+ }
272
+
273
+ // Solicitud para vincular archivos existentes a una entidad
274
+ message LinkFilesToEntityRequest {
275
+ repeated string fileIds = 1; // Lista de IDs de archivos a vincular
276
+ repeated OwnerEntity ownersData = 2; // Información sobre los propietarios
277
+ }
278
+
279
+ // Respuesta tras vincular archivos a una entidad
280
+ message LinkFilesToEntityResponse {
281
+ bool success = 1; // Indicador de éxito de la operación
282
+ string message = 2; // Mensaje de respuesta
283
+ repeated File linkedFiles = 3; // Archivos vinculados
284
+ }
285
+
286
+ message DeleteFileRequest {
287
+ string fileId = 1; // ID del archivo a eliminar
288
+ }
289
+
290
+ message DeleteFileResponse {
291
+ bool success = 1; // Indicador de éxito de la operación
292
+ string message = 2; // Mensaje de respuesta
293
+ }
294
+
295
+
296
+ // Define el servicio de gestión de carpetas y archivos.
297
+ service DriveService {
298
+ // Crea una carpeta.
299
+ rpc CreateFolder(CreateFolderRequest) returns (FolderResponse);
300
+
301
+ // Actualiza una carpeta existente.
302
+ rpc UpdateFolder(UpdateFolderRequest) returns (UpdateFolderResponse);
303
+
304
+ // Crea múltiples carpetas en una sola operación.
305
+ rpc CreateFolders(CreateFolderBulkRequest) returns (CreateFolderBulkResponse);
306
+
307
+ // Copia un archivo
308
+ rpc CopyFile(CopyFileRequest) returns (CopyFileResponse);
309
+
310
+ // Crea un archivo.
311
+ rpc CreateFile(CreateFileRequest) returns (CreateFileResponse);
312
+
313
+ // Crea múltiples archivos en una sola operación.
314
+ rpc CreateFiles(CreateFilesRequest) returns (CreateFilesResponse);
315
+
316
+ // Sube archivos temporales
317
+ rpc UploadTempFiles(UploadTempFilesRequest) returns (UploadTempFilesResponse);
318
+
319
+ // Sube archivos a la carpeta de documentos de un recibo.
320
+ rpc UploadFilesToReceipt(UploadFilesToReceiptRequest) returns (UploadFilesToReceiptResponse);
321
+
322
+ // Sube archivos a la carpeta de documentos de un lead.
323
+ rpc UploadFilesToLead(UploadFilesToLeadRequest) returns (UploadFilesToLeadResponse);
324
+
325
+ // Sube archivos a la carpeta de documentos de un contacto.
326
+ rpc UploadFilesToContact(UploadFilesToContactRequest) returns (UploadFilesToContactResponse);
327
+
328
+ // Elimina archivos adjuntos
329
+ rpc DeleteAttachedFiles(DeleteAttachedFilesRequest) returns (DeleteAttachedFilesResponse);
330
+
331
+ // Renombra una carpeta cuando se actualiza el nombre de una entidad
332
+ rpc RenameFolder(RenameFolderRequest) returns (RenameFolderResponse);
333
+
334
+ // Vincula archivos existentes a una entidad
335
+ rpc LinkFilesToEntity(LinkFilesToEntityRequest) returns (LinkFilesToEntityResponse);
336
+
337
+ // Elimina un archivo por su ID
338
+ rpc DeleteFile(DeleteFileRequest) returns (DeleteFileResponse);
339
+ }