@apteva/integrations 0.3.20 → 0.3.22

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.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@apteva/integrations",
3
- "version": "0.3.20",
3
+ "version": "0.3.22",
4
4
  "description": "Local integrations, connections, and webhooks for Apteva. Self-contained app templates, OAuth engine, and trigger provider.",
5
5
  "author": "Apteva <hello@apteva.com>",
6
6
  "license": "Elastic-2.0",
@@ -1333,7 +1333,7 @@
1333
1333
  },
1334
1334
  {
1335
1335
  "name": "create_user",
1336
- "description": "Register a new user (model) in the gigs platform. Creates a user account scoped to the modeling project.",
1336
+ "description": "Register a new user (model) in the gigs platform. Creates a user account and automatically creates a matching contact record for storing phone, notes, and other contact details.",
1337
1337
  "method": "POST",
1338
1338
  "path": "/users",
1339
1339
  "input_schema": {
@@ -1356,6 +1356,64 @@
1356
1356
  "display_name": {
1357
1357
  "type": "string",
1358
1358
  "description": "Display name shown in the platform"
1359
+ },
1360
+ "phone": {
1361
+ "type": "string",
1362
+ "description": "Phone number (stored in contact record)"
1363
+ },
1364
+ "notes": {
1365
+ "type": "string",
1366
+ "description": "Notes about this user/model (stored in contact record)"
1367
+ },
1368
+ "tags": {
1369
+ "type": "array",
1370
+ "items": {
1371
+ "type": "string"
1372
+ },
1373
+ "description": "Tags for categorization (e.g. ['model', 'hypno-reactions']). Defaults to ['gigs-user', role]"
1374
+ },
1375
+ "attributes": {
1376
+ "type": "object",
1377
+ "description": "Custom contact attributes (e.g. social media links, address, emergency contact, bio)",
1378
+ "properties": {
1379
+ "first_name": {
1380
+ "type": "string"
1381
+ },
1382
+ "last_name": {
1383
+ "type": "string"
1384
+ },
1385
+ "company": {
1386
+ "type": "string"
1387
+ },
1388
+ "address": {
1389
+ "type": "string"
1390
+ },
1391
+ "city": {
1392
+ "type": "string"
1393
+ },
1394
+ "state": {
1395
+ "type": "string"
1396
+ },
1397
+ "country": {
1398
+ "type": "string"
1399
+ },
1400
+ "bio": {
1401
+ "type": "string"
1402
+ },
1403
+ "instagram": {
1404
+ "type": "string"
1405
+ },
1406
+ "twitter": {
1407
+ "type": "string"
1408
+ },
1409
+ "tiktok": {
1410
+ "type": "string"
1411
+ },
1412
+ "website": {
1413
+ "type": "string"
1414
+ }
1415
+ },
1416
+ "additionalProperties": true
1359
1417
  }
1360
1418
  },
1361
1419
  "required": [
@@ -1366,7 +1424,7 @@
1366
1424
  },
1367
1425
  {
1368
1426
  "name": "delete_user",
1369
- "description": "Delete a user (model) from the gigs platform. Only users belonging to the modeling project can be deleted.",
1427
+ "description": "Delete a user (model) from the gigs platform and their linked contact record. Only users belonging to the modeling project can be deleted.",
1370
1428
  "method": "DELETE",
1371
1429
  "path": "/users/{user_id}",
1372
1430
  "input_schema": {
@@ -1384,7 +1442,7 @@
1384
1442
  },
1385
1443
  {
1386
1444
  "name": "update_user",
1387
- "description": "Update a user (model) profile in the gigs platform. Can change display name, username, email, role, or account status.",
1445
+ "description": "Update a user (model) profile and contact details. Changes are automatically synced to the linked contact record. Supports phone, notes, tags, and custom attributes.",
1388
1446
  "method": "PUT",
1389
1447
  "path": "/users/{user_id}",
1390
1448
  "input_schema": {
@@ -1419,6 +1477,26 @@
1419
1477
  "disabled",
1420
1478
  "pending"
1421
1479
  ]
1480
+ },
1481
+ "phone": {
1482
+ "type": "string",
1483
+ "description": "Phone number (synced to contact record)"
1484
+ },
1485
+ "notes": {
1486
+ "type": "string",
1487
+ "description": "Notes about this user/model (synced to contact record)"
1488
+ },
1489
+ "tags": {
1490
+ "type": "array",
1491
+ "items": {
1492
+ "type": "string"
1493
+ },
1494
+ "description": "Tags for categorization (synced to contact record)"
1495
+ },
1496
+ "attributes": {
1497
+ "type": "object",
1498
+ "description": "Custom contact attributes (merged with existing). Supports: first_name, last_name, company, address, city, state, country, bio, instagram, twitter, tiktok, website, and any custom fields.",
1499
+ "additionalProperties": true
1422
1500
  }
1423
1501
  },
1424
1502
  "required": [
@@ -57,16 +57,16 @@
57
57
  "name": "get_file",
58
58
  "description": "Get detailed file info including optional transcripts and thumbnails",
59
59
  "method": "GET",
60
- "path": "/files/{{id}}",
60
+ "path": "/files/{file_id}",
61
61
  "input_schema": {
62
62
  "type": "object",
63
63
  "properties": {
64
- "id": { "type": "integer", "description": "File ID" },
64
+ "file_id": { "type": "integer", "description": "File ID" },
65
65
  "include_transcripts": { "type": "boolean", "default": false, "description": "Include transcript metadata" },
66
66
  "include_transcript_segments": { "type": "boolean", "default": false, "description": "Include transcript segments with timecodes" },
67
67
  "include_thumbnails": { "type": "boolean", "default": false, "description": "Include thumbnail URLs" }
68
68
  },
69
- "required": ["id"]
69
+ "required": ["file_id"]
70
70
  }
71
71
  },
72
72
  {
@@ -92,32 +92,32 @@
92
92
  "name": "update_file",
93
93
  "description": "Update file metadata, tags, or move to a different folder",
94
94
  "method": "PUT",
95
- "path": "/files/{{id}}",
95
+ "path": "/files/{file_id}",
96
96
  "input_schema": {
97
97
  "type": "object",
98
98
  "properties": {
99
- "id": { "type": "integer", "description": "File ID to update" },
99
+ "file_id": { "type": "integer", "description": "File ID to update" },
100
100
  "name": { "type": "string", "description": "New file name" },
101
101
  "description": { "type": "string", "description": "New description" },
102
102
  "folder_id": { "type": "integer", "description": "Move to different folder" },
103
103
  "tags": { "type": "array", "items": { "type": "string" }, "description": "Update tags" },
104
104
  "access_level": { "type": "string", "enum": ["private", "public"], "description": "Update access level" }
105
105
  },
106
- "required": ["id"]
106
+ "required": ["file_id"]
107
107
  }
108
108
  },
109
109
  {
110
110
  "name": "delete_file",
111
111
  "description": "Delete a file from storage",
112
112
  "method": "DELETE",
113
- "path": "/files/{{id}}",
113
+ "path": "/files/{file_id}",
114
114
  "input_schema": {
115
115
  "type": "object",
116
116
  "properties": {
117
- "id": { "type": "integer", "description": "File ID to delete" },
117
+ "file_id": { "type": "integer", "description": "File ID to delete" },
118
118
  "force": { "type": "boolean", "default": false, "description": "Force delete without trash" }
119
119
  },
120
- "required": ["id"]
120
+ "required": ["file_id"]
121
121
  }
122
122
  },
123
123
  {
@@ -361,7 +361,7 @@
361
361
  },
362
362
  {
363
363
  "name": "update_post",
364
- "description": "Update a post's text and sync changes to platforms that support editing (Facebook, YouTube, Telegram). Other platforms will be skipped.",
364
+ "description": "Update a post's text and platform-specific settings, then sync changes to platforms that support editing (Facebook, YouTube, Telegram). For YouTube: pass platform_overrides.youtube with title, description, tags, privacyStatus. For scheduled/failed posts: updates are saved locally for the next publish attempt. Other platforms will be skipped.",
365
365
  "method": "PUT",
366
366
  "path": "/posts/{id}",
367
367
  "input_schema": {
@@ -374,6 +374,10 @@
374
374
  "text": {
375
375
  "type": "string",
376
376
  "description": "New post text"
377
+ },
378
+ "platform_overrides": {
379
+ "type": "object",
380
+ "description": "Per-platform overrides. youtube: {title, description, tags (array), privacyStatus, categoryId}. tiktok: {title, text, privacyLevel, disableComment, autoAddMusic}. Other platforms use the main text field."
377
381
  }
378
382
  },
379
383
  "required": [