@tangle-network/agent-integrations 0.42.0 → 0.44.0
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/dist/catalog.d.ts +2 -2
- package/dist/catalog.js +6 -6
- package/dist/{chunk-EQB46PIG.js → chunk-BDSGHMY6.js} +1 -1
- package/dist/chunk-BDSGHMY6.js.map +1 -0
- package/dist/{chunk-GA7RAMMB.js → chunk-HNHR2MKW.js} +2 -2
- package/dist/{chunk-RFBI7NUC.js → chunk-ITA67K5M.js} +2 -2
- package/dist/{chunk-DQADH6DL.js → chunk-U4W37I5T.js} +2 -2
- package/dist/{chunk-NY4EII6I.js → chunk-YA52626Y.js} +25 -3
- package/dist/chunk-YA52626Y.js.map +1 -0
- package/dist/{chunk-JKYPEVMS.js → chunk-ZBMMGAE2.js} +842 -2
- package/dist/{chunk-JKYPEVMS.js.map → chunk-ZBMMGAE2.js.map} +1 -1
- package/dist/connect/index.d.ts +2 -2
- package/dist/connect/index.js +2 -2
- package/dist/connectors/adapters/index.d.ts +125 -3
- package/dist/connectors/adapters/index.js +14 -2
- package/dist/connectors/index.d.ts +3 -3
- package/dist/connectors/index.js +14 -2
- package/dist/{consumer-DQiAGxQ2.d.ts → consumer-rANg4Qhz.d.ts} +1 -1
- package/dist/consumer.d.ts +3 -3
- package/dist/consumer.js +2 -2
- package/dist/{core-types-17jYpwtm.d.ts → core-types-ZABxT4_F.d.ts} +1 -1
- package/dist/coverage-catalog.d.ts +2 -2
- package/dist/{importers-C_mQqIJP.d.ts → importers-CWmyogMo.d.ts} +1 -1
- package/dist/index.d.ts +9 -9
- package/dist/index.js +18 -6
- package/dist/mcp.d.ts +3 -3
- package/dist/mcp.js +6 -6
- package/dist/middleware/index.d.ts +2 -2
- package/dist/middleware/index.js +2 -2
- package/dist/registry.d.ts +2 -2
- package/dist/registry.js +6 -6
- package/dist/runtime.d.ts +2 -2
- package/dist/runtime.js +6 -6
- package/dist/specs.d.ts +2 -2
- package/dist/{tangle-id-CpdEOacl.d.ts → tangle-id-DE1QrpAY.d.ts} +1 -1
- package/dist/{types-BLOYLnKZ.d.ts → types-DzPmyjGl.d.ts} +21 -1
- package/package.json +1 -1
- package/dist/chunk-EQB46PIG.js.map +0 -1
- package/dist/chunk-NY4EII6I.js.map +0 -1
- /package/dist/{chunk-GA7RAMMB.js.map → chunk-HNHR2MKW.js.map} +0 -0
- /package/dist/{chunk-RFBI7NUC.js.map → chunk-ITA67K5M.js.map} +0 -0
- /package/dist/{chunk-DQADH6DL.js.map → chunk-U4W37I5T.js.map} +0 -0
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
TangleIdentityUnreachableError,
|
|
13
13
|
createTangleIdentityClient,
|
|
14
14
|
tangleIdentity
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-BDSGHMY6.js";
|
|
16
16
|
import {
|
|
17
17
|
__export
|
|
18
18
|
} from "./chunk-PZ5AY32C.js";
|
|
@@ -149,9 +149,11 @@ __export(adapters_exports, {
|
|
|
149
149
|
datocmsConnector: () => datocmsConnector,
|
|
150
150
|
declarativeRestConnector: () => declarativeRestConnector,
|
|
151
151
|
deepseekConnector: () => deepseekConnector,
|
|
152
|
+
demandbaseConnector: () => demandbaseConnector,
|
|
152
153
|
denserAiConnector: () => denserAiConnector,
|
|
153
154
|
descriptConnector: () => descriptConnector,
|
|
154
155
|
devinConnector: () => devinConnector,
|
|
156
|
+
dialpadConnector: () => dialpadConnector,
|
|
155
157
|
discordConnector: () => discordConnector,
|
|
156
158
|
dittofeedConnector: () => dittofeedConnector,
|
|
157
159
|
doctlyConnector: () => doctlyConnector,
|
|
@@ -211,6 +213,7 @@ __export(adapters_exports, {
|
|
|
211
213
|
gitlabConnector: () => gitlabConnector,
|
|
212
214
|
glideConnector: () => glideConnector,
|
|
213
215
|
gmail: () => gmail,
|
|
216
|
+
gongConnector: () => gongConnector,
|
|
214
217
|
googleAnalyticsConnector: () => googleAnalyticsConnector,
|
|
215
218
|
googleBigqueryConnector: () => googleBigqueryConnector,
|
|
216
219
|
googleCalendar: () => googleCalendar,
|
|
@@ -381,6 +384,7 @@ __export(adapters_exports, {
|
|
|
381
384
|
oracleDatabaseConnector: () => oracleDatabaseConnector,
|
|
382
385
|
orimonConnector: () => orimonConnector,
|
|
383
386
|
outlookMail: () => outlookMail,
|
|
387
|
+
outreachConnector: () => outreachConnector,
|
|
384
388
|
paddleConnector: () => paddleConnector,
|
|
385
389
|
pagerdutyConnector: () => pagerdutyConnector,
|
|
386
390
|
pandadoc: () => pandadoc,
|
|
@@ -427,6 +431,7 @@ __export(adapters_exports, {
|
|
|
427
431
|
replyIoConnector: () => replyIoConnector,
|
|
428
432
|
retableConnector: () => retableConnector,
|
|
429
433
|
retellAiConnector: () => retellAiConnector,
|
|
434
|
+
ringcentralConnector: () => ringcentralConnector,
|
|
430
435
|
ripplingConnector: () => ripplingConnector,
|
|
431
436
|
robollyConnector: () => robollyConnector,
|
|
432
437
|
runwareConnector: () => runwareConnector,
|
|
@@ -434,6 +439,7 @@ __export(adapters_exports, {
|
|
|
434
439
|
saleorConnector: () => saleorConnector,
|
|
435
440
|
salesforceConnector: () => salesforceConnector,
|
|
436
441
|
saleshandyConnector: () => saleshandyConnector,
|
|
442
|
+
salesloftConnector: () => salesloftConnector,
|
|
437
443
|
sanityConnector: () => sanityConnector,
|
|
438
444
|
sardisConnector: () => sardisConnector,
|
|
439
445
|
savvycalConnector: () => savvycalConnector,
|
|
@@ -123757,6 +123763,834 @@ var getresponseConnector = declarativeRestConnector({
|
|
|
123757
123763
|
]
|
|
123758
123764
|
});
|
|
123759
123765
|
|
|
123766
|
+
// src/connectors/adapters/outreach.ts
|
|
123767
|
+
var outreachConnector = declarativeRestConnector({
|
|
123768
|
+
kind: "outreach",
|
|
123769
|
+
displayName: "Outreach",
|
|
123770
|
+
description: "Manage Outreach prospects, accounts, and opportunities, and enroll prospects into sequences, through the JSON:API v2 REST API.",
|
|
123771
|
+
auth: {
|
|
123772
|
+
kind: "oauth2",
|
|
123773
|
+
authorizationUrl: "https://api.outreach.io/oauth/authorize",
|
|
123774
|
+
tokenUrl: "https://api.outreach.io/oauth/token",
|
|
123775
|
+
scopes: [
|
|
123776
|
+
"prospects.read",
|
|
123777
|
+
"prospects.write",
|
|
123778
|
+
"accounts.read",
|
|
123779
|
+
"accounts.write",
|
|
123780
|
+
"opportunities.read",
|
|
123781
|
+
"sequences.read",
|
|
123782
|
+
"sequenceStates.read",
|
|
123783
|
+
"sequenceStates.write",
|
|
123784
|
+
"users.read"
|
|
123785
|
+
],
|
|
123786
|
+
clientIdEnv: "OUTREACH_OAUTH_CLIENT_ID",
|
|
123787
|
+
clientSecretEnv: "OUTREACH_OAUTH_CLIENT_SECRET"
|
|
123788
|
+
},
|
|
123789
|
+
category: "crm",
|
|
123790
|
+
defaultConsistencyModel: "authoritative",
|
|
123791
|
+
baseUrl: "https://api.outreach.io/api/v2",
|
|
123792
|
+
// Outreach is JSON:API — both the request and response media type is
|
|
123793
|
+
// application/vnd.api+json. The declarative runtime only forces a body
|
|
123794
|
+
// content-type when one isn't already present, so pinning it here makes
|
|
123795
|
+
// every write carry the JSON:API media type.
|
|
123796
|
+
defaultHeaders: {
|
|
123797
|
+
accept: "application/vnd.api+json",
|
|
123798
|
+
"content-type": "application/vnd.api+json"
|
|
123799
|
+
},
|
|
123800
|
+
test: { method: "GET", path: "/users", query: { "page[size]": "1" } },
|
|
123801
|
+
capabilities: [
|
|
123802
|
+
{
|
|
123803
|
+
name: "prospects.list",
|
|
123804
|
+
class: "read",
|
|
123805
|
+
description: "List or search prospects (contacts). Filter by email, paginate with pageSize/pageAfter, sort, and sideload related resources via include.",
|
|
123806
|
+
parameters: {
|
|
123807
|
+
type: "object",
|
|
123808
|
+
properties: {
|
|
123809
|
+
email: { type: "string", description: "Filter prospects by email address (filter[emails][email])." },
|
|
123810
|
+
pageSize: { type: "number", description: "Results per page (default 50, max 1000)." },
|
|
123811
|
+
pageAfter: { type: "string", description: "Cursor for the next page (cursor-based pagination)." },
|
|
123812
|
+
sort: { type: "string", description: "Attribute to sort by; prefix with - for descending (e.g. -createdAt)." },
|
|
123813
|
+
include: { type: "string", description: "Comma-separated related resources to sideload (e.g. account,owner)." }
|
|
123814
|
+
}
|
|
123815
|
+
},
|
|
123816
|
+
request: {
|
|
123817
|
+
method: "GET",
|
|
123818
|
+
path: "/prospects",
|
|
123819
|
+
query: {
|
|
123820
|
+
"filter[emails][email]": "{email}",
|
|
123821
|
+
"page[size]": "{pageSize}",
|
|
123822
|
+
"page[after]": "{pageAfter}",
|
|
123823
|
+
sort: "{sort}",
|
|
123824
|
+
include: "{include}"
|
|
123825
|
+
}
|
|
123826
|
+
},
|
|
123827
|
+
requiredScopes: ["prospects.read"]
|
|
123828
|
+
},
|
|
123829
|
+
{
|
|
123830
|
+
name: "prospects.create",
|
|
123831
|
+
class: "mutation",
|
|
123832
|
+
description: 'Create a prospect. Pass JSON:API `attributes` (e.g. { firstName, lastName, emails: [{ email, emailType: "work" }], title }) and an optional `relationships` object (e.g. { account: { data: { type: "account", id: 123 } } }).',
|
|
123833
|
+
parameters: {
|
|
123834
|
+
type: "object",
|
|
123835
|
+
properties: {
|
|
123836
|
+
attributes: {
|
|
123837
|
+
type: "object",
|
|
123838
|
+
description: "JSON:API attributes for the prospect resource.",
|
|
123839
|
+
additionalProperties: true
|
|
123840
|
+
},
|
|
123841
|
+
relationships: {
|
|
123842
|
+
type: "object",
|
|
123843
|
+
description: "Optional JSON:API relationships object linking the prospect to an account, owner, etc.",
|
|
123844
|
+
additionalProperties: true
|
|
123845
|
+
}
|
|
123846
|
+
},
|
|
123847
|
+
required: ["attributes"]
|
|
123848
|
+
},
|
|
123849
|
+
request: {
|
|
123850
|
+
method: "POST",
|
|
123851
|
+
path: "/prospects",
|
|
123852
|
+
body: { data: { type: "prospect", attributes: "{attributes}", relationships: "{relationships}" } }
|
|
123853
|
+
},
|
|
123854
|
+
cas: "native-idempotency",
|
|
123855
|
+
externalEffect: true,
|
|
123856
|
+
requiredScopes: ["prospects.write"]
|
|
123857
|
+
},
|
|
123858
|
+
{
|
|
123859
|
+
name: "prospects.update",
|
|
123860
|
+
class: "mutation",
|
|
123861
|
+
description: "Update a prospect by id. Pass the numeric id and a JSON:API `attributes` object; only provided fields change.",
|
|
123862
|
+
parameters: {
|
|
123863
|
+
type: "object",
|
|
123864
|
+
properties: {
|
|
123865
|
+
id: { type: "number", description: "Numeric prospect id." },
|
|
123866
|
+
attributes: { type: "object", description: "JSON:API attributes to update.", additionalProperties: true },
|
|
123867
|
+
relationships: { type: "object", description: "Optional JSON:API relationships to update.", additionalProperties: true }
|
|
123868
|
+
},
|
|
123869
|
+
required: ["id", "attributes"]
|
|
123870
|
+
},
|
|
123871
|
+
request: {
|
|
123872
|
+
method: "PATCH",
|
|
123873
|
+
path: "/prospects/{id}",
|
|
123874
|
+
body: { data: { type: "prospect", id: "{id}", attributes: "{attributes}", relationships: "{relationships}" } }
|
|
123875
|
+
},
|
|
123876
|
+
cas: "native-idempotency",
|
|
123877
|
+
externalEffect: true,
|
|
123878
|
+
requiredScopes: ["prospects.write"]
|
|
123879
|
+
},
|
|
123880
|
+
{
|
|
123881
|
+
name: "sequenceStates.create",
|
|
123882
|
+
class: "mutation",
|
|
123883
|
+
description: "Enroll a prospect into a sequence (start a sequence state). Provide the numeric prospectId and sequenceId.",
|
|
123884
|
+
parameters: {
|
|
123885
|
+
type: "object",
|
|
123886
|
+
properties: {
|
|
123887
|
+
prospectId: { type: "number", description: "Numeric prospect id to enroll." },
|
|
123888
|
+
sequenceId: { type: "number", description: "Numeric sequence id to enroll the prospect into." }
|
|
123889
|
+
},
|
|
123890
|
+
required: ["prospectId", "sequenceId"]
|
|
123891
|
+
},
|
|
123892
|
+
request: {
|
|
123893
|
+
method: "POST",
|
|
123894
|
+
path: "/sequenceStates",
|
|
123895
|
+
body: {
|
|
123896
|
+
data: {
|
|
123897
|
+
type: "sequenceState",
|
|
123898
|
+
relationships: {
|
|
123899
|
+
prospect: { data: { type: "prospect", id: "{prospectId}" } },
|
|
123900
|
+
sequence: { data: { type: "sequence", id: "{sequenceId}" } }
|
|
123901
|
+
}
|
|
123902
|
+
}
|
|
123903
|
+
}
|
|
123904
|
+
},
|
|
123905
|
+
cas: "native-idempotency",
|
|
123906
|
+
externalEffect: true,
|
|
123907
|
+
requiredScopes: ["sequenceStates.write"]
|
|
123908
|
+
},
|
|
123909
|
+
{
|
|
123910
|
+
name: "opportunities.list",
|
|
123911
|
+
class: "read",
|
|
123912
|
+
description: "List opportunities, optionally filtered by account id; paginate and sideload via include.",
|
|
123913
|
+
parameters: {
|
|
123914
|
+
type: "object",
|
|
123915
|
+
properties: {
|
|
123916
|
+
accountId: { type: "number", description: "Filter opportunities by associated account id (filter[account][id])." },
|
|
123917
|
+
pageSize: { type: "number", description: "Results per page." },
|
|
123918
|
+
pageAfter: { type: "string", description: "Cursor for the next page." },
|
|
123919
|
+
include: { type: "string", description: "Comma-separated related resources to sideload (e.g. account,prospects)." }
|
|
123920
|
+
}
|
|
123921
|
+
},
|
|
123922
|
+
request: {
|
|
123923
|
+
method: "GET",
|
|
123924
|
+
path: "/opportunities",
|
|
123925
|
+
query: {
|
|
123926
|
+
"filter[account][id]": "{accountId}",
|
|
123927
|
+
"page[size]": "{pageSize}",
|
|
123928
|
+
"page[after]": "{pageAfter}",
|
|
123929
|
+
include: "{include}"
|
|
123930
|
+
}
|
|
123931
|
+
},
|
|
123932
|
+
requiredScopes: ["opportunities.read"]
|
|
123933
|
+
},
|
|
123934
|
+
{
|
|
123935
|
+
name: "accounts.create",
|
|
123936
|
+
class: "mutation",
|
|
123937
|
+
description: "Create an account (company). Pass JSON:API `attributes` (name is required; domain and industry optional).",
|
|
123938
|
+
parameters: {
|
|
123939
|
+
type: "object",
|
|
123940
|
+
properties: {
|
|
123941
|
+
attributes: {
|
|
123942
|
+
type: "object",
|
|
123943
|
+
description: "JSON:API attributes for the account resource, e.g. { name, domain, industry }.",
|
|
123944
|
+
additionalProperties: true
|
|
123945
|
+
}
|
|
123946
|
+
},
|
|
123947
|
+
required: ["attributes"]
|
|
123948
|
+
},
|
|
123949
|
+
request: {
|
|
123950
|
+
method: "POST",
|
|
123951
|
+
path: "/accounts",
|
|
123952
|
+
body: { data: { type: "account", attributes: "{attributes}" } }
|
|
123953
|
+
},
|
|
123954
|
+
cas: "native-idempotency",
|
|
123955
|
+
externalEffect: true,
|
|
123956
|
+
requiredScopes: ["accounts.write"]
|
|
123957
|
+
}
|
|
123958
|
+
]
|
|
123959
|
+
});
|
|
123960
|
+
|
|
123961
|
+
// src/connectors/adapters/salesloft.ts
|
|
123962
|
+
var salesloftConnector = declarativeRestConnector({
|
|
123963
|
+
kind: "salesloft",
|
|
123964
|
+
displayName: "Salesloft",
|
|
123965
|
+
description: "Manage Salesloft people and accounts and enroll people into cadences through the REST API v2.",
|
|
123966
|
+
auth: {
|
|
123967
|
+
kind: "oauth2",
|
|
123968
|
+
authorizationUrl: "https://accounts.salesloft.com/oauth/authorize",
|
|
123969
|
+
tokenUrl: "https://accounts.salesloft.com/oauth/token",
|
|
123970
|
+
scopes: [],
|
|
123971
|
+
clientIdEnv: "SALESLOFT_OAUTH_CLIENT_ID",
|
|
123972
|
+
clientSecretEnv: "SALESLOFT_OAUTH_CLIENT_SECRET"
|
|
123973
|
+
},
|
|
123974
|
+
category: "crm",
|
|
123975
|
+
defaultConsistencyModel: "authoritative",
|
|
123976
|
+
baseUrl: "https://api.salesloft.com/v2",
|
|
123977
|
+
test: { method: "GET", path: "/me" },
|
|
123978
|
+
capabilities: [
|
|
123979
|
+
{
|
|
123980
|
+
name: "me.get",
|
|
123981
|
+
class: "read",
|
|
123982
|
+
description: "Return the authenticated user and team \u2014 the cheapest grant-validity probe.",
|
|
123983
|
+
parameters: { type: "object", properties: {} },
|
|
123984
|
+
request: { method: "GET", path: "/me" }
|
|
123985
|
+
},
|
|
123986
|
+
{
|
|
123987
|
+
name: "people.list",
|
|
123988
|
+
class: "read",
|
|
123989
|
+
description: "List people (contacts). Paginate with page/per_page.",
|
|
123990
|
+
parameters: {
|
|
123991
|
+
type: "object",
|
|
123992
|
+
properties: {
|
|
123993
|
+
page: { type: "number", description: "Page number (1-based)." },
|
|
123994
|
+
per_page: { type: "number", description: "Records per page (max 100)." }
|
|
123995
|
+
}
|
|
123996
|
+
},
|
|
123997
|
+
request: { method: "GET", path: "/people", query: { page: "{page}", per_page: "{per_page}" } }
|
|
123998
|
+
},
|
|
123999
|
+
{
|
|
124000
|
+
name: "people.create",
|
|
124001
|
+
class: "mutation",
|
|
124002
|
+
description: "Create a person. Provide email_address, OR phone paired with last_name. first_name/last_name optional otherwise.",
|
|
124003
|
+
parameters: {
|
|
124004
|
+
type: "object",
|
|
124005
|
+
properties: {
|
|
124006
|
+
email_address: { type: "string", description: "Email address; required unless phone+last_name are provided." },
|
|
124007
|
+
first_name: { type: "string", description: "Person's first name." },
|
|
124008
|
+
last_name: { type: "string", description: "Person's last name; required when phone is provided instead of email_address." },
|
|
124009
|
+
phone: { type: "string", description: "Phone number; required (with last_name) when email_address is absent." }
|
|
124010
|
+
}
|
|
124011
|
+
},
|
|
124012
|
+
request: { method: "POST", path: "/people", body: "args" },
|
|
124013
|
+
cas: "native-idempotency",
|
|
124014
|
+
externalEffect: true
|
|
124015
|
+
},
|
|
124016
|
+
{
|
|
124017
|
+
name: "accounts.create",
|
|
124018
|
+
class: "mutation",
|
|
124019
|
+
description: "Create an account (company). name is required; domain must be unique on the team.",
|
|
124020
|
+
parameters: {
|
|
124021
|
+
type: "object",
|
|
124022
|
+
properties: {
|
|
124023
|
+
name: { type: "string", description: "Account/company name." },
|
|
124024
|
+
domain: { type: "string", description: "Website domain; must be unique on the team." }
|
|
124025
|
+
},
|
|
124026
|
+
required: ["name"]
|
|
124027
|
+
},
|
|
124028
|
+
request: { method: "POST", path: "/accounts", body: "args" },
|
|
124029
|
+
cas: "native-idempotency",
|
|
124030
|
+
externalEffect: true
|
|
124031
|
+
},
|
|
124032
|
+
{
|
|
124033
|
+
name: "cadences.list",
|
|
124034
|
+
class: "read",
|
|
124035
|
+
description: "List cadences. Paginate with page/per_page.",
|
|
124036
|
+
parameters: {
|
|
124037
|
+
type: "object",
|
|
124038
|
+
properties: {
|
|
124039
|
+
page: { type: "number", description: "Page number (1-based)." },
|
|
124040
|
+
per_page: { type: "number", description: "Records per page (max 100)." }
|
|
124041
|
+
}
|
|
124042
|
+
},
|
|
124043
|
+
request: { method: "GET", path: "/cadences", query: { page: "{page}", per_page: "{per_page}" } }
|
|
124044
|
+
},
|
|
124045
|
+
{
|
|
124046
|
+
name: "cadence_memberships.create",
|
|
124047
|
+
class: "mutation",
|
|
124048
|
+
description: "Add a person to a cadence. Provide person_id and cadence_id; user_id defaults to the authenticated user.",
|
|
124049
|
+
parameters: {
|
|
124050
|
+
type: "object",
|
|
124051
|
+
properties: {
|
|
124052
|
+
person_id: { type: "number", description: "Id of the person to enroll (must be visible to the authenticated user)." },
|
|
124053
|
+
cadence_id: { type: "number", description: "Id of the cadence to enroll the person into." },
|
|
124054
|
+
user_id: { type: "number", description: "Owner of the membership; defaults to the authenticated user." }
|
|
124055
|
+
},
|
|
124056
|
+
required: ["person_id", "cadence_id"]
|
|
124057
|
+
},
|
|
124058
|
+
request: { method: "POST", path: "/cadence_memberships", body: "args" },
|
|
124059
|
+
cas: "native-idempotency",
|
|
124060
|
+
externalEffect: true
|
|
124061
|
+
}
|
|
124062
|
+
]
|
|
124063
|
+
});
|
|
124064
|
+
|
|
124065
|
+
// src/connectors/adapters/gong.ts
|
|
124066
|
+
var gongConnector = declarativeRestConnector({
|
|
124067
|
+
kind: "gong",
|
|
124068
|
+
displayName: "Gong",
|
|
124069
|
+
description: "Read Gong calls, transcripts, and users, ingest external calls, and assign prospects to Engage flows through the v2 API.",
|
|
124070
|
+
auth: {
|
|
124071
|
+
kind: "oauth2",
|
|
124072
|
+
authorizationUrl: "https://app.gong.io/oauth2/authorize",
|
|
124073
|
+
tokenUrl: "https://app.gong.io/oauth2/generate-customer-token",
|
|
124074
|
+
scopes: [
|
|
124075
|
+
"api:calls:read:basic",
|
|
124076
|
+
"api:calls:read:extensive",
|
|
124077
|
+
"api:calls:read:transcript",
|
|
124078
|
+
"api:calls:create",
|
|
124079
|
+
"api:users:read",
|
|
124080
|
+
"api:flows:write"
|
|
124081
|
+
],
|
|
124082
|
+
clientIdEnv: "GONG_OAUTH_CLIENT_ID",
|
|
124083
|
+
clientSecretEnv: "GONG_OAUTH_CLIENT_SECRET",
|
|
124084
|
+
// Gong returns the per-customer API host on the token response; capture it
|
|
124085
|
+
// into metadata.apiBaseUrlForCustomer so `baseUrl` resolution below finds
|
|
124086
|
+
// it. Required: the generic api.gong.io host is invalid for OAuth apps, so
|
|
124087
|
+
// a missing value fails the exchange loud rather than minting a connection
|
|
124088
|
+
// that looks active while every call 404s.
|
|
124089
|
+
tokenMetadata: { apiBaseUrlForCustomer: { field: "api_base_url_for_customer", required: true } }
|
|
124090
|
+
},
|
|
124091
|
+
category: "comms",
|
|
124092
|
+
defaultConsistencyModel: "authoritative",
|
|
124093
|
+
baseUrl: { metadataKey: "apiBaseUrlForCustomer" },
|
|
124094
|
+
test: { method: "GET", path: "/v2/users" },
|
|
124095
|
+
capabilities: [
|
|
124096
|
+
{
|
|
124097
|
+
name: "calls.list",
|
|
124098
|
+
class: "read",
|
|
124099
|
+
description: "List calls in a time window. fromDateTime is required (ISO-8601); paginate with cursor.",
|
|
124100
|
+
parameters: {
|
|
124101
|
+
type: "object",
|
|
124102
|
+
properties: {
|
|
124103
|
+
fromDateTime: { type: "string", description: "ISO-8601 start datetime for calls to retrieve." },
|
|
124104
|
+
toDateTime: { type: "string", description: "ISO-8601 end datetime for calls to retrieve." },
|
|
124105
|
+
workspaceId: { type: "string", description: "Filter calls by a specific workspace id." },
|
|
124106
|
+
cursor: { type: "string", description: "Pagination cursor from a previous response." }
|
|
124107
|
+
},
|
|
124108
|
+
required: ["fromDateTime"]
|
|
124109
|
+
},
|
|
124110
|
+
request: {
|
|
124111
|
+
method: "GET",
|
|
124112
|
+
path: "/v2/calls",
|
|
124113
|
+
query: { fromDateTime: "{fromDateTime}", toDateTime: "{toDateTime}", workspaceId: "{workspaceId}", cursor: "{cursor}" }
|
|
124114
|
+
},
|
|
124115
|
+
requiredScopes: ["api:calls:read:basic"]
|
|
124116
|
+
},
|
|
124117
|
+
{
|
|
124118
|
+
name: "calls.getTranscripts",
|
|
124119
|
+
class: "read",
|
|
124120
|
+
description: "Retrieve call transcripts. Pass a `filter` object (fromDateTime/toDateTime and/or callIds); paginate with cursor.",
|
|
124121
|
+
parameters: {
|
|
124122
|
+
type: "object",
|
|
124123
|
+
properties: {
|
|
124124
|
+
filter: {
|
|
124125
|
+
type: "object",
|
|
124126
|
+
description: 'Filter object, e.g. { fromDateTime, toDateTime, callIds: ["..."] }.',
|
|
124127
|
+
additionalProperties: true
|
|
124128
|
+
},
|
|
124129
|
+
cursor: { type: "string", description: "Pagination cursor for the next page." }
|
|
124130
|
+
},
|
|
124131
|
+
required: ["filter"]
|
|
124132
|
+
},
|
|
124133
|
+
request: { method: "POST", path: "/v2/calls/transcript", body: { filter: "{filter}", cursor: "{cursor}" } },
|
|
124134
|
+
requiredScopes: ["api:calls:read:transcript"]
|
|
124135
|
+
},
|
|
124136
|
+
{
|
|
124137
|
+
name: "calls.getExtensive",
|
|
124138
|
+
class: "read",
|
|
124139
|
+
description: "Retrieve extensive call data. Pass a `filter` object and an optional `contentSelector` controlling which enrichment fields/context to include.",
|
|
124140
|
+
parameters: {
|
|
124141
|
+
type: "object",
|
|
124142
|
+
properties: {
|
|
124143
|
+
filter: {
|
|
124144
|
+
type: "object",
|
|
124145
|
+
description: "Filter object: fromDateTime, toDateTime, callIds, primaryUserIds, or workspaceId.",
|
|
124146
|
+
additionalProperties: true
|
|
124147
|
+
},
|
|
124148
|
+
contentSelector: {
|
|
124149
|
+
type: "object",
|
|
124150
|
+
description: "Controls included enrichment data (exposedFields, context objects).",
|
|
124151
|
+
additionalProperties: true
|
|
124152
|
+
},
|
|
124153
|
+
cursor: { type: "string", description: "Pagination cursor from a prior response." }
|
|
124154
|
+
},
|
|
124155
|
+
required: ["filter"]
|
|
124156
|
+
},
|
|
124157
|
+
request: {
|
|
124158
|
+
method: "POST",
|
|
124159
|
+
path: "/v2/calls/extensive",
|
|
124160
|
+
body: { filter: "{filter}", contentSelector: "{contentSelector}", cursor: "{cursor}" }
|
|
124161
|
+
},
|
|
124162
|
+
requiredScopes: ["api:calls:read:extensive"]
|
|
124163
|
+
},
|
|
124164
|
+
{
|
|
124165
|
+
name: "users.list",
|
|
124166
|
+
class: "read",
|
|
124167
|
+
description: "List Gong users (max 100 per page). Paginate with cursor.",
|
|
124168
|
+
parameters: {
|
|
124169
|
+
type: "object",
|
|
124170
|
+
properties: {
|
|
124171
|
+
cursor: { type: "string", description: "Pagination cursor; omit for the first page." },
|
|
124172
|
+
includeAvatars: { type: "boolean", description: "Include avatar image URLs in the response (default false)." }
|
|
124173
|
+
}
|
|
124174
|
+
},
|
|
124175
|
+
request: { method: "GET", path: "/v2/users", query: { cursor: "{cursor}", includeAvatars: "{includeAvatars}" } },
|
|
124176
|
+
requiredScopes: ["api:users:read"]
|
|
124177
|
+
},
|
|
124178
|
+
{
|
|
124179
|
+
name: "calls.create",
|
|
124180
|
+
class: "mutation",
|
|
124181
|
+
description: "Ingest an external call into Gong. Required: clientUniqueId, actualStart (ISO-8601), direction (Inbound/Outbound/Conference/Unknown), parties (array of participant objects).",
|
|
124182
|
+
parameters: {
|
|
124183
|
+
type: "object",
|
|
124184
|
+
properties: {
|
|
124185
|
+
clientUniqueId: { type: "string", description: "Unique identifier for the call in the source system." },
|
|
124186
|
+
actualStart: { type: "string", description: "ISO-8601 datetime when the call started." },
|
|
124187
|
+
direction: { type: "string", enum: ["Inbound", "Outbound", "Conference", "Unknown"], description: "Call direction." },
|
|
124188
|
+
title: { type: "string", description: "Title or subject of the call." },
|
|
124189
|
+
parties: {
|
|
124190
|
+
type: "array",
|
|
124191
|
+
description: "Participant objects with emailAddress, name, phoneNumber, speakerId.",
|
|
124192
|
+
items: { type: "object", additionalProperties: true }
|
|
124193
|
+
},
|
|
124194
|
+
mediaChannels: { type: "object", description: "Media channel configuration.", additionalProperties: true },
|
|
124195
|
+
workspaceId: { type: "string", description: "Workspace to associate the call with." }
|
|
124196
|
+
},
|
|
124197
|
+
required: ["clientUniqueId", "actualStart", "direction", "parties"]
|
|
124198
|
+
},
|
|
124199
|
+
request: { method: "POST", path: "/v2/calls", body: "args" },
|
|
124200
|
+
cas: "native-idempotency",
|
|
124201
|
+
externalEffect: true,
|
|
124202
|
+
requiredScopes: ["api:calls:create"]
|
|
124203
|
+
},
|
|
124204
|
+
{
|
|
124205
|
+
name: "flows.assignProspects",
|
|
124206
|
+
class: "mutation",
|
|
124207
|
+
description: "Assign prospects to a Gong Engage flow. Provide flowId and a prospects array (up to 100).",
|
|
124208
|
+
parameters: {
|
|
124209
|
+
type: "object",
|
|
124210
|
+
properties: {
|
|
124211
|
+
flowId: { type: "string", description: "Id of the Engage flow to assign prospects to." },
|
|
124212
|
+
prospects: {
|
|
124213
|
+
type: "array",
|
|
124214
|
+
description: "Prospect objects (up to 100); each with crmProspectId and optional fields.",
|
|
124215
|
+
items: { type: "object", additionalProperties: true }
|
|
124216
|
+
},
|
|
124217
|
+
actionSource: { type: "string", description: "Identifier of the integration making the assignment." }
|
|
124218
|
+
},
|
|
124219
|
+
required: ["flowId", "prospects"]
|
|
124220
|
+
},
|
|
124221
|
+
request: {
|
|
124222
|
+
method: "POST",
|
|
124223
|
+
path: "/v2/flows/prospects/assign",
|
|
124224
|
+
body: { flowId: "{flowId}", prospects: "{prospects}", actionSource: "{actionSource}" }
|
|
124225
|
+
},
|
|
124226
|
+
cas: "native-idempotency",
|
|
124227
|
+
externalEffect: true,
|
|
124228
|
+
requiredScopes: ["api:flows:write"]
|
|
124229
|
+
}
|
|
124230
|
+
]
|
|
124231
|
+
});
|
|
124232
|
+
|
|
124233
|
+
// src/connectors/adapters/ringcentral.ts
|
|
124234
|
+
var ringcentralConnector = declarativeRestConnector({
|
|
124235
|
+
kind: "ringcentral",
|
|
124236
|
+
displayName: "RingCentral",
|
|
124237
|
+
description: "Read RingCentral extensions, call logs, and messages, send SMS, and create webhook subscriptions through the REST v1.0 API.",
|
|
124238
|
+
auth: {
|
|
124239
|
+
kind: "oauth2",
|
|
124240
|
+
authorizationUrl: "https://platform.ringcentral.com/restapi/oauth/authorize",
|
|
124241
|
+
tokenUrl: "https://platform.ringcentral.com/restapi/oauth/token",
|
|
124242
|
+
scopes: ["ReadAccounts", "ReadCallLog", "ReadMessages", "SMS", "ReadContacts", "SubscriptionWebhook"],
|
|
124243
|
+
clientIdEnv: "RINGCENTRAL_OAUTH_CLIENT_ID",
|
|
124244
|
+
clientSecretEnv: "RINGCENTRAL_OAUTH_CLIENT_SECRET"
|
|
124245
|
+
},
|
|
124246
|
+
category: "comms",
|
|
124247
|
+
defaultConsistencyModel: "authoritative",
|
|
124248
|
+
baseUrl: "https://platform.ringcentral.com/restapi/v1.0",
|
|
124249
|
+
test: { method: "GET", path: "/account/~/extension/~" },
|
|
124250
|
+
capabilities: [
|
|
124251
|
+
{
|
|
124252
|
+
name: "extension.get",
|
|
124253
|
+
class: "read",
|
|
124254
|
+
description: "Get the authenticated user's extension record.",
|
|
124255
|
+
parameters: { type: "object", properties: {} },
|
|
124256
|
+
request: { method: "GET", path: "/account/~/extension/~" }
|
|
124257
|
+
},
|
|
124258
|
+
{
|
|
124259
|
+
name: "extensions.list",
|
|
124260
|
+
class: "read",
|
|
124261
|
+
description: "List extensions on an account. Pass accountId or ~ for the authenticated account.",
|
|
124262
|
+
parameters: {
|
|
124263
|
+
type: "object",
|
|
124264
|
+
properties: {
|
|
124265
|
+
accountId: { type: "string", description: "Internal account id, or ~ for the authenticated account." },
|
|
124266
|
+
page: { type: "number", description: "Page number for pagination." },
|
|
124267
|
+
perPage: { type: "number", description: "Records per page." },
|
|
124268
|
+
status: { type: "string", description: "Filter by extension status (e.g. Enabled, Disabled)." }
|
|
124269
|
+
},
|
|
124270
|
+
required: ["accountId"]
|
|
124271
|
+
},
|
|
124272
|
+
request: {
|
|
124273
|
+
method: "GET",
|
|
124274
|
+
path: "/account/{accountId}/extension",
|
|
124275
|
+
query: { page: "{page}", perPage: "{perPage}", status: "{status}" }
|
|
124276
|
+
}
|
|
124277
|
+
},
|
|
124278
|
+
{
|
|
124279
|
+
name: "callLog.list",
|
|
124280
|
+
class: "read",
|
|
124281
|
+
description: "List the authenticated extension's call log. Use view=Detailed for full records.",
|
|
124282
|
+
parameters: {
|
|
124283
|
+
type: "object",
|
|
124284
|
+
properties: {
|
|
124285
|
+
dateFrom: { type: "string", description: "Start of range, ISO-8601 UTC." },
|
|
124286
|
+
dateTo: { type: "string", description: "End of range, ISO-8601 UTC." },
|
|
124287
|
+
view: { type: "string", description: "Set to 'Detailed' to fetch detailed call records." },
|
|
124288
|
+
perPage: { type: "number", description: "Records per page." }
|
|
124289
|
+
}
|
|
124290
|
+
},
|
|
124291
|
+
request: {
|
|
124292
|
+
method: "GET",
|
|
124293
|
+
path: "/account/~/extension/~/call-log",
|
|
124294
|
+
query: { dateFrom: "{dateFrom}", dateTo: "{dateTo}", view: "{view}", perPage: "{perPage}" }
|
|
124295
|
+
}
|
|
124296
|
+
},
|
|
124297
|
+
{
|
|
124298
|
+
name: "messages.list",
|
|
124299
|
+
class: "read",
|
|
124300
|
+
description: "List the authenticated extension's message store (SMS, Fax, VoiceMail).",
|
|
124301
|
+
parameters: {
|
|
124302
|
+
type: "object",
|
|
124303
|
+
properties: {
|
|
124304
|
+
messageType: { type: "string", description: "Filter by message type: SMS, Fax, or VoiceMail." },
|
|
124305
|
+
dateFrom: { type: "string", description: "Start of range, ISO-8601." },
|
|
124306
|
+
dateTo: { type: "string", description: "End of range, ISO-8601." },
|
|
124307
|
+
perPage: { type: "number", description: "Records per page (up to 1000)." },
|
|
124308
|
+
readStatus: { type: "string", description: "Filter by read status: Read or Unread." }
|
|
124309
|
+
}
|
|
124310
|
+
},
|
|
124311
|
+
request: {
|
|
124312
|
+
method: "GET",
|
|
124313
|
+
path: "/account/~/extension/~/message-store",
|
|
124314
|
+
query: {
|
|
124315
|
+
messageType: "{messageType}",
|
|
124316
|
+
dateFrom: "{dateFrom}",
|
|
124317
|
+
dateTo: "{dateTo}",
|
|
124318
|
+
perPage: "{perPage}",
|
|
124319
|
+
readStatus: "{readStatus}"
|
|
124320
|
+
}
|
|
124321
|
+
}
|
|
124322
|
+
},
|
|
124323
|
+
{
|
|
124324
|
+
name: "sms.send",
|
|
124325
|
+
class: "mutation",
|
|
124326
|
+
description: "Send an SMS from the authenticated extension. from = { phoneNumber }, to = [{ phoneNumber }] (up to 10), text = body.",
|
|
124327
|
+
parameters: {
|
|
124328
|
+
type: "object",
|
|
124329
|
+
properties: {
|
|
124330
|
+
from: { type: "object", description: "Sender: { phoneNumber } \u2014 must be a number assigned to the user.", additionalProperties: true },
|
|
124331
|
+
to: {
|
|
124332
|
+
type: "array",
|
|
124333
|
+
description: "Recipients: [{ phoneNumber }] \u2014 up to 10.",
|
|
124334
|
+
items: { type: "object", additionalProperties: true }
|
|
124335
|
+
},
|
|
124336
|
+
text: { type: "string", description: "SMS message text." }
|
|
124337
|
+
},
|
|
124338
|
+
required: ["from", "to", "text"]
|
|
124339
|
+
},
|
|
124340
|
+
request: { method: "POST", path: "/account/~/extension/~/sms", body: { from: "{from}", to: "{to}", text: "{text}" } },
|
|
124341
|
+
cas: "native-idempotency",
|
|
124342
|
+
externalEffect: true
|
|
124343
|
+
},
|
|
124344
|
+
{
|
|
124345
|
+
name: "subscriptions.create",
|
|
124346
|
+
class: "mutation",
|
|
124347
|
+
description: 'Create a webhook subscription. eventFilters = array of event URIs, deliveryMode = { transportType: "WebHook", address }.',
|
|
124348
|
+
parameters: {
|
|
124349
|
+
type: "object",
|
|
124350
|
+
properties: {
|
|
124351
|
+
eventFilters: {
|
|
124352
|
+
type: "array",
|
|
124353
|
+
description: "Event filter URI strings, e.g. /restapi/v1.0/account/~/extension/~/message-store.",
|
|
124354
|
+
items: { type: "string" }
|
|
124355
|
+
},
|
|
124356
|
+
deliveryMode: {
|
|
124357
|
+
type: "object",
|
|
124358
|
+
description: 'Delivery config: { transportType: "WebHook", address }.',
|
|
124359
|
+
additionalProperties: true
|
|
124360
|
+
},
|
|
124361
|
+
expiresIn: { type: "number", description: "Subscription lifetime in seconds." }
|
|
124362
|
+
},
|
|
124363
|
+
required: ["eventFilters", "deliveryMode"]
|
|
124364
|
+
},
|
|
124365
|
+
request: {
|
|
124366
|
+
method: "POST",
|
|
124367
|
+
path: "/subscription",
|
|
124368
|
+
body: { eventFilters: "{eventFilters}", deliveryMode: "{deliveryMode}", expiresIn: "{expiresIn}" }
|
|
124369
|
+
},
|
|
124370
|
+
cas: "native-idempotency",
|
|
124371
|
+
externalEffect: true
|
|
124372
|
+
}
|
|
124373
|
+
]
|
|
124374
|
+
});
|
|
124375
|
+
|
|
124376
|
+
// src/connectors/adapters/dialpad.ts
|
|
124377
|
+
var dialpadConnector = declarativeRestConnector({
|
|
124378
|
+
kind: "dialpad",
|
|
124379
|
+
displayName: "Dialpad",
|
|
124380
|
+
description: "Read Dialpad contacts, calls, and users, create contacts, and send SMS through the v2 API.",
|
|
124381
|
+
auth: {
|
|
124382
|
+
kind: "oauth2",
|
|
124383
|
+
authorizationUrl: "https://dialpad.com/oauth2/authorize",
|
|
124384
|
+
tokenUrl: "https://dialpad.com/oauth2/token",
|
|
124385
|
+
scopes: ["calls:list", "offline_access"],
|
|
124386
|
+
clientIdEnv: "DIALPAD_OAUTH_CLIENT_ID",
|
|
124387
|
+
clientSecretEnv: "DIALPAD_OAUTH_CLIENT_SECRET"
|
|
124388
|
+
},
|
|
124389
|
+
category: "comms",
|
|
124390
|
+
defaultConsistencyModel: "authoritative",
|
|
124391
|
+
baseUrl: "https://dialpad.com/api/v2",
|
|
124392
|
+
test: { method: "GET", path: "/users" },
|
|
124393
|
+
capabilities: [
|
|
124394
|
+
{
|
|
124395
|
+
name: "contacts.list",
|
|
124396
|
+
class: "read",
|
|
124397
|
+
description: "List contacts. Set include_local + owner_id to include a user's local contacts; paginate with cursor.",
|
|
124398
|
+
parameters: {
|
|
124399
|
+
type: "object",
|
|
124400
|
+
properties: {
|
|
124401
|
+
cursor: { type: "string", description: "Pagination token from a previous response." },
|
|
124402
|
+
include_local: { type: "boolean", description: "Include company local contacts (default false)." },
|
|
124403
|
+
owner_id: { type: "string", description: "User id whose local contacts should be retrieved." }
|
|
124404
|
+
}
|
|
124405
|
+
},
|
|
124406
|
+
request: {
|
|
124407
|
+
method: "GET",
|
|
124408
|
+
path: "/contacts",
|
|
124409
|
+
query: { cursor: "{cursor}", include_local: "{include_local}", owner_id: "{owner_id}" }
|
|
124410
|
+
}
|
|
124411
|
+
},
|
|
124412
|
+
{
|
|
124413
|
+
name: "contacts.create",
|
|
124414
|
+
class: "mutation",
|
|
124415
|
+
description: "Create a contact. first_name and last_name are required. Omit owner_id for a shared company contact.",
|
|
124416
|
+
parameters: {
|
|
124417
|
+
type: "object",
|
|
124418
|
+
properties: {
|
|
124419
|
+
first_name: { type: "string", description: "Contact's first name." },
|
|
124420
|
+
last_name: { type: "string", description: "Contact's last name." },
|
|
124421
|
+
company_name: { type: "string", description: "Contact's company name." },
|
|
124422
|
+
job_title: { type: "string", description: "Contact's job title." },
|
|
124423
|
+
emails: { type: "array", description: "Email strings; primary first.", items: { type: "string" } },
|
|
124424
|
+
phones: { type: "array", description: "E.164-formatted phone strings; primary first.", items: { type: "string" } },
|
|
124425
|
+
owner_id: { type: "string", description: "User id to create a local contact for; omit for a shared company contact." }
|
|
124426
|
+
},
|
|
124427
|
+
required: ["first_name", "last_name"]
|
|
124428
|
+
},
|
|
124429
|
+
request: { method: "POST", path: "/contacts", body: "args" },
|
|
124430
|
+
cas: "native-idempotency",
|
|
124431
|
+
externalEffect: true
|
|
124432
|
+
},
|
|
124433
|
+
{
|
|
124434
|
+
name: "calls.list",
|
|
124435
|
+
class: "read",
|
|
124436
|
+
description: "List calls. Filter by started_after/started_before (UTC ms) and target; paginate with cursor.",
|
|
124437
|
+
parameters: {
|
|
124438
|
+
type: "object",
|
|
124439
|
+
properties: {
|
|
124440
|
+
cursor: { type: "string", description: "Pagination token from a previous response." },
|
|
124441
|
+
started_after: { type: "number", description: "UTC millisecond timestamp; calls started after this time." },
|
|
124442
|
+
started_before: { type: "number", description: "UTC millisecond timestamp; calls started before this time." },
|
|
124443
|
+
target_id: { type: "number", description: "Filter calls by target entity id." },
|
|
124444
|
+
target_type: { type: "string", description: "Target type: callcenter, callrouter, channel, coaching, team, department, office, user, etc." },
|
|
124445
|
+
include_anonymized: { type: "boolean", description: "Include anonymized call records (default false)." }
|
|
124446
|
+
}
|
|
124447
|
+
},
|
|
124448
|
+
request: {
|
|
124449
|
+
method: "GET",
|
|
124450
|
+
path: "/call",
|
|
124451
|
+
query: {
|
|
124452
|
+
cursor: "{cursor}",
|
|
124453
|
+
started_after: "{started_after}",
|
|
124454
|
+
started_before: "{started_before}",
|
|
124455
|
+
target_id: "{target_id}",
|
|
124456
|
+
target_type: "{target_type}",
|
|
124457
|
+
include_anonymized: "{include_anonymized}"
|
|
124458
|
+
}
|
|
124459
|
+
}
|
|
124460
|
+
},
|
|
124461
|
+
{
|
|
124462
|
+
name: "calls.get",
|
|
124463
|
+
class: "read",
|
|
124464
|
+
description: "Get a single call by id.",
|
|
124465
|
+
parameters: {
|
|
124466
|
+
type: "object",
|
|
124467
|
+
properties: { id: { type: "number", description: "The call's unique identifier (int64)." } },
|
|
124468
|
+
required: ["id"]
|
|
124469
|
+
},
|
|
124470
|
+
request: { method: "GET", path: "/call/{id}" }
|
|
124471
|
+
},
|
|
124472
|
+
{
|
|
124473
|
+
name: "sms.send",
|
|
124474
|
+
class: "mutation",
|
|
124475
|
+
description: "Send an SMS/MMS. to_numbers = up to 10 E.164 destinations, text = body. Provide one sender: user_id, from_number, or sender_group_id(+type).",
|
|
124476
|
+
parameters: {
|
|
124477
|
+
type: "object",
|
|
124478
|
+
properties: {
|
|
124479
|
+
to_numbers: { type: "array", description: "Up to 10 E.164-formatted destination numbers.", items: { type: "string" } },
|
|
124480
|
+
text: { type: "string", description: "Message body text." },
|
|
124481
|
+
user_id: { type: "number", description: "Sender's Dialpad user id." },
|
|
124482
|
+
from_number: { type: "string", description: "Sender's phone number; overrides user_id/sender_group_id." },
|
|
124483
|
+
sender_group_id: { type: "number", description: "Office, department, or call-center id to send from." },
|
|
124484
|
+
sender_group_type: { type: "string", enum: ["callcenter", "department", "office"], description: "Sender group type." },
|
|
124485
|
+
media: { type: "string", description: "Base64-encoded media attachment (max 500 KiB); triggers MMS." },
|
|
124486
|
+
infer_country_code: { type: "boolean", description: "Relax strict E.164 requirement (default false)." }
|
|
124487
|
+
},
|
|
124488
|
+
required: ["to_numbers", "text"]
|
|
124489
|
+
},
|
|
124490
|
+
request: { method: "POST", path: "/sms", body: "args" },
|
|
124491
|
+
cas: "native-idempotency",
|
|
124492
|
+
externalEffect: true
|
|
124493
|
+
},
|
|
124494
|
+
{
|
|
124495
|
+
name: "users.list",
|
|
124496
|
+
class: "read",
|
|
124497
|
+
description: "List users. Filter by email/name/state; paginate with cursor.",
|
|
124498
|
+
parameters: {
|
|
124499
|
+
type: "object",
|
|
124500
|
+
properties: {
|
|
124501
|
+
cursor: { type: "string", description: "Pagination token from a previous response." },
|
|
124502
|
+
email: { type: "string", description: "Filter by user's email address." },
|
|
124503
|
+
first_name: { type: "string", description: "Filter by first-name prefix." },
|
|
124504
|
+
last_name: { type: "string", description: "Filter by last-name prefix." },
|
|
124505
|
+
state: { type: "string", description: "Filter by state: active, all, cancelled, deleted, pending, suspended." },
|
|
124506
|
+
company_admin: { type: "boolean", description: "Return only company admins (true) or non-admins (false)." }
|
|
124507
|
+
}
|
|
124508
|
+
},
|
|
124509
|
+
request: {
|
|
124510
|
+
method: "GET",
|
|
124511
|
+
path: "/users",
|
|
124512
|
+
query: {
|
|
124513
|
+
cursor: "{cursor}",
|
|
124514
|
+
email: "{email}",
|
|
124515
|
+
first_name: "{first_name}",
|
|
124516
|
+
last_name: "{last_name}",
|
|
124517
|
+
state: "{state}",
|
|
124518
|
+
company_admin: "{company_admin}"
|
|
124519
|
+
}
|
|
124520
|
+
}
|
|
124521
|
+
}
|
|
124522
|
+
]
|
|
124523
|
+
});
|
|
124524
|
+
|
|
124525
|
+
// src/connectors/adapters/demandbase.ts
|
|
124526
|
+
var demandbaseConnector = declarativeRestConnector({
|
|
124527
|
+
kind: "demandbase",
|
|
124528
|
+
displayName: "Demandbase",
|
|
124529
|
+
description: "Manage Demandbase platform users (list, get, create) through the Admin API using client-credentials auth.",
|
|
124530
|
+
auth: {
|
|
124531
|
+
kind: "oauth2",
|
|
124532
|
+
grantType: "client_credentials",
|
|
124533
|
+
tokenUrl: "https://uapi.demandbase.com/auth/v1/token",
|
|
124534
|
+
scopes: [],
|
|
124535
|
+
clientIdEnv: "DEMANDBASE_OAUTH_CLIENT_ID",
|
|
124536
|
+
clientSecretEnv: "DEMANDBASE_OAUTH_CLIENT_SECRET"
|
|
124537
|
+
},
|
|
124538
|
+
category: "sales-intelligence",
|
|
124539
|
+
defaultConsistencyModel: "authoritative",
|
|
124540
|
+
baseUrl: "https://uapi.demandbase.com",
|
|
124541
|
+
test: { method: "GET", path: "/admin/v1/users", query: { limit: "1" } },
|
|
124542
|
+
capabilities: [
|
|
124543
|
+
{
|
|
124544
|
+
name: "users.list",
|
|
124545
|
+
class: "read",
|
|
124546
|
+
description: "List platform users. Paginate with limit/offset; filter by status/role.",
|
|
124547
|
+
parameters: {
|
|
124548
|
+
type: "object",
|
|
124549
|
+
properties: {
|
|
124550
|
+
limit: { type: "number", description: "Max records to return (max 100)." },
|
|
124551
|
+
offset: { type: "number", description: "Pagination offset." },
|
|
124552
|
+
status: { type: "string", description: "Filter by user status." },
|
|
124553
|
+
role: { type: "string", description: "Filter by user role." }
|
|
124554
|
+
}
|
|
124555
|
+
},
|
|
124556
|
+
request: {
|
|
124557
|
+
method: "GET",
|
|
124558
|
+
path: "/admin/v1/users",
|
|
124559
|
+
query: { limit: "{limit}", offset: "{offset}", status: "{status}", role: "{role}" }
|
|
124560
|
+
}
|
|
124561
|
+
},
|
|
124562
|
+
{
|
|
124563
|
+
name: "users.get",
|
|
124564
|
+
class: "read",
|
|
124565
|
+
description: "Get a single platform user by id.",
|
|
124566
|
+
parameters: {
|
|
124567
|
+
type: "object",
|
|
124568
|
+
properties: { userId: { type: "string", description: "The user's unique identifier." } },
|
|
124569
|
+
required: ["userId"]
|
|
124570
|
+
},
|
|
124571
|
+
request: { method: "GET", path: "/admin/v1/user/{userId}" }
|
|
124572
|
+
},
|
|
124573
|
+
{
|
|
124574
|
+
name: "users.create",
|
|
124575
|
+
class: "mutation",
|
|
124576
|
+
description: "Create a platform user. email, first_name, last_name, and role are required.",
|
|
124577
|
+
parameters: {
|
|
124578
|
+
type: "object",
|
|
124579
|
+
properties: {
|
|
124580
|
+
email: { type: "string", description: "User email address." },
|
|
124581
|
+
first_name: { type: "string", description: "User first name." },
|
|
124582
|
+
last_name: { type: "string", description: "User last name." },
|
|
124583
|
+
role: { type: "string", description: "User role within the platform." }
|
|
124584
|
+
},
|
|
124585
|
+
required: ["email", "first_name", "last_name", "role"]
|
|
124586
|
+
},
|
|
124587
|
+
request: { method: "POST", path: "/admin/v1/user", body: "args" },
|
|
124588
|
+
cas: "native-idempotency",
|
|
124589
|
+
externalEffect: true
|
|
124590
|
+
}
|
|
124591
|
+
]
|
|
124592
|
+
});
|
|
124593
|
+
|
|
123760
124594
|
export {
|
|
123761
124595
|
InMemoryOAuthFlowStore,
|
|
123762
124596
|
startOAuthFlow,
|
|
@@ -124293,6 +125127,12 @@ export {
|
|
|
124293
125127
|
modjoConnector,
|
|
124294
125128
|
factorsAiConnector,
|
|
124295
125129
|
getresponseConnector,
|
|
125130
|
+
outreachConnector,
|
|
125131
|
+
salesloftConnector,
|
|
125132
|
+
gongConnector,
|
|
125133
|
+
ringcentralConnector,
|
|
125134
|
+
dialpadConnector,
|
|
125135
|
+
demandbaseConnector,
|
|
124296
125136
|
adapters_exports
|
|
124297
125137
|
};
|
|
124298
|
-
//# sourceMappingURL=chunk-
|
|
125138
|
+
//# sourceMappingURL=chunk-ZBMMGAE2.js.map
|