@bubblelab/bubble-core 0.1.220 → 0.1.221

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.
Files changed (84) hide show
  1. package/dist/bubble-bundle.d.ts +165 -126
  2. package/dist/bubble-factory.d.ts.map +1 -1
  3. package/dist/bubble-factory.js +3 -0
  4. package/dist/bubble-factory.js.map +1 -1
  5. package/dist/bubbles/service-bubble/agi-inc.d.ts +20 -20
  6. package/dist/bubbles/service-bubble/ai-agent.d.ts +74 -74
  7. package/dist/bubbles/service-bubble/airtable.d.ts +76 -76
  8. package/dist/bubbles/service-bubble/apify/actors/instagram-hashtag-scraper.d.ts +2 -2
  9. package/dist/bubbles/service-bubble/apify/actors/instagram-scraper.d.ts +8 -8
  10. package/dist/bubbles/service-bubble/apify/actors/linkedin-jobs-scraper.d.ts +2 -2
  11. package/dist/bubbles/service-bubble/apify/actors/linkedin-posts-search.d.ts +22 -22
  12. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-detail.d.ts +38 -38
  13. package/dist/bubbles/service-bubble/apify/actors/linkedin-profile-posts.d.ts +52 -52
  14. package/dist/bubbles/service-bubble/apify/actors/tiktok-scraper.d.ts +6 -6
  15. package/dist/bubbles/service-bubble/apify/actors/twitter-scraper.d.ts +12 -12
  16. package/dist/bubbles/service-bubble/apify/actors/youtube-scraper.d.ts +12 -12
  17. package/dist/bubbles/service-bubble/apify/apify-scraper.schema.d.ts +126 -126
  18. package/dist/bubbles/service-bubble/apify/apify.d.ts +18 -18
  19. package/dist/bubbles/service-bubble/ashby/ashby.d.ts +2 -2
  20. package/dist/bubbles/service-bubble/ashby/ashby.schema.d.ts +2 -2
  21. package/dist/bubbles/service-bubble/assembled/assembled.d.ts +6 -6
  22. package/dist/bubbles/service-bubble/assembled/assembled.schema.d.ts +6 -6
  23. package/dist/bubbles/service-bubble/attio/attio.d.ts +6 -6
  24. package/dist/bubbles/service-bubble/attio/attio.schema.d.ts +6 -6
  25. package/dist/bubbles/service-bubble/browserbase/browserbase.d.ts +1 -1
  26. package/dist/bubbles/service-bubble/browserbase/browserbase.schema.d.ts +1 -1
  27. package/dist/bubbles/service-bubble/crustdata/crustdata.d.ts +4 -4
  28. package/dist/bubbles/service-bubble/crustdata/crustdata.schema.d.ts +8 -8
  29. package/dist/bubbles/service-bubble/firecrawl.d.ts +334 -334
  30. package/dist/bubbles/service-bubble/followupboss.d.ts +4 -4
  31. package/dist/bubbles/service-bubble/github.d.ts +60 -60
  32. package/dist/bubbles/service-bubble/gmail.d.ts +164 -164
  33. package/dist/bubbles/service-bubble/google-calendar.d.ts +6 -6
  34. package/dist/bubbles/service-bubble/google-drive.d.ts +4 -4
  35. package/dist/bubbles/service-bubble/http.d.ts +2 -2
  36. package/dist/bubbles/service-bubble/insforge-db.d.ts +8 -8
  37. package/dist/bubbles/service-bubble/jira/jira.d.ts +30 -30
  38. package/dist/bubbles/service-bubble/jira/jira.schema.d.ts +36 -36
  39. package/dist/bubbles/service-bubble/notion/notion.d.ts +168 -168
  40. package/dist/bubbles/service-bubble/notion/property-schemas.d.ts +8 -8
  41. package/dist/bubbles/service-bubble/postgresql.d.ts +8 -8
  42. package/dist/bubbles/service-bubble/posthog/posthog.d.ts +10 -10
  43. package/dist/bubbles/service-bubble/posthog/posthog.schema.d.ts +14 -14
  44. package/dist/bubbles/service-bubble/resend.d.ts +4 -4
  45. package/dist/bubbles/service-bubble/slack/slack.d.ts +388 -388
  46. package/dist/bubbles/service-bubble/stripe/stripe.d.ts +24 -24
  47. package/dist/bubbles/service-bubble/stripe/stripe.schema.d.ts +28 -28
  48. package/dist/bubbles/service-bubble/xero/xero.d.ts +2 -2
  49. package/dist/bubbles/service-bubble/xero/xero.schema.d.ts +2 -2
  50. package/dist/bubbles/service-bubble/zendesk/index.d.ts +3 -0
  51. package/dist/bubbles/service-bubble/zendesk/index.d.ts.map +1 -0
  52. package/dist/bubbles/service-bubble/zendesk/index.js +3 -0
  53. package/dist/bubbles/service-bubble/zendesk/index.js.map +1 -0
  54. package/dist/bubbles/service-bubble/zendesk/zendesk.d.ts +1065 -0
  55. package/dist/bubbles/service-bubble/zendesk/zendesk.d.ts.map +1 -0
  56. package/dist/bubbles/service-bubble/zendesk/zendesk.js +531 -0
  57. package/dist/bubbles/service-bubble/zendesk/zendesk.js.map +1 -0
  58. package/dist/bubbles/service-bubble/zendesk/zendesk.schema.d.ts +1008 -0
  59. package/dist/bubbles/service-bubble/zendesk/zendesk.schema.d.ts.map +1 -0
  60. package/dist/bubbles/service-bubble/zendesk/zendesk.schema.js +473 -0
  61. package/dist/bubbles/service-bubble/zendesk/zendesk.schema.js.map +1 -0
  62. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.d.ts +6 -6
  63. package/dist/bubbles/tool-bubble/amazon-shopping-tool/amazon-shopping-tool.schema.d.ts +8 -8
  64. package/dist/bubbles/tool-bubble/bubbleflow-validation-tool.d.ts +4 -4
  65. package/dist/bubbles/tool-bubble/company-enrichment-tool.d.ts +20 -20
  66. package/dist/bubbles/tool-bubble/linkedin-tool.d.ts +380 -380
  67. package/dist/bubbles/tool-bubble/people-search-tool.d.ts +44 -44
  68. package/dist/bubbles/tool-bubble/reddit-scrape-tool.d.ts +14 -14
  69. package/dist/bubbles/tool-bubble/research-agent-tool.d.ts +4 -4
  70. package/dist/bubbles/tool-bubble/sql-query-tool.d.ts +4 -4
  71. package/dist/bubbles/tool-bubble/tiktok-tool.d.ts +60 -60
  72. package/dist/bubbles/tool-bubble/twitter-tool.d.ts +134 -134
  73. package/dist/bubbles/tool-bubble/yc-scraper-tool.d.ts +8 -8
  74. package/dist/bubbles/tool-bubble/youtube-tool.d.ts +20 -20
  75. package/dist/bubbles/workflow-bubble/generate-document.workflow.d.ts +12 -12
  76. package/dist/bubbles/workflow-bubble/pdf-form-operations.workflow.d.ts +8 -8
  77. package/dist/bubbles/workflow-bubble/slack-data-assistant.workflow.d.ts +2 -2
  78. package/dist/bubbles/workflow-bubble/slack-formatter-agent.d.ts +26 -26
  79. package/dist/bubbles.json +1523 -2
  80. package/dist/index.d.ts +2 -0
  81. package/dist/index.d.ts.map +1 -1
  82. package/dist/index.js +1 -0
  83. package/dist/index.js.map +1 -1
  84. package/package.json +2 -2
package/dist/bubbles.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "version": "2.0.0",
3
- "generatedAt": "2026-03-09T07:49:57.588Z",
4
- "totalCount": 73,
3
+ "generatedAt": "2026-03-10T20:51:36.764Z",
4
+ "totalCount": 74,
5
5
  "bubbles": [
6
6
  {
7
7
  "name": "hello-world",
@@ -72896,6 +72896,1527 @@
72896
72896
  "requiredCredentials": [
72897
72897
  "RAMP_CRED"
72898
72898
  ]
72899
+ },
72900
+ {
72901
+ "name": "zendesk",
72902
+ "alias": "support",
72903
+ "type": "service",
72904
+ "shortDescription": "Zendesk integration for tickets, comments, users, and help center",
72905
+ "useCase": "- Automated ticket triage and response",
72906
+ "outputSchema": "Complex schema - see usage example for structure",
72907
+ "inputJsonSchema": {
72908
+ "anyOf": [
72909
+ {
72910
+ "type": "object",
72911
+ "properties": {
72912
+ "operation": {
72913
+ "type": "string",
72914
+ "enum": [
72915
+ "list_tickets"
72916
+ ],
72917
+ "description": "List tickets with optional filters"
72918
+ },
72919
+ "status": {
72920
+ "type": "string",
72921
+ "enum": [
72922
+ "new",
72923
+ "open",
72924
+ "pending",
72925
+ "hold",
72926
+ "solved",
72927
+ "closed"
72928
+ ],
72929
+ "description": "Filter by ticket status"
72930
+ },
72931
+ "sort_by": {
72932
+ "type": "string",
72933
+ "enum": [
72934
+ "created_at",
72935
+ "updated_at",
72936
+ "priority",
72937
+ "status"
72938
+ ],
72939
+ "default": "updated_at",
72940
+ "description": "Sort field (default: updated_at)"
72941
+ },
72942
+ "sort_order": {
72943
+ "type": "string",
72944
+ "enum": [
72945
+ "asc",
72946
+ "desc"
72947
+ ],
72948
+ "default": "desc",
72949
+ "description": "Sort order (default: desc)"
72950
+ },
72951
+ "page": {
72952
+ "type": "number",
72953
+ "minimum": 1,
72954
+ "default": 1,
72955
+ "description": "Page number for pagination (default 1)"
72956
+ },
72957
+ "per_page": {
72958
+ "type": "number",
72959
+ "minimum": 1,
72960
+ "maximum": 100,
72961
+ "default": 25,
72962
+ "description": "Results per page (1-100, default 25)"
72963
+ },
72964
+ "credentials": {
72965
+ "type": "object",
72966
+ "additionalProperties": {
72967
+ "type": "string"
72968
+ },
72969
+ "description": "Object mapping credential types to values (injected at runtime)"
72970
+ }
72971
+ },
72972
+ "required": [
72973
+ "operation"
72974
+ ],
72975
+ "additionalProperties": false
72976
+ },
72977
+ {
72978
+ "type": "object",
72979
+ "properties": {
72980
+ "operation": {
72981
+ "type": "string",
72982
+ "enum": [
72983
+ "get_ticket"
72984
+ ],
72985
+ "description": "Retrieve a single ticket by ID with full details"
72986
+ },
72987
+ "ticket_id": {
72988
+ "type": "string",
72989
+ "minLength": 1,
72990
+ "description": "Zendesk ticket ID (numeric string)"
72991
+ },
72992
+ "credentials": {
72993
+ "type": "object",
72994
+ "additionalProperties": {
72995
+ "type": "string"
72996
+ },
72997
+ "description": "Object mapping credential types to values (injected at runtime)"
72998
+ }
72999
+ },
73000
+ "required": [
73001
+ "operation",
73002
+ "ticket_id"
73003
+ ],
73004
+ "additionalProperties": false
73005
+ },
73006
+ {
73007
+ "type": "object",
73008
+ "properties": {
73009
+ "operation": {
73010
+ "type": "string",
73011
+ "enum": [
73012
+ "create_ticket"
73013
+ ],
73014
+ "description": "Create a new support ticket"
73015
+ },
73016
+ "subject": {
73017
+ "type": "string",
73018
+ "minLength": 1,
73019
+ "description": "Ticket subject line"
73020
+ },
73021
+ "body": {
73022
+ "type": "string",
73023
+ "minLength": 1,
73024
+ "description": "Ticket description / initial comment body"
73025
+ },
73026
+ "requester_email": {
73027
+ "type": "string",
73028
+ "description": "Email of the requester (creates user if not found)"
73029
+ },
73030
+ "requester_name": {
73031
+ "type": "string",
73032
+ "description": "Name of the requester (used when creating a new requester alongside email)"
73033
+ },
73034
+ "assignee_id": {
73035
+ "type": "number",
73036
+ "description": "Agent ID to assign the ticket to"
73037
+ },
73038
+ "priority": {
73039
+ "type": "string",
73040
+ "enum": [
73041
+ "urgent",
73042
+ "high",
73043
+ "normal",
73044
+ "low"
73045
+ ],
73046
+ "description": "Ticket priority"
73047
+ },
73048
+ "type": {
73049
+ "type": "string",
73050
+ "enum": [
73051
+ "problem",
73052
+ "incident",
73053
+ "question",
73054
+ "task"
73055
+ ],
73056
+ "description": "Ticket type"
73057
+ },
73058
+ "tags": {
73059
+ "type": "array",
73060
+ "items": {
73061
+ "type": "string"
73062
+ },
73063
+ "description": "Tags to apply to the ticket"
73064
+ },
73065
+ "credentials": {
73066
+ "type": "object",
73067
+ "additionalProperties": {
73068
+ "type": "string"
73069
+ },
73070
+ "description": "Object mapping credential types to values (injected at runtime)"
73071
+ }
73072
+ },
73073
+ "required": [
73074
+ "operation",
73075
+ "subject",
73076
+ "body"
73077
+ ],
73078
+ "additionalProperties": false
73079
+ },
73080
+ {
73081
+ "type": "object",
73082
+ "properties": {
73083
+ "operation": {
73084
+ "type": "string",
73085
+ "enum": [
73086
+ "update_ticket"
73087
+ ],
73088
+ "description": "Update a ticket: add a reply/comment, change status, priority, or assignee"
73089
+ },
73090
+ "ticket_id": {
73091
+ "type": "string",
73092
+ "minLength": 1,
73093
+ "description": "Zendesk ticket ID (numeric string)"
73094
+ },
73095
+ "comment": {
73096
+ "type": "string",
73097
+ "description": "Comment body to add to the ticket (public reply or internal note)"
73098
+ },
73099
+ "public": {
73100
+ "type": "boolean",
73101
+ "default": true,
73102
+ "description": "Whether the comment is public (visible to requester) or internal note (default: true)"
73103
+ },
73104
+ "status": {
73105
+ "type": "string",
73106
+ "enum": [
73107
+ "new",
73108
+ "open",
73109
+ "pending",
73110
+ "hold",
73111
+ "solved",
73112
+ "closed"
73113
+ ],
73114
+ "description": "Set new ticket status"
73115
+ },
73116
+ "priority": {
73117
+ "type": "string",
73118
+ "enum": [
73119
+ "urgent",
73120
+ "high",
73121
+ "normal",
73122
+ "low"
73123
+ ],
73124
+ "description": "Set new ticket priority"
73125
+ },
73126
+ "assignee_id": {
73127
+ "type": "number",
73128
+ "description": "Reassign ticket to this agent ID"
73129
+ },
73130
+ "tags": {
73131
+ "type": "array",
73132
+ "items": {
73133
+ "type": "string"
73134
+ },
73135
+ "description": "Replace ticket tags with this list"
73136
+ },
73137
+ "credentials": {
73138
+ "type": "object",
73139
+ "additionalProperties": {
73140
+ "type": "string"
73141
+ },
73142
+ "description": "Object mapping credential types to values (injected at runtime)"
73143
+ }
73144
+ },
73145
+ "required": [
73146
+ "operation",
73147
+ "ticket_id"
73148
+ ],
73149
+ "additionalProperties": false
73150
+ },
73151
+ {
73152
+ "type": "object",
73153
+ "properties": {
73154
+ "operation": {
73155
+ "type": "string",
73156
+ "enum": [
73157
+ "list_ticket_comments"
73158
+ ],
73159
+ "description": "List comments/replies on a ticket"
73160
+ },
73161
+ "ticket_id": {
73162
+ "type": "string",
73163
+ "minLength": 1,
73164
+ "description": "Zendesk ticket ID (numeric string)"
73165
+ },
73166
+ "sort_order": {
73167
+ "type": "string",
73168
+ "enum": [
73169
+ "asc",
73170
+ "desc"
73171
+ ],
73172
+ "default": "asc",
73173
+ "description": "Sort order for comments (default: asc — oldest first)"
73174
+ },
73175
+ "page": {
73176
+ "type": "number",
73177
+ "minimum": 1,
73178
+ "default": 1,
73179
+ "description": "Page number for pagination (default 1)"
73180
+ },
73181
+ "per_page": {
73182
+ "type": "number",
73183
+ "minimum": 1,
73184
+ "maximum": 100,
73185
+ "default": 25,
73186
+ "description": "Results per page (1-100, default 25)"
73187
+ },
73188
+ "credentials": {
73189
+ "type": "object",
73190
+ "additionalProperties": {
73191
+ "type": "string"
73192
+ },
73193
+ "description": "Object mapping credential types to values (injected at runtime)"
73194
+ }
73195
+ },
73196
+ "required": [
73197
+ "operation",
73198
+ "ticket_id"
73199
+ ],
73200
+ "additionalProperties": false
73201
+ },
73202
+ {
73203
+ "type": "object",
73204
+ "properties": {
73205
+ "operation": {
73206
+ "type": "string",
73207
+ "enum": [
73208
+ "list_users"
73209
+ ],
73210
+ "description": "List or search users"
73211
+ },
73212
+ "query": {
73213
+ "type": "string",
73214
+ "description": "Search query (name or email)"
73215
+ },
73216
+ "role": {
73217
+ "type": "string",
73218
+ "enum": [
73219
+ "end-user",
73220
+ "agent",
73221
+ "admin"
73222
+ ],
73223
+ "description": "Filter by user role"
73224
+ },
73225
+ "page": {
73226
+ "type": "number",
73227
+ "minimum": 1,
73228
+ "default": 1,
73229
+ "description": "Page number for pagination (default 1)"
73230
+ },
73231
+ "per_page": {
73232
+ "type": "number",
73233
+ "minimum": 1,
73234
+ "maximum": 100,
73235
+ "default": 25,
73236
+ "description": "Results per page (1-100, default 25)"
73237
+ },
73238
+ "credentials": {
73239
+ "type": "object",
73240
+ "additionalProperties": {
73241
+ "type": "string"
73242
+ },
73243
+ "description": "Object mapping credential types to values (injected at runtime)"
73244
+ }
73245
+ },
73246
+ "required": [
73247
+ "operation"
73248
+ ],
73249
+ "additionalProperties": false
73250
+ },
73251
+ {
73252
+ "type": "object",
73253
+ "properties": {
73254
+ "operation": {
73255
+ "type": "string",
73256
+ "enum": [
73257
+ "get_user"
73258
+ ],
73259
+ "description": "Retrieve a single user by ID"
73260
+ },
73261
+ "user_id": {
73262
+ "type": "string",
73263
+ "minLength": 1,
73264
+ "description": "Zendesk user ID (numeric string)"
73265
+ },
73266
+ "credentials": {
73267
+ "type": "object",
73268
+ "additionalProperties": {
73269
+ "type": "string"
73270
+ },
73271
+ "description": "Object mapping credential types to values (injected at runtime)"
73272
+ }
73273
+ },
73274
+ "required": [
73275
+ "operation",
73276
+ "user_id"
73277
+ ],
73278
+ "additionalProperties": false
73279
+ },
73280
+ {
73281
+ "type": "object",
73282
+ "properties": {
73283
+ "operation": {
73284
+ "type": "string",
73285
+ "enum": [
73286
+ "list_organizations"
73287
+ ],
73288
+ "description": "List or search organizations"
73289
+ },
73290
+ "query": {
73291
+ "type": "string",
73292
+ "description": "Search by organization name or external ID"
73293
+ },
73294
+ "page": {
73295
+ "type": "number",
73296
+ "minimum": 1,
73297
+ "default": 1,
73298
+ "description": "Page number for pagination (default 1)"
73299
+ },
73300
+ "per_page": {
73301
+ "type": "number",
73302
+ "minimum": 1,
73303
+ "maximum": 100,
73304
+ "default": 25,
73305
+ "description": "Results per page (1-100, default 25)"
73306
+ },
73307
+ "credentials": {
73308
+ "type": "object",
73309
+ "additionalProperties": {
73310
+ "type": "string"
73311
+ },
73312
+ "description": "Object mapping credential types to values (injected at runtime)"
73313
+ }
73314
+ },
73315
+ "required": [
73316
+ "operation"
73317
+ ],
73318
+ "additionalProperties": false
73319
+ },
73320
+ {
73321
+ "type": "object",
73322
+ "properties": {
73323
+ "operation": {
73324
+ "type": "string",
73325
+ "enum": [
73326
+ "get_organization"
73327
+ ],
73328
+ "description": "Retrieve a single organization by ID"
73329
+ },
73330
+ "organization_id": {
73331
+ "type": "string",
73332
+ "minLength": 1,
73333
+ "description": "Zendesk organization ID (numeric string)"
73334
+ },
73335
+ "credentials": {
73336
+ "type": "object",
73337
+ "additionalProperties": {
73338
+ "type": "string"
73339
+ },
73340
+ "description": "Object mapping credential types to values (injected at runtime)"
73341
+ }
73342
+ },
73343
+ "required": [
73344
+ "operation",
73345
+ "organization_id"
73346
+ ],
73347
+ "additionalProperties": false
73348
+ },
73349
+ {
73350
+ "type": "object",
73351
+ "properties": {
73352
+ "operation": {
73353
+ "type": "string",
73354
+ "enum": [
73355
+ "search"
73356
+ ],
73357
+ "description": "Unified search across tickets, users, and organizations using Zendesk query syntax"
73358
+ },
73359
+ "query": {
73360
+ "type": "string",
73361
+ "minLength": 1,
73362
+ "description": "Zendesk search query (e.g., \"type:ticket status:open\", \"type:user email:john@example.com\")"
73363
+ },
73364
+ "sort_by": {
73365
+ "type": "string",
73366
+ "enum": [
73367
+ "updated_at",
73368
+ "created_at",
73369
+ "priority",
73370
+ "status",
73371
+ "ticket_type"
73372
+ ],
73373
+ "description": "Sort field"
73374
+ },
73375
+ "sort_order": {
73376
+ "type": "string",
73377
+ "enum": [
73378
+ "asc",
73379
+ "desc"
73380
+ ],
73381
+ "default": "desc",
73382
+ "description": "Sort order (default: desc)"
73383
+ },
73384
+ "page": {
73385
+ "type": "number",
73386
+ "minimum": 1,
73387
+ "default": 1,
73388
+ "description": "Page number for pagination (default 1)"
73389
+ },
73390
+ "per_page": {
73391
+ "type": "number",
73392
+ "minimum": 1,
73393
+ "maximum": 100,
73394
+ "default": 25,
73395
+ "description": "Results per page (1-100, default 25)"
73396
+ },
73397
+ "credentials": {
73398
+ "type": "object",
73399
+ "additionalProperties": {
73400
+ "type": "string"
73401
+ },
73402
+ "description": "Object mapping credential types to values (injected at runtime)"
73403
+ }
73404
+ },
73405
+ "required": [
73406
+ "operation",
73407
+ "query"
73408
+ ],
73409
+ "additionalProperties": false
73410
+ },
73411
+ {
73412
+ "type": "object",
73413
+ "properties": {
73414
+ "operation": {
73415
+ "type": "string",
73416
+ "enum": [
73417
+ "list_articles"
73418
+ ],
73419
+ "description": "List or search Help Center articles"
73420
+ },
73421
+ "query": {
73422
+ "type": "string",
73423
+ "description": "Search query for articles"
73424
+ },
73425
+ "section_id": {
73426
+ "type": "string",
73427
+ "description": "Filter articles by section ID"
73428
+ },
73429
+ "category_id": {
73430
+ "type": "string",
73431
+ "description": "Filter articles by category ID"
73432
+ },
73433
+ "locale": {
73434
+ "type": "string",
73435
+ "description": "Filter by locale (e.g., \"en-us\")"
73436
+ },
73437
+ "page": {
73438
+ "type": "number",
73439
+ "minimum": 1,
73440
+ "default": 1,
73441
+ "description": "Page number for pagination (default 1)"
73442
+ },
73443
+ "per_page": {
73444
+ "type": "number",
73445
+ "minimum": 1,
73446
+ "maximum": 100,
73447
+ "default": 25,
73448
+ "description": "Results per page (1-100, default 25)"
73449
+ },
73450
+ "credentials": {
73451
+ "type": "object",
73452
+ "additionalProperties": {
73453
+ "type": "string"
73454
+ },
73455
+ "description": "Object mapping credential types to values (injected at runtime)"
73456
+ }
73457
+ },
73458
+ "required": [
73459
+ "operation"
73460
+ ],
73461
+ "additionalProperties": false
73462
+ },
73463
+ {
73464
+ "type": "object",
73465
+ "properties": {
73466
+ "operation": {
73467
+ "type": "string",
73468
+ "enum": [
73469
+ "get_article"
73470
+ ],
73471
+ "description": "Retrieve a single Help Center article by ID with body content"
73472
+ },
73473
+ "article_id": {
73474
+ "type": "string",
73475
+ "minLength": 1,
73476
+ "description": "Zendesk Help Center article ID"
73477
+ },
73478
+ "locale": {
73479
+ "type": "string",
73480
+ "description": "Locale for the article (e.g., \"en-us\")"
73481
+ },
73482
+ "credentials": {
73483
+ "type": "object",
73484
+ "additionalProperties": {
73485
+ "type": "string"
73486
+ },
73487
+ "description": "Object mapping credential types to values (injected at runtime)"
73488
+ }
73489
+ },
73490
+ "required": [
73491
+ "operation",
73492
+ "article_id"
73493
+ ],
73494
+ "additionalProperties": false
73495
+ }
73496
+ ]
73497
+ },
73498
+ "outputJsonSchema": {
73499
+ "anyOf": [
73500
+ {
73501
+ "type": "object",
73502
+ "properties": {
73503
+ "operation": {
73504
+ "type": "string",
73505
+ "enum": [
73506
+ "list_tickets"
73507
+ ]
73508
+ },
73509
+ "success": {
73510
+ "type": "boolean",
73511
+ "description": "Whether the operation was successful"
73512
+ },
73513
+ "tickets": {
73514
+ "type": "array",
73515
+ "items": {
73516
+ "type": "object",
73517
+ "properties": {
73518
+ "id": {
73519
+ "type": "number",
73520
+ "description": "Ticket ID"
73521
+ },
73522
+ "subject": {
73523
+ "type": "string",
73524
+ "description": "Ticket subject"
73525
+ },
73526
+ "description": {
73527
+ "type": "string",
73528
+ "description": "Ticket description"
73529
+ },
73530
+ "status": {
73531
+ "type": "string",
73532
+ "description": "Ticket status"
73533
+ },
73534
+ "priority": {
73535
+ "type": "string",
73536
+ "nullable": true,
73537
+ "description": "Ticket priority"
73538
+ },
73539
+ "type": {
73540
+ "type": "string",
73541
+ "nullable": true,
73542
+ "description": "Ticket type"
73543
+ },
73544
+ "requester_id": {
73545
+ "type": "number",
73546
+ "description": "Requester user ID"
73547
+ },
73548
+ "assignee_id": {
73549
+ "type": "number",
73550
+ "nullable": true,
73551
+ "description": "Assignee user ID"
73552
+ },
73553
+ "organization_id": {
73554
+ "type": "number",
73555
+ "nullable": true,
73556
+ "description": "Organization ID"
73557
+ },
73558
+ "tags": {
73559
+ "type": "array",
73560
+ "items": {
73561
+ "type": "string"
73562
+ },
73563
+ "description": "Ticket tags"
73564
+ },
73565
+ "created_at": {
73566
+ "type": "string",
73567
+ "description": "Created timestamp"
73568
+ },
73569
+ "updated_at": {
73570
+ "type": "string",
73571
+ "description": "Updated timestamp"
73572
+ }
73573
+ },
73574
+ "required": [
73575
+ "id"
73576
+ ],
73577
+ "additionalProperties": false,
73578
+ "description": "A Zendesk ticket"
73579
+ },
73580
+ "description": "List of tickets"
73581
+ },
73582
+ "count": {
73583
+ "type": "number",
73584
+ "description": "Total ticket count"
73585
+ },
73586
+ "next_page": {
73587
+ "type": "string",
73588
+ "nullable": true,
73589
+ "description": "Next page URL"
73590
+ },
73591
+ "error": {
73592
+ "type": "string",
73593
+ "description": "Error message if operation failed"
73594
+ }
73595
+ },
73596
+ "required": [
73597
+ "operation",
73598
+ "success",
73599
+ "error"
73600
+ ],
73601
+ "additionalProperties": false
73602
+ },
73603
+ {
73604
+ "type": "object",
73605
+ "properties": {
73606
+ "operation": {
73607
+ "type": "string",
73608
+ "enum": [
73609
+ "get_ticket"
73610
+ ]
73611
+ },
73612
+ "success": {
73613
+ "type": "boolean",
73614
+ "description": "Whether the operation was successful"
73615
+ },
73616
+ "ticket": {
73617
+ "type": "object",
73618
+ "properties": {
73619
+ "id": {
73620
+ "type": "number",
73621
+ "description": "Ticket ID"
73622
+ },
73623
+ "subject": {
73624
+ "type": "string",
73625
+ "description": "Ticket subject"
73626
+ },
73627
+ "description": {
73628
+ "type": "string",
73629
+ "description": "Ticket description"
73630
+ },
73631
+ "status": {
73632
+ "type": "string",
73633
+ "description": "Ticket status"
73634
+ },
73635
+ "priority": {
73636
+ "type": "string",
73637
+ "nullable": true,
73638
+ "description": "Ticket priority"
73639
+ },
73640
+ "type": {
73641
+ "type": "string",
73642
+ "nullable": true,
73643
+ "description": "Ticket type"
73644
+ },
73645
+ "requester_id": {
73646
+ "type": "number",
73647
+ "description": "Requester user ID"
73648
+ },
73649
+ "assignee_id": {
73650
+ "type": "number",
73651
+ "nullable": true,
73652
+ "description": "Assignee user ID"
73653
+ },
73654
+ "organization_id": {
73655
+ "type": "number",
73656
+ "nullable": true,
73657
+ "description": "Organization ID"
73658
+ },
73659
+ "tags": {
73660
+ "type": "array",
73661
+ "items": {
73662
+ "type": "string"
73663
+ },
73664
+ "description": "Ticket tags"
73665
+ },
73666
+ "created_at": {
73667
+ "type": "string",
73668
+ "description": "Created timestamp"
73669
+ },
73670
+ "updated_at": {
73671
+ "type": "string",
73672
+ "description": "Updated timestamp"
73673
+ }
73674
+ },
73675
+ "required": [
73676
+ "id"
73677
+ ],
73678
+ "additionalProperties": false,
73679
+ "description": "Retrieved ticket"
73680
+ },
73681
+ "error": {
73682
+ "type": "string",
73683
+ "description": "Error message if operation failed"
73684
+ }
73685
+ },
73686
+ "required": [
73687
+ "operation",
73688
+ "success",
73689
+ "error"
73690
+ ],
73691
+ "additionalProperties": false
73692
+ },
73693
+ {
73694
+ "type": "object",
73695
+ "properties": {
73696
+ "operation": {
73697
+ "type": "string",
73698
+ "enum": [
73699
+ "create_ticket"
73700
+ ]
73701
+ },
73702
+ "success": {
73703
+ "type": "boolean",
73704
+ "description": "Whether the operation was successful"
73705
+ },
73706
+ "ticket": {
73707
+ "type": "object",
73708
+ "properties": {
73709
+ "id": {
73710
+ "type": "number",
73711
+ "description": "Ticket ID"
73712
+ },
73713
+ "subject": {
73714
+ "type": "string",
73715
+ "description": "Ticket subject"
73716
+ },
73717
+ "description": {
73718
+ "type": "string",
73719
+ "description": "Ticket description"
73720
+ },
73721
+ "status": {
73722
+ "type": "string",
73723
+ "description": "Ticket status"
73724
+ },
73725
+ "priority": {
73726
+ "type": "string",
73727
+ "nullable": true,
73728
+ "description": "Ticket priority"
73729
+ },
73730
+ "type": {
73731
+ "type": "string",
73732
+ "nullable": true,
73733
+ "description": "Ticket type"
73734
+ },
73735
+ "requester_id": {
73736
+ "type": "number",
73737
+ "description": "Requester user ID"
73738
+ },
73739
+ "assignee_id": {
73740
+ "type": "number",
73741
+ "nullable": true,
73742
+ "description": "Assignee user ID"
73743
+ },
73744
+ "organization_id": {
73745
+ "type": "number",
73746
+ "nullable": true,
73747
+ "description": "Organization ID"
73748
+ },
73749
+ "tags": {
73750
+ "type": "array",
73751
+ "items": {
73752
+ "type": "string"
73753
+ },
73754
+ "description": "Ticket tags"
73755
+ },
73756
+ "created_at": {
73757
+ "type": "string",
73758
+ "description": "Created timestamp"
73759
+ },
73760
+ "updated_at": {
73761
+ "type": "string",
73762
+ "description": "Updated timestamp"
73763
+ }
73764
+ },
73765
+ "required": [
73766
+ "id"
73767
+ ],
73768
+ "additionalProperties": false,
73769
+ "description": "Created ticket"
73770
+ },
73771
+ "error": {
73772
+ "type": "string",
73773
+ "description": "Error message if operation failed"
73774
+ }
73775
+ },
73776
+ "required": [
73777
+ "operation",
73778
+ "success",
73779
+ "error"
73780
+ ],
73781
+ "additionalProperties": false
73782
+ },
73783
+ {
73784
+ "type": "object",
73785
+ "properties": {
73786
+ "operation": {
73787
+ "type": "string",
73788
+ "enum": [
73789
+ "update_ticket"
73790
+ ]
73791
+ },
73792
+ "success": {
73793
+ "type": "boolean",
73794
+ "description": "Whether the operation was successful"
73795
+ },
73796
+ "ticket": {
73797
+ "type": "object",
73798
+ "properties": {
73799
+ "id": {
73800
+ "type": "number",
73801
+ "description": "Ticket ID"
73802
+ },
73803
+ "subject": {
73804
+ "type": "string",
73805
+ "description": "Ticket subject"
73806
+ },
73807
+ "description": {
73808
+ "type": "string",
73809
+ "description": "Ticket description"
73810
+ },
73811
+ "status": {
73812
+ "type": "string",
73813
+ "description": "Ticket status"
73814
+ },
73815
+ "priority": {
73816
+ "type": "string",
73817
+ "nullable": true,
73818
+ "description": "Ticket priority"
73819
+ },
73820
+ "type": {
73821
+ "type": "string",
73822
+ "nullable": true,
73823
+ "description": "Ticket type"
73824
+ },
73825
+ "requester_id": {
73826
+ "type": "number",
73827
+ "description": "Requester user ID"
73828
+ },
73829
+ "assignee_id": {
73830
+ "type": "number",
73831
+ "nullable": true,
73832
+ "description": "Assignee user ID"
73833
+ },
73834
+ "organization_id": {
73835
+ "type": "number",
73836
+ "nullable": true,
73837
+ "description": "Organization ID"
73838
+ },
73839
+ "tags": {
73840
+ "type": "array",
73841
+ "items": {
73842
+ "type": "string"
73843
+ },
73844
+ "description": "Ticket tags"
73845
+ },
73846
+ "created_at": {
73847
+ "type": "string",
73848
+ "description": "Created timestamp"
73849
+ },
73850
+ "updated_at": {
73851
+ "type": "string",
73852
+ "description": "Updated timestamp"
73853
+ }
73854
+ },
73855
+ "required": [
73856
+ "id"
73857
+ ],
73858
+ "additionalProperties": false,
73859
+ "description": "Updated ticket"
73860
+ },
73861
+ "error": {
73862
+ "type": "string",
73863
+ "description": "Error message if operation failed"
73864
+ }
73865
+ },
73866
+ "required": [
73867
+ "operation",
73868
+ "success",
73869
+ "error"
73870
+ ],
73871
+ "additionalProperties": false
73872
+ },
73873
+ {
73874
+ "type": "object",
73875
+ "properties": {
73876
+ "operation": {
73877
+ "type": "string",
73878
+ "enum": [
73879
+ "list_ticket_comments"
73880
+ ]
73881
+ },
73882
+ "success": {
73883
+ "type": "boolean",
73884
+ "description": "Whether the operation was successful"
73885
+ },
73886
+ "comments": {
73887
+ "type": "array",
73888
+ "items": {
73889
+ "type": "object",
73890
+ "properties": {
73891
+ "id": {
73892
+ "type": "number",
73893
+ "description": "Comment ID"
73894
+ },
73895
+ "body": {
73896
+ "type": "string",
73897
+ "description": "Comment body text"
73898
+ },
73899
+ "html_body": {
73900
+ "type": "string",
73901
+ "description": "Comment body HTML"
73902
+ },
73903
+ "public": {
73904
+ "type": "boolean",
73905
+ "description": "Whether comment is public"
73906
+ },
73907
+ "author_id": {
73908
+ "type": "number",
73909
+ "description": "Author user ID"
73910
+ },
73911
+ "created_at": {
73912
+ "type": "string",
73913
+ "description": "Created timestamp"
73914
+ }
73915
+ },
73916
+ "required": [
73917
+ "id"
73918
+ ],
73919
+ "additionalProperties": false,
73920
+ "description": "A Zendesk ticket comment"
73921
+ },
73922
+ "description": "List of comments"
73923
+ },
73924
+ "count": {
73925
+ "type": "number",
73926
+ "description": "Total comment count"
73927
+ },
73928
+ "next_page": {
73929
+ "type": "string",
73930
+ "nullable": true,
73931
+ "description": "Next page URL"
73932
+ },
73933
+ "error": {
73934
+ "type": "string",
73935
+ "description": "Error message if operation failed"
73936
+ }
73937
+ },
73938
+ "required": [
73939
+ "operation",
73940
+ "success",
73941
+ "error"
73942
+ ],
73943
+ "additionalProperties": false
73944
+ },
73945
+ {
73946
+ "type": "object",
73947
+ "properties": {
73948
+ "operation": {
73949
+ "type": "string",
73950
+ "enum": [
73951
+ "list_users"
73952
+ ]
73953
+ },
73954
+ "success": {
73955
+ "type": "boolean",
73956
+ "description": "Whether the operation was successful"
73957
+ },
73958
+ "users": {
73959
+ "type": "array",
73960
+ "items": {
73961
+ "type": "object",
73962
+ "properties": {
73963
+ "id": {
73964
+ "type": "number",
73965
+ "description": "User ID"
73966
+ },
73967
+ "name": {
73968
+ "type": "string",
73969
+ "description": "User name"
73970
+ },
73971
+ "email": {
73972
+ "type": "string",
73973
+ "description": "User email"
73974
+ },
73975
+ "role": {
73976
+ "type": "string",
73977
+ "description": "User role (end-user, agent, admin)"
73978
+ },
73979
+ "organization_id": {
73980
+ "type": "number",
73981
+ "nullable": true,
73982
+ "description": "Organization ID"
73983
+ },
73984
+ "active": {
73985
+ "type": "boolean",
73986
+ "description": "Whether user is active"
73987
+ },
73988
+ "created_at": {
73989
+ "type": "string",
73990
+ "description": "Created timestamp"
73991
+ }
73992
+ },
73993
+ "required": [
73994
+ "id"
73995
+ ],
73996
+ "additionalProperties": false,
73997
+ "description": "A Zendesk user"
73998
+ },
73999
+ "description": "List of users"
74000
+ },
74001
+ "count": {
74002
+ "type": "number",
74003
+ "description": "Total user count"
74004
+ },
74005
+ "next_page": {
74006
+ "type": "string",
74007
+ "nullable": true,
74008
+ "description": "Next page URL"
74009
+ },
74010
+ "error": {
74011
+ "type": "string",
74012
+ "description": "Error message if operation failed"
74013
+ }
74014
+ },
74015
+ "required": [
74016
+ "operation",
74017
+ "success",
74018
+ "error"
74019
+ ],
74020
+ "additionalProperties": false
74021
+ },
74022
+ {
74023
+ "type": "object",
74024
+ "properties": {
74025
+ "operation": {
74026
+ "type": "string",
74027
+ "enum": [
74028
+ "get_user"
74029
+ ]
74030
+ },
74031
+ "success": {
74032
+ "type": "boolean",
74033
+ "description": "Whether the operation was successful"
74034
+ },
74035
+ "user": {
74036
+ "type": "object",
74037
+ "properties": {
74038
+ "id": {
74039
+ "type": "number",
74040
+ "description": "User ID"
74041
+ },
74042
+ "name": {
74043
+ "type": "string",
74044
+ "description": "User name"
74045
+ },
74046
+ "email": {
74047
+ "type": "string",
74048
+ "description": "User email"
74049
+ },
74050
+ "role": {
74051
+ "type": "string",
74052
+ "description": "User role (end-user, agent, admin)"
74053
+ },
74054
+ "organization_id": {
74055
+ "type": "number",
74056
+ "nullable": true,
74057
+ "description": "Organization ID"
74058
+ },
74059
+ "active": {
74060
+ "type": "boolean",
74061
+ "description": "Whether user is active"
74062
+ },
74063
+ "created_at": {
74064
+ "type": "string",
74065
+ "description": "Created timestamp"
74066
+ }
74067
+ },
74068
+ "required": [
74069
+ "id"
74070
+ ],
74071
+ "additionalProperties": false,
74072
+ "description": "Retrieved user"
74073
+ },
74074
+ "error": {
74075
+ "type": "string",
74076
+ "description": "Error message if operation failed"
74077
+ }
74078
+ },
74079
+ "required": [
74080
+ "operation",
74081
+ "success",
74082
+ "error"
74083
+ ],
74084
+ "additionalProperties": false
74085
+ },
74086
+ {
74087
+ "type": "object",
74088
+ "properties": {
74089
+ "operation": {
74090
+ "type": "string",
74091
+ "enum": [
74092
+ "list_organizations"
74093
+ ]
74094
+ },
74095
+ "success": {
74096
+ "type": "boolean",
74097
+ "description": "Whether the operation was successful"
74098
+ },
74099
+ "organizations": {
74100
+ "type": "array",
74101
+ "items": {
74102
+ "type": "object",
74103
+ "properties": {
74104
+ "id": {
74105
+ "type": "number",
74106
+ "description": "Organization ID"
74107
+ },
74108
+ "name": {
74109
+ "type": "string",
74110
+ "description": "Organization name"
74111
+ },
74112
+ "domain_names": {
74113
+ "type": "array",
74114
+ "items": {
74115
+ "type": "string"
74116
+ },
74117
+ "description": "Associated domain names"
74118
+ },
74119
+ "external_id": {
74120
+ "type": "string",
74121
+ "nullable": true,
74122
+ "description": "External ID"
74123
+ },
74124
+ "created_at": {
74125
+ "type": "string",
74126
+ "description": "Created timestamp"
74127
+ }
74128
+ },
74129
+ "required": [
74130
+ "id"
74131
+ ],
74132
+ "additionalProperties": false,
74133
+ "description": "A Zendesk organization"
74134
+ },
74135
+ "description": "List of organizations"
74136
+ },
74137
+ "count": {
74138
+ "type": "number",
74139
+ "description": "Total organization count"
74140
+ },
74141
+ "next_page": {
74142
+ "type": "string",
74143
+ "nullable": true,
74144
+ "description": "Next page URL"
74145
+ },
74146
+ "error": {
74147
+ "type": "string",
74148
+ "description": "Error message if operation failed"
74149
+ }
74150
+ },
74151
+ "required": [
74152
+ "operation",
74153
+ "success",
74154
+ "error"
74155
+ ],
74156
+ "additionalProperties": false
74157
+ },
74158
+ {
74159
+ "type": "object",
74160
+ "properties": {
74161
+ "operation": {
74162
+ "type": "string",
74163
+ "enum": [
74164
+ "get_organization"
74165
+ ]
74166
+ },
74167
+ "success": {
74168
+ "type": "boolean",
74169
+ "description": "Whether the operation was successful"
74170
+ },
74171
+ "organization": {
74172
+ "type": "object",
74173
+ "properties": {
74174
+ "id": {
74175
+ "type": "number",
74176
+ "description": "Organization ID"
74177
+ },
74178
+ "name": {
74179
+ "type": "string",
74180
+ "description": "Organization name"
74181
+ },
74182
+ "domain_names": {
74183
+ "type": "array",
74184
+ "items": {
74185
+ "type": "string"
74186
+ },
74187
+ "description": "Associated domain names"
74188
+ },
74189
+ "external_id": {
74190
+ "type": "string",
74191
+ "nullable": true,
74192
+ "description": "External ID"
74193
+ },
74194
+ "created_at": {
74195
+ "type": "string",
74196
+ "description": "Created timestamp"
74197
+ }
74198
+ },
74199
+ "required": [
74200
+ "id"
74201
+ ],
74202
+ "additionalProperties": false,
74203
+ "description": "Retrieved organization"
74204
+ },
74205
+ "error": {
74206
+ "type": "string",
74207
+ "description": "Error message if operation failed"
74208
+ }
74209
+ },
74210
+ "required": [
74211
+ "operation",
74212
+ "success",
74213
+ "error"
74214
+ ],
74215
+ "additionalProperties": false
74216
+ },
74217
+ {
74218
+ "type": "object",
74219
+ "properties": {
74220
+ "operation": {
74221
+ "type": "string",
74222
+ "enum": [
74223
+ "search"
74224
+ ]
74225
+ },
74226
+ "success": {
74227
+ "type": "boolean",
74228
+ "description": "Whether the operation was successful"
74229
+ },
74230
+ "results": {
74231
+ "type": "array",
74232
+ "items": {
74233
+ "type": "object",
74234
+ "additionalProperties": {}
74235
+ },
74236
+ "description": "Search results (mixed types)"
74237
+ },
74238
+ "count": {
74239
+ "type": "number",
74240
+ "description": "Total result count"
74241
+ },
74242
+ "next_page": {
74243
+ "type": "string",
74244
+ "nullable": true,
74245
+ "description": "Next page URL"
74246
+ },
74247
+ "error": {
74248
+ "type": "string",
74249
+ "description": "Error message if operation failed"
74250
+ }
74251
+ },
74252
+ "required": [
74253
+ "operation",
74254
+ "success",
74255
+ "error"
74256
+ ],
74257
+ "additionalProperties": false
74258
+ },
74259
+ {
74260
+ "type": "object",
74261
+ "properties": {
74262
+ "operation": {
74263
+ "type": "string",
74264
+ "enum": [
74265
+ "list_articles"
74266
+ ]
74267
+ },
74268
+ "success": {
74269
+ "type": "boolean",
74270
+ "description": "Whether the operation was successful"
74271
+ },
74272
+ "articles": {
74273
+ "type": "array",
74274
+ "items": {
74275
+ "type": "object",
74276
+ "properties": {
74277
+ "id": {
74278
+ "type": "number",
74279
+ "description": "Article ID"
74280
+ },
74281
+ "title": {
74282
+ "type": "string",
74283
+ "description": "Article title"
74284
+ },
74285
+ "body": {
74286
+ "type": "string",
74287
+ "description": "Article body HTML"
74288
+ },
74289
+ "locale": {
74290
+ "type": "string",
74291
+ "description": "Article locale"
74292
+ },
74293
+ "section_id": {
74294
+ "type": "number",
74295
+ "description": "Section ID"
74296
+ },
74297
+ "author_id": {
74298
+ "type": "number",
74299
+ "description": "Author user ID"
74300
+ },
74301
+ "draft": {
74302
+ "type": "boolean",
74303
+ "description": "Whether article is a draft"
74304
+ },
74305
+ "created_at": {
74306
+ "type": "string",
74307
+ "description": "Created timestamp"
74308
+ },
74309
+ "updated_at": {
74310
+ "type": "string",
74311
+ "description": "Updated timestamp"
74312
+ }
74313
+ },
74314
+ "required": [
74315
+ "id"
74316
+ ],
74317
+ "additionalProperties": false,
74318
+ "description": "A Zendesk Help Center article"
74319
+ },
74320
+ "description": "List of articles"
74321
+ },
74322
+ "count": {
74323
+ "type": "number",
74324
+ "description": "Total article count"
74325
+ },
74326
+ "next_page": {
74327
+ "type": "string",
74328
+ "nullable": true,
74329
+ "description": "Next page URL"
74330
+ },
74331
+ "error": {
74332
+ "type": "string",
74333
+ "description": "Error message if operation failed"
74334
+ }
74335
+ },
74336
+ "required": [
74337
+ "operation",
74338
+ "success",
74339
+ "error"
74340
+ ],
74341
+ "additionalProperties": false
74342
+ },
74343
+ {
74344
+ "type": "object",
74345
+ "properties": {
74346
+ "operation": {
74347
+ "type": "string",
74348
+ "enum": [
74349
+ "get_article"
74350
+ ]
74351
+ },
74352
+ "success": {
74353
+ "type": "boolean",
74354
+ "description": "Whether the operation was successful"
74355
+ },
74356
+ "article": {
74357
+ "type": "object",
74358
+ "properties": {
74359
+ "id": {
74360
+ "type": "number",
74361
+ "description": "Article ID"
74362
+ },
74363
+ "title": {
74364
+ "type": "string",
74365
+ "description": "Article title"
74366
+ },
74367
+ "body": {
74368
+ "type": "string",
74369
+ "description": "Article body HTML"
74370
+ },
74371
+ "locale": {
74372
+ "type": "string",
74373
+ "description": "Article locale"
74374
+ },
74375
+ "section_id": {
74376
+ "type": "number",
74377
+ "description": "Section ID"
74378
+ },
74379
+ "author_id": {
74380
+ "type": "number",
74381
+ "description": "Author user ID"
74382
+ },
74383
+ "draft": {
74384
+ "type": "boolean",
74385
+ "description": "Whether article is a draft"
74386
+ },
74387
+ "created_at": {
74388
+ "type": "string",
74389
+ "description": "Created timestamp"
74390
+ },
74391
+ "updated_at": {
74392
+ "type": "string",
74393
+ "description": "Updated timestamp"
74394
+ }
74395
+ },
74396
+ "required": [
74397
+ "id"
74398
+ ],
74399
+ "additionalProperties": false,
74400
+ "description": "Retrieved article"
74401
+ },
74402
+ "error": {
74403
+ "type": "string",
74404
+ "description": "Error message if operation failed"
74405
+ }
74406
+ },
74407
+ "required": [
74408
+ "operation",
74409
+ "success",
74410
+ "error"
74411
+ ],
74412
+ "additionalProperties": false
74413
+ }
74414
+ ]
74415
+ },
74416
+ "usageExample": "// List Tickets example\nconst zendesk_list_tickets = new ZendeskBubble({\n operation: \"list_tickets\", // List tickets with optional filters\n status: \"new\" // options: \"new\", \"open\", \"pending\", \"hold\", \"solved\", \"closed\", // Filter by ticket status\n sort_by: \"created_at\" // options: \"created_at\", \"updated_at\", \"priority\", \"status\", // Sort field (default: updated_at)\n sort_order: \"asc\" // options: \"asc\", \"desc\", // Sort order (default: desc)\n page: 1 // default, // Page number for pagination (default 1)\n per_page: 25 // default, // Results per page (1-100, default 25)\n});\n\nconst result = await zendesk_list_tickets.action();\n// outputSchema for result.data when operation === 'list_tickets':\n// {\n// operation: \"list_tickets\",\n// success: boolean // Whether the operation was successful,\n// tickets: { id: number // Ticket ID, subject: string | undefined // Ticket subject, description: string | undefined // Ticket description, status: string | undefined // Ticket status, priority: string | undefined | null // Ticket priority, type: string | undefined | null // Ticket type, requester_id: number | undefined // Requester user ID, assignee_id: number | undefined | null // Assignee user ID, organization_id: number | undefined | null // Organization ID, tags: string[] | undefined // Ticket tags, created_at: string | undefined // Created timestamp, updated_at: string | undefined // Updated timestamp }[] | undefined // List of tickets,\n// count: number | undefined // Total ticket count,\n// next_page: string | undefined | null // Next page URL,\n// error: string // Error message if operation failed\n// }\n\n\n// Get Ticket example\nconst zendesk_get_ticket = new ZendeskBubble({\n operation: \"get_ticket\", // Retrieve a single ticket by ID with full details\n ticket_id: \"example string\", // Zendesk ticket ID (numeric string)\n});\n\nconst result = await zendesk_get_ticket.action();\n// outputSchema for result.data when operation === 'get_ticket':\n// {\n// operation: \"get_ticket\",\n// success: boolean // Whether the operation was successful,\n// ticket: { id: number // Ticket ID, subject: string | undefined // Ticket subject, description: string | undefined // Ticket description, status: string | undefined // Ticket status, priority: string | undefined | null // Ticket priority, type: string | undefined | null // Ticket type, requester_id: number | undefined // Requester user ID, assignee_id: number | undefined | null // Assignee user ID, organization_id: number | undefined | null // Organization ID, tags: string[] | undefined // Ticket tags, created_at: string | undefined // Created timestamp, updated_at: string | undefined // Updated timestamp } | undefined // Retrieved ticket,\n// error: string // Error message if operation failed\n// }\n\n\n// Create Ticket example\nconst zendesk_create_ticket = new ZendeskBubble({\n operation: \"create_ticket\", // Create a new support ticket\n subject: \"example string\", // Ticket subject line\n body: \"example string\", // Ticket description / initial comment body\n requester_email: \"example string\", // Email of the requester (creates user if not found)\n requester_name: \"example string\", // Name of the requester (used when creating a new requester alongside email)\n assignee_id: 42, // Agent ID to assign the ticket to\n priority: \"urgent\" // options: \"urgent\", \"high\", \"normal\", \"low\", // Ticket priority\n type: \"problem\" // options: \"problem\", \"incident\", \"question\", \"task\", // Ticket type\n tags: [\"example string\"], // Tags to apply to the ticket\n});\n\nconst result = await zendesk_create_ticket.action();\n// outputSchema for result.data when operation === 'create_ticket':\n// {\n// operation: \"create_ticket\",\n// success: boolean // Whether the operation was successful,\n// ticket: { id: number // Ticket ID, subject: string | undefined // Ticket subject, description: string | undefined // Ticket description, status: string | undefined // Ticket status, priority: string | undefined | null // Ticket priority, type: string | undefined | null // Ticket type, requester_id: number | undefined // Requester user ID, assignee_id: number | undefined | null // Assignee user ID, organization_id: number | undefined | null // Organization ID, tags: string[] | undefined // Ticket tags, created_at: string | undefined // Created timestamp, updated_at: string | undefined // Updated timestamp } | undefined // Created ticket,\n// error: string // Error message if operation failed\n// }\n\n\n// Update Ticket example\nconst zendesk_update_ticket = new ZendeskBubble({\n operation: \"update_ticket\", // Update a ticket: add a reply/comment, change status, priority, or assignee\n ticket_id: \"example string\", // Zendesk ticket ID (numeric string)\n comment: \"example string\", // Comment body to add to the ticket (public reply or internal note)\n public: true // default, // Whether the comment is public (visible to requester) or internal note (default: true)\n status: \"new\" // options: \"new\", \"open\", \"pending\", \"hold\", \"solved\", \"closed\", // Set new ticket status\n priority: \"urgent\" // options: \"urgent\", \"high\", \"normal\", \"low\", // Set new ticket priority\n assignee_id: 42, // Reassign ticket to this agent ID\n tags: [\"example string\"], // Replace ticket tags with this list\n});\n\nconst result = await zendesk_update_ticket.action();\n// outputSchema for result.data when operation === 'update_ticket':\n// {\n// operation: \"update_ticket\",\n// success: boolean // Whether the operation was successful,\n// ticket: { id: number // Ticket ID, subject: string | undefined // Ticket subject, description: string | undefined // Ticket description, status: string | undefined // Ticket status, priority: string | undefined | null // Ticket priority, type: string | undefined | null // Ticket type, requester_id: number | undefined // Requester user ID, assignee_id: number | undefined | null // Assignee user ID, organization_id: number | undefined | null // Organization ID, tags: string[] | undefined // Ticket tags, created_at: string | undefined // Created timestamp, updated_at: string | undefined // Updated timestamp } | undefined // Updated ticket,\n// error: string // Error message if operation failed\n// }\n\n\n// List Ticket Comments example\nconst zendesk_list_ticket_comments = new ZendeskBubble({\n operation: \"list_ticket_comments\", // List comments/replies on a ticket\n ticket_id: \"example string\", // Zendesk ticket ID (numeric string)\n sort_order: \"asc\" // options: \"asc\", \"desc\", // Sort order for comments (default: asc — oldest first)\n page: 1 // default, // Page number for pagination (default 1)\n per_page: 25 // default, // Results per page (1-100, default 25)\n});\n\nconst result = await zendesk_list_ticket_comments.action();\n// outputSchema for result.data when operation === 'list_ticket_comments':\n// {\n// operation: \"list_ticket_comments\",\n// success: boolean // Whether the operation was successful,\n// comments: { id: number // Comment ID, body: string | undefined // Comment body text, html_body: string | undefined // Comment body HTML, public: boolean | undefined // Whether comment is public, author_id: number | undefined // Author user ID, created_at: string | undefined // Created timestamp }[] | undefined // List of comments,\n// count: number | undefined // Total comment count,\n// next_page: string | undefined | null // Next page URL,\n// error: string // Error message if operation failed\n// }\n\n\n// List Users example\nconst zendesk_list_users = new ZendeskBubble({\n operation: \"list_users\", // List or search users\n query: \"example string\", // Search query (name or email)\n role: \"end-user\" // options: \"end-user\", \"agent\", \"admin\", // Filter by user role\n page: 1 // default, // Page number for pagination (default 1)\n per_page: 25 // default, // Results per page (1-100, default 25)\n});\n\nconst result = await zendesk_list_users.action();\n// outputSchema for result.data when operation === 'list_users':\n// {\n// operation: \"list_users\",\n// success: boolean // Whether the operation was successful,\n// users: { id: number // User ID, name: string | undefined // User name, email: string | undefined // User email, role: string | undefined // User role (end-user, agent, admin), organization_id: number | undefined | null // Organization ID, active: boolean | undefined // Whether user is active, created_at: string | undefined // Created timestamp }[] | undefined // List of users,\n// count: number | undefined // Total user count,\n// next_page: string | undefined | null // Next page URL,\n// error: string // Error message if operation failed\n// }\n\n\n// Get User example\nconst zendesk_get_user = new ZendeskBubble({\n operation: \"get_user\", // Retrieve a single user by ID\n user_id: \"example string\", // Zendesk user ID (numeric string)\n});\n\nconst result = await zendesk_get_user.action();\n// outputSchema for result.data when operation === 'get_user':\n// {\n// operation: \"get_user\",\n// success: boolean // Whether the operation was successful,\n// user: { id: number // User ID, name: string | undefined // User name, email: string | undefined // User email, role: string | undefined // User role (end-user, agent, admin), organization_id: number | undefined | null // Organization ID, active: boolean | undefined // Whether user is active, created_at: string | undefined // Created timestamp } | undefined // Retrieved user,\n// error: string // Error message if operation failed\n// }\n\n\n// List Organizations example\nconst zendesk_list_organizations = new ZendeskBubble({\n operation: \"list_organizations\", // List or search organizations\n query: \"example string\", // Search by organization name or external ID\n page: 1 // default, // Page number for pagination (default 1)\n per_page: 25 // default, // Results per page (1-100, default 25)\n});\n\nconst result = await zendesk_list_organizations.action();\n// outputSchema for result.data when operation === 'list_organizations':\n// {\n// operation: \"list_organizations\",\n// success: boolean // Whether the operation was successful,\n// organizations: { id: number // Organization ID, name: string | undefined // Organization name, domain_names: string[] | undefined // Associated domain names, external_id: string | undefined | null // External ID, created_at: string | undefined // Created timestamp }[] | undefined // List of organizations,\n// count: number | undefined // Total organization count,\n// next_page: string | undefined | null // Next page URL,\n// error: string // Error message if operation failed\n// }\n\n\n// Get Organization example\nconst zendesk_get_organization = new ZendeskBubble({\n operation: \"get_organization\", // Retrieve a single organization by ID\n organization_id: \"example string\", // Zendesk organization ID (numeric string)\n});\n\nconst result = await zendesk_get_organization.action();\n// outputSchema for result.data when operation === 'get_organization':\n// {\n// operation: \"get_organization\",\n// success: boolean // Whether the operation was successful,\n// organization: { id: number // Organization ID, name: string | undefined // Organization name, domain_names: string[] | undefined // Associated domain names, external_id: string | undefined | null // External ID, created_at: string | undefined // Created timestamp } | undefined // Retrieved organization,\n// error: string // Error message if operation failed\n// }\n\n\n// Search example\nconst zendesk_search = new ZendeskBubble({\n operation: \"search\", // Unified search across tickets, users, and organizations using Zendesk query syntax\n query: \"example string\", // Zendesk search query (e.g., \"type:ticket status:open\", \"type:user email:john@example.com\")\n sort_by: \"updated_at\" // options: \"updated_at\", \"created_at\", \"priority\", \"status\", \"ticket_type\", // Sort field\n sort_order: \"asc\" // options: \"asc\", \"desc\", // Sort order (default: desc)\n page: 1 // default, // Page number for pagination (default 1)\n per_page: 25 // default, // Results per page (1-100, default 25)\n});\n\nconst result = await zendesk_search.action();\n// outputSchema for result.data when operation === 'search':\n// {\n// operation: \"search\",\n// success: boolean // Whether the operation was successful,\n// results: Record<string, unknown>[] | undefined // Search results (mixed types),\n// count: number | undefined // Total result count,\n// next_page: string | undefined | null // Next page URL,\n// error: string // Error message if operation failed\n// }\n\n\n// List Articles example\nconst zendesk_list_articles = new ZendeskBubble({\n operation: \"list_articles\", // List or search Help Center articles\n query: \"example string\", // Search query for articles\n section_id: \"example string\", // Filter articles by section ID\n category_id: \"example string\", // Filter articles by category ID\n locale: \"example string\", // Filter by locale (e.g., \"en-us\")\n page: 1 // default, // Page number for pagination (default 1)\n per_page: 25 // default, // Results per page (1-100, default 25)\n});\n\nconst result = await zendesk_list_articles.action();\n// outputSchema for result.data when operation === 'list_articles':\n// {\n// operation: \"list_articles\",\n// success: boolean // Whether the operation was successful,\n// articles: { id: number // Article ID, title: string | undefined // Article title, body: string | undefined // Article body HTML, locale: string | undefined // Article locale, section_id: number | undefined // Section ID, author_id: number | undefined // Author user ID, draft: boolean | undefined // Whether article is a draft, created_at: string | undefined // Created timestamp, updated_at: string | undefined // Updated timestamp }[] | undefined // List of articles,\n// count: number | undefined // Total article count,\n// next_page: string | undefined | null // Next page URL,\n// error: string // Error message if operation failed\n// }\n\n\n// Get Article example\nconst zendesk_get_article = new ZendeskBubble({\n operation: \"get_article\", // Retrieve a single Help Center article by ID with body content\n article_id: \"example string\", // Zendesk Help Center article ID\n locale: \"example string\", // Locale for the article (e.g., \"en-us\")\n});\n\nconst result = await zendesk_get_article.action();\n// outputSchema for result.data when operation === 'get_article':\n// {\n// operation: \"get_article\",\n// success: boolean // Whether the operation was successful,\n// article: { id: number // Article ID, title: string | undefined // Article title, body: string | undefined // Article body HTML, locale: string | undefined // Article locale, section_id: number | undefined // Section ID, author_id: number | undefined // Author user ID, draft: boolean | undefined // Whether article is a draft, created_at: string | undefined // Created timestamp, updated_at: string | undefined // Updated timestamp } | undefined // Retrieved article,\n// error: string // Error message if operation failed\n// }\n\n\n// Always check success status before using data\nif (!result.success) {\n throw new Error(`zendesk failed: ${result.error}`);\n}\n\n// Access the actual data\nconst actualData = result.data;\nconsole.log(actualData);",
74417
+ "requiredCredentials": [
74418
+ "ZENDESK_CRED"
74419
+ ]
72899
74420
  }
72900
74421
  ]
72901
74422
  }