@tangle-network/agent-integrations 0.53.35 → 0.53.36
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 +8 -8
- package/dist/{chunk-2IU335WP.js → chunk-2E7CMFKX.js} +3 -2
- package/dist/{chunk-2IU335WP.js.map → chunk-2E7CMFKX.js.map} +1 -1
- package/dist/{chunk-XGL345YX.js → chunk-2F2JVX3Z.js} +2 -2
- package/dist/{chunk-JXFPIZ3O.js → chunk-DUWZMKEF.js} +18 -4
- package/dist/chunk-DUWZMKEF.js.map +1 -0
- package/dist/{chunk-FK4ENHCP.js → chunk-FY7B3I5G.js} +2 -2
- package/dist/{chunk-N4KK3J7U.js → chunk-GLOAH446.js} +1273 -1254
- package/dist/{chunk-N4KK3J7U.js.map → chunk-GLOAH446.js.map} +1 -1
- package/dist/{chunk-ANWNXGVV.js → chunk-NCOHYY6P.js} +2 -2
- package/dist/{chunk-BVHX2E5X.js → chunk-X5H5ARIO.js} +47 -11
- package/dist/chunk-X5H5ARIO.js.map +1 -0
- package/dist/{chunk-GGKD2W6H.js → chunk-ZZUBL7KY.js} +4 -2
- package/dist/chunk-ZZUBL7KY.js.map +1 -0
- package/dist/connect/index.d.ts +2 -2
- package/dist/connect/index.js +2 -2
- package/dist/connectors/adapters/index.d.ts +2 -2
- package/dist/connectors/adapters/index.js +2 -2
- package/dist/connectors/index.d.ts +4 -3
- package/dist/connectors/index.js +3 -3
- package/dist/{consumer-DV3XEumb.d.ts → consumer-Ctva6_kb.d.ts} +1 -1
- package/dist/consumer.d.ts +3 -3
- package/dist/consumer.js +2 -2
- package/dist/{core-types-qkW_zZDB.d.ts → core-types-BcaDdvFi.d.ts} +1 -1
- package/dist/coverage-catalog.d.ts +2 -2
- package/dist/{importers-B7sdp2Ke.d.ts → importers-C1N3P60U.d.ts} +1 -1
- package/dist/index.d.ts +8 -8
- package/dist/index.js +8 -8
- package/dist/mcp.d.ts +3 -3
- package/dist/mcp.js +8 -8
- 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 +8 -8
- package/dist/runtime.d.ts +2 -2
- package/dist/runtime.js +8 -8
- package/dist/specs.d.ts +6 -2
- package/dist/specs.js +4 -4
- package/dist/{tangle-id-uvHTbgCw.d.ts → tangle-id-r1uPd9QH.d.ts} +1 -1
- package/dist/{types-C1rgdXiP.d.ts → types-ooBfkUOy.d.ts} +10 -1
- package/package.json +1 -1
- package/dist/chunk-BVHX2E5X.js.map +0 -1
- package/dist/chunk-GGKD2W6H.js.map +0 -1
- package/dist/chunk-JXFPIZ3O.js.map +0 -1
- /package/dist/{chunk-XGL345YX.js.map → chunk-2F2JVX3Z.js.map} +0 -0
- /package/dist/{chunk-FK4ENHCP.js.map → chunk-FY7B3I5G.js.map} +0 -0
- /package/dist/{chunk-ANWNXGVV.js.map → chunk-NCOHYY6P.js.map} +0 -0
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
TangleIdentityUnreachableError,
|
|
15
15
|
createTangleIdentityClient,
|
|
16
16
|
tangleIdentity
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-DUWZMKEF.js";
|
|
18
18
|
import {
|
|
19
19
|
__export
|
|
20
20
|
} from "./chunk-PZ5AY32C.js";
|
|
@@ -21699,6 +21699,354 @@ var dropboxConnector = declarativeRestConnector({
|
|
|
21699
21699
|
]
|
|
21700
21700
|
});
|
|
21701
21701
|
|
|
21702
|
+
// src/connectors/adapters/ebay.ts
|
|
21703
|
+
var ebayConnector = declarativeRestConnector({
|
|
21704
|
+
kind: "ebay",
|
|
21705
|
+
displayName: "eBay",
|
|
21706
|
+
description: "Manage eBay seller inventory items and fulfillment orders, and read the connected user identity.",
|
|
21707
|
+
auth: {
|
|
21708
|
+
kind: "oauth2",
|
|
21709
|
+
authorizationUrl: "https://auth.ebay.com/oauth2/authorize",
|
|
21710
|
+
tokenUrl: "https://api.ebay.com/identity/v1/oauth2/token",
|
|
21711
|
+
scopes: [
|
|
21712
|
+
"https://api.ebay.com/oauth/api_scope",
|
|
21713
|
+
"https://api.ebay.com/oauth/api_scope/sell.inventory",
|
|
21714
|
+
"https://api.ebay.com/oauth/api_scope/sell.fulfillment",
|
|
21715
|
+
"https://api.ebay.com/oauth/api_scope/sell.account",
|
|
21716
|
+
"https://api.ebay.com/oauth/api_scope/sell.marketing",
|
|
21717
|
+
"https://api.ebay.com/oauth/api_scope/commerce.identity.readonly"
|
|
21718
|
+
],
|
|
21719
|
+
clientIdEnv: "EBAY_OAUTH_CLIENT_ID",
|
|
21720
|
+
clientSecretEnv: "EBAY_OAUTH_CLIENT_SECRET",
|
|
21721
|
+
tokenClientAuthMethod: "client_secret_basic"
|
|
21722
|
+
},
|
|
21723
|
+
category: "commerce",
|
|
21724
|
+
defaultConsistencyModel: "authoritative",
|
|
21725
|
+
// Production by default; consumers persist `metadata.apiBaseUrl =
|
|
21726
|
+
// "https://api.sandbox.ebay.com"` to route a connection at the sandbox.
|
|
21727
|
+
baseUrl: { metadataKey: "apiBaseUrl", fallback: "https://api.ebay.com" },
|
|
21728
|
+
credentialPlacement: { kind: "bearer" },
|
|
21729
|
+
defaultHeaders: { accept: "application/json" },
|
|
21730
|
+
// The privileges endpoint is the canonical liveness check — cheap, always
|
|
21731
|
+
// available for tokens carrying any sell.* scope, returns the seller's
|
|
21732
|
+
// current selling limits.
|
|
21733
|
+
test: { method: "GET", path: "sell/account/v1/privilege" },
|
|
21734
|
+
capabilities: [
|
|
21735
|
+
{
|
|
21736
|
+
name: "inventory_items.search",
|
|
21737
|
+
class: "read",
|
|
21738
|
+
description: "List inventory items for the connected seller with pagination.",
|
|
21739
|
+
parameters: {
|
|
21740
|
+
type: "object",
|
|
21741
|
+
properties: {
|
|
21742
|
+
limit: { type: "integer", minimum: 1, maximum: 200, description: "Page size (eBay default 25, max 200)." },
|
|
21743
|
+
offset: { type: "integer", minimum: 0, description: "Zero-based offset of the first item to return." }
|
|
21744
|
+
}
|
|
21745
|
+
},
|
|
21746
|
+
request: {
|
|
21747
|
+
method: "GET",
|
|
21748
|
+
path: "sell/inventory/v1/inventory_item",
|
|
21749
|
+
query: {
|
|
21750
|
+
limit: "{limit}",
|
|
21751
|
+
offset: "{offset}"
|
|
21752
|
+
}
|
|
21753
|
+
},
|
|
21754
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
21755
|
+
},
|
|
21756
|
+
{
|
|
21757
|
+
name: "inventory_items.get",
|
|
21758
|
+
class: "read",
|
|
21759
|
+
description: "Read a single inventory item by SKU.",
|
|
21760
|
+
parameters: {
|
|
21761
|
+
type: "object",
|
|
21762
|
+
properties: {
|
|
21763
|
+
sku: { type: "string", description: "Seller-defined inventory SKU." }
|
|
21764
|
+
},
|
|
21765
|
+
required: ["sku"]
|
|
21766
|
+
},
|
|
21767
|
+
request: {
|
|
21768
|
+
method: "GET",
|
|
21769
|
+
path: "sell/inventory/v1/inventory_item/{sku}"
|
|
21770
|
+
},
|
|
21771
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
21772
|
+
},
|
|
21773
|
+
{
|
|
21774
|
+
name: "inventory_items.upsert",
|
|
21775
|
+
class: "mutation",
|
|
21776
|
+
description: "Create or fully replace an inventory item identified by SKU (eBay PUT semantics are upsert).",
|
|
21777
|
+
parameters: {
|
|
21778
|
+
type: "object",
|
|
21779
|
+
properties: {
|
|
21780
|
+
sku: { type: "string", description: "Seller-defined inventory SKU." },
|
|
21781
|
+
marketplaceId: { type: "string", description: "Marketplace id, e.g. EBAY_US. Defaults to Content-Language en-US." },
|
|
21782
|
+
item: {
|
|
21783
|
+
type: "object",
|
|
21784
|
+
description: "Inventory item payload (product, condition, availability, packageWeightAndSize)."
|
|
21785
|
+
}
|
|
21786
|
+
},
|
|
21787
|
+
required: ["sku", "item"]
|
|
21788
|
+
},
|
|
21789
|
+
request: {
|
|
21790
|
+
method: "PUT",
|
|
21791
|
+
path: "sell/inventory/v1/inventory_item/{sku}",
|
|
21792
|
+
headers: {
|
|
21793
|
+
"content-language": "en-US",
|
|
21794
|
+
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
21795
|
+
},
|
|
21796
|
+
body: "{item}"
|
|
21797
|
+
},
|
|
21798
|
+
cas: "native-idempotency",
|
|
21799
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
21800
|
+
},
|
|
21801
|
+
{
|
|
21802
|
+
name: "inventory_items.delete",
|
|
21803
|
+
class: "mutation",
|
|
21804
|
+
description: "Delete an inventory item and all of its offers by SKU.",
|
|
21805
|
+
parameters: {
|
|
21806
|
+
type: "object",
|
|
21807
|
+
properties: {
|
|
21808
|
+
sku: { type: "string" }
|
|
21809
|
+
},
|
|
21810
|
+
required: ["sku"]
|
|
21811
|
+
},
|
|
21812
|
+
request: {
|
|
21813
|
+
method: "DELETE",
|
|
21814
|
+
path: "sell/inventory/v1/inventory_item/{sku}"
|
|
21815
|
+
},
|
|
21816
|
+
cas: "optimistic-read-verify",
|
|
21817
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
21818
|
+
},
|
|
21819
|
+
{
|
|
21820
|
+
name: "offers.search",
|
|
21821
|
+
class: "read",
|
|
21822
|
+
description: "List offers (listings) attached to a given inventory SKU with pagination.",
|
|
21823
|
+
parameters: {
|
|
21824
|
+
type: "object",
|
|
21825
|
+
properties: {
|
|
21826
|
+
sku: { type: "string", description: "Inventory SKU whose offers to list." },
|
|
21827
|
+
marketplace_id: { type: "string", description: "Marketplace filter, e.g. EBAY_US." },
|
|
21828
|
+
format: { type: "string", enum: ["FIXED_PRICE", "AUCTION"] },
|
|
21829
|
+
limit: { type: "integer", minimum: 1, maximum: 200 },
|
|
21830
|
+
offset: { type: "integer", minimum: 0 }
|
|
21831
|
+
},
|
|
21832
|
+
required: ["sku"]
|
|
21833
|
+
},
|
|
21834
|
+
request: {
|
|
21835
|
+
method: "GET",
|
|
21836
|
+
path: "sell/inventory/v1/offer",
|
|
21837
|
+
query: {
|
|
21838
|
+
sku: "{sku}",
|
|
21839
|
+
marketplace_id: "{marketplace_id}",
|
|
21840
|
+
format: "{format}",
|
|
21841
|
+
limit: "{limit}",
|
|
21842
|
+
offset: "{offset}"
|
|
21843
|
+
}
|
|
21844
|
+
},
|
|
21845
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
21846
|
+
},
|
|
21847
|
+
{
|
|
21848
|
+
name: "offers.publish",
|
|
21849
|
+
class: "mutation",
|
|
21850
|
+
description: "Publish an offer, converting it into an active eBay listing.",
|
|
21851
|
+
parameters: {
|
|
21852
|
+
type: "object",
|
|
21853
|
+
properties: {
|
|
21854
|
+
offerId: { type: "string", description: "Unique identifier of the offer to publish." }
|
|
21855
|
+
},
|
|
21856
|
+
required: ["offerId"]
|
|
21857
|
+
},
|
|
21858
|
+
request: {
|
|
21859
|
+
method: "POST",
|
|
21860
|
+
path: "sell/inventory/v1/offer/{offerId}/publish"
|
|
21861
|
+
},
|
|
21862
|
+
cas: "native-idempotency",
|
|
21863
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
21864
|
+
},
|
|
21865
|
+
{
|
|
21866
|
+
name: "orders.search",
|
|
21867
|
+
class: "read",
|
|
21868
|
+
description: "List fulfillment orders for the connected seller with optional filters and pagination.",
|
|
21869
|
+
parameters: {
|
|
21870
|
+
type: "object",
|
|
21871
|
+
properties: {
|
|
21872
|
+
filter: {
|
|
21873
|
+
type: "string",
|
|
21874
|
+
description: 'eBay fulfillment filter expression, e.g. "creationdate:[2026-01-01T00:00:00.000Z..]" or "orderfulfillmentstatus:{NOT_STARTED|IN_PROGRESS}".'
|
|
21875
|
+
},
|
|
21876
|
+
orderIds: { type: "string", description: "Comma-separated list of order ids to fetch." },
|
|
21877
|
+
fieldGroups: { type: "string", description: "Optional response projection, e.g. TAX_BREAKDOWN." },
|
|
21878
|
+
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." },
|
|
21879
|
+
limit: { type: "integer", minimum: 1, maximum: 1e3 },
|
|
21880
|
+
offset: { type: "integer", minimum: 0 }
|
|
21881
|
+
}
|
|
21882
|
+
},
|
|
21883
|
+
request: {
|
|
21884
|
+
method: "GET",
|
|
21885
|
+
path: "sell/fulfillment/v1/order",
|
|
21886
|
+
headers: {
|
|
21887
|
+
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
21888
|
+
},
|
|
21889
|
+
query: {
|
|
21890
|
+
filter: "{filter}",
|
|
21891
|
+
orderIds: "{orderIds}",
|
|
21892
|
+
fieldGroups: "{fieldGroups}",
|
|
21893
|
+
limit: "{limit}",
|
|
21894
|
+
offset: "{offset}"
|
|
21895
|
+
}
|
|
21896
|
+
},
|
|
21897
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
21898
|
+
},
|
|
21899
|
+
{
|
|
21900
|
+
name: "orders.get",
|
|
21901
|
+
class: "read",
|
|
21902
|
+
description: "Read a single fulfillment order by id.",
|
|
21903
|
+
parameters: {
|
|
21904
|
+
type: "object",
|
|
21905
|
+
properties: {
|
|
21906
|
+
orderId: { type: "string" },
|
|
21907
|
+
fieldGroups: { type: "string", description: "Optional response projection, e.g. TAX_BREAKDOWN." },
|
|
21908
|
+
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." }
|
|
21909
|
+
},
|
|
21910
|
+
required: ["orderId"]
|
|
21911
|
+
},
|
|
21912
|
+
request: {
|
|
21913
|
+
method: "GET",
|
|
21914
|
+
path: "sell/fulfillment/v1/order/{orderId}",
|
|
21915
|
+
headers: {
|
|
21916
|
+
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
21917
|
+
},
|
|
21918
|
+
query: {
|
|
21919
|
+
fieldGroups: "{fieldGroups}"
|
|
21920
|
+
}
|
|
21921
|
+
},
|
|
21922
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
21923
|
+
},
|
|
21924
|
+
{
|
|
21925
|
+
name: "orders.ship",
|
|
21926
|
+
class: "mutation",
|
|
21927
|
+
description: "Create a shipping fulfillment for an order \u2014 records carrier, tracking, and the line items shipped.",
|
|
21928
|
+
parameters: {
|
|
21929
|
+
type: "object",
|
|
21930
|
+
properties: {
|
|
21931
|
+
orderId: { type: "string" },
|
|
21932
|
+
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." },
|
|
21933
|
+
fulfillment: {
|
|
21934
|
+
type: "object",
|
|
21935
|
+
description: "Shipping fulfillment payload (lineItems, shippedDate, shippingCarrierCode, trackingNumber)."
|
|
21936
|
+
}
|
|
21937
|
+
},
|
|
21938
|
+
required: ["orderId", "fulfillment"]
|
|
21939
|
+
},
|
|
21940
|
+
request: {
|
|
21941
|
+
method: "POST",
|
|
21942
|
+
path: "sell/fulfillment/v1/order/{orderId}/shipping_fulfillment",
|
|
21943
|
+
headers: {
|
|
21944
|
+
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
21945
|
+
},
|
|
21946
|
+
body: "{fulfillment}"
|
|
21947
|
+
},
|
|
21948
|
+
cas: "native-idempotency",
|
|
21949
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
21950
|
+
},
|
|
21951
|
+
{
|
|
21952
|
+
name: "identity.get",
|
|
21953
|
+
class: "read",
|
|
21954
|
+
description: "Read the connected eBay user identity (account type, registration marketplace, business / individual flags).",
|
|
21955
|
+
parameters: {
|
|
21956
|
+
type: "object",
|
|
21957
|
+
properties: {}
|
|
21958
|
+
},
|
|
21959
|
+
request: {
|
|
21960
|
+
method: "GET",
|
|
21961
|
+
path: "commerce/identity/v1/user/"
|
|
21962
|
+
},
|
|
21963
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/commerce.identity.readonly"]
|
|
21964
|
+
},
|
|
21965
|
+
{
|
|
21966
|
+
name: "inventory.update",
|
|
21967
|
+
class: "mutation",
|
|
21968
|
+
description: "Bulk-update price and/or available quantity for one or more inventory items / offers.",
|
|
21969
|
+
parameters: {
|
|
21970
|
+
type: "object",
|
|
21971
|
+
properties: {
|
|
21972
|
+
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." },
|
|
21973
|
+
requests: {
|
|
21974
|
+
type: "array",
|
|
21975
|
+
description: "eBay PriceQuantity request array. Each entry targets a SKU and/or offerId with new ship-to-locationAvailability / price values.",
|
|
21976
|
+
items: { type: "object" }
|
|
21977
|
+
}
|
|
21978
|
+
},
|
|
21979
|
+
required: ["requests"]
|
|
21980
|
+
},
|
|
21981
|
+
request: {
|
|
21982
|
+
method: "POST",
|
|
21983
|
+
path: "sell/inventory/v1/bulk_update_price_quantity",
|
|
21984
|
+
headers: {
|
|
21985
|
+
"content-language": "en-US",
|
|
21986
|
+
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
21987
|
+
},
|
|
21988
|
+
body: { requests: "{requests}" }
|
|
21989
|
+
},
|
|
21990
|
+
cas: "native-idempotency",
|
|
21991
|
+
externalEffect: true,
|
|
21992
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
21993
|
+
},
|
|
21994
|
+
{
|
|
21995
|
+
name: "orders.cancel",
|
|
21996
|
+
class: "mutation",
|
|
21997
|
+
description: "Request order cancellation via the Post-Order Cancellation API. Sellers can request cancellation on unshipped orders.",
|
|
21998
|
+
parameters: {
|
|
21999
|
+
type: "object",
|
|
22000
|
+
properties: {
|
|
22001
|
+
legacyOrderId: {
|
|
22002
|
+
type: "string",
|
|
22003
|
+
description: "eBay legacy (string) order id the cancellation request applies to."
|
|
22004
|
+
},
|
|
22005
|
+
cancelReason: {
|
|
22006
|
+
type: "string",
|
|
22007
|
+
description: "Reason for the cancellation, e.g. OUT_OF_STOCK_OR_CANNOT_FULFILL, BUYER_ASKED_CANCEL, ADDRESS_ISSUES."
|
|
22008
|
+
},
|
|
22009
|
+
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." }
|
|
22010
|
+
},
|
|
22011
|
+
required: ["legacyOrderId", "cancelReason"]
|
|
22012
|
+
},
|
|
22013
|
+
request: {
|
|
22014
|
+
method: "POST",
|
|
22015
|
+
path: "post-order/v2/cancellation",
|
|
22016
|
+
headers: {
|
|
22017
|
+
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
22018
|
+
},
|
|
22019
|
+
body: {
|
|
22020
|
+
legacyOrderId: "{legacyOrderId}",
|
|
22021
|
+
cancelReason: "{cancelReason}"
|
|
22022
|
+
}
|
|
22023
|
+
},
|
|
22024
|
+
cas: "native-idempotency",
|
|
22025
|
+
externalEffect: true,
|
|
22026
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
22027
|
+
},
|
|
22028
|
+
{
|
|
22029
|
+
name: "listing.end",
|
|
22030
|
+
class: "mutation",
|
|
22031
|
+
description: "End an active listing by withdrawing its offer.",
|
|
22032
|
+
parameters: {
|
|
22033
|
+
type: "object",
|
|
22034
|
+
properties: {
|
|
22035
|
+
offerId: { type: "string", description: "Unique identifier of the offer (active listing) to withdraw." }
|
|
22036
|
+
},
|
|
22037
|
+
required: ["offerId"]
|
|
22038
|
+
},
|
|
22039
|
+
request: {
|
|
22040
|
+
method: "POST",
|
|
22041
|
+
path: "sell/inventory/v1/offer/{offerId}/withdraw"
|
|
22042
|
+
},
|
|
22043
|
+
cas: "native-idempotency",
|
|
22044
|
+
externalEffect: true,
|
|
22045
|
+
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
22046
|
+
}
|
|
22047
|
+
]
|
|
22048
|
+
});
|
|
22049
|
+
|
|
21702
22050
|
// src/connectors/adapters/etsy.ts
|
|
21703
22051
|
var SCOPES = [
|
|
21704
22052
|
"listings_r",
|
|
@@ -29900,6 +30248,320 @@ var googleMeetConnector = declarativeRestConnector({
|
|
|
29900
30248
|
]
|
|
29901
30249
|
});
|
|
29902
30250
|
|
|
30251
|
+
// src/connectors/adapters/google-my-business.ts
|
|
30252
|
+
var googleMyBusinessConnector = declarativeRestConnector({
|
|
30253
|
+
kind: "google-my-business",
|
|
30254
|
+
displayName: "Google My Business",
|
|
30255
|
+
description: "Manage Google Business Profile (formerly Google My Business): list accounts and locations, read customer reviews, and post owner replies.",
|
|
30256
|
+
auth: {
|
|
30257
|
+
kind: "oauth2",
|
|
30258
|
+
authorizationUrl: "https://accounts.google.com/o/oauth2/v2/auth",
|
|
30259
|
+
tokenUrl: "https://oauth2.googleapis.com/token",
|
|
30260
|
+
scopes: ["https://www.googleapis.com/auth/business.manage"],
|
|
30261
|
+
clientIdEnv: "GOOGLE_MY_BUSINESS_OAUTH_CLIENT_ID",
|
|
30262
|
+
clientSecretEnv: "GOOGLE_MY_BUSINESS_OAUTH_CLIENT_SECRET"
|
|
30263
|
+
},
|
|
30264
|
+
category: "crm",
|
|
30265
|
+
defaultConsistencyModel: "authoritative",
|
|
30266
|
+
baseUrl: "https://mybusinessaccountmanagement.googleapis.com",
|
|
30267
|
+
test: { method: "GET", path: "/v1/accounts" },
|
|
30268
|
+
capabilities: [
|
|
30269
|
+
{
|
|
30270
|
+
name: "accounts.list",
|
|
30271
|
+
class: "read",
|
|
30272
|
+
description: "List Business Profile accounts the authenticated user owns or co-manages.",
|
|
30273
|
+
parameters: {
|
|
30274
|
+
type: "object",
|
|
30275
|
+
properties: {
|
|
30276
|
+
pageSize: { type: "integer", minimum: 1, maximum: 50 },
|
|
30277
|
+
pageToken: { type: "string" },
|
|
30278
|
+
filter: { type: "string" }
|
|
30279
|
+
},
|
|
30280
|
+
required: []
|
|
30281
|
+
},
|
|
30282
|
+
request: {
|
|
30283
|
+
method: "GET",
|
|
30284
|
+
path: "/v1/accounts",
|
|
30285
|
+
query: {
|
|
30286
|
+
pageSize: "{pageSize}",
|
|
30287
|
+
pageToken: "{pageToken}",
|
|
30288
|
+
filter: "{filter}"
|
|
30289
|
+
}
|
|
30290
|
+
},
|
|
30291
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30292
|
+
},
|
|
30293
|
+
{
|
|
30294
|
+
name: "locations.list",
|
|
30295
|
+
class: "read",
|
|
30296
|
+
description: "List locations under a Business Profile account (Business Information API).",
|
|
30297
|
+
parameters: {
|
|
30298
|
+
type: "object",
|
|
30299
|
+
properties: {
|
|
30300
|
+
accountId: {
|
|
30301
|
+
type: "string",
|
|
30302
|
+
description: "Bare account id (the trailing segment of `accounts/{accountId}`)."
|
|
30303
|
+
},
|
|
30304
|
+
pageSize: { type: "integer", minimum: 1, maximum: 100 },
|
|
30305
|
+
pageToken: { type: "string" },
|
|
30306
|
+
filter: { type: "string" },
|
|
30307
|
+
readMask: {
|
|
30308
|
+
type: "string",
|
|
30309
|
+
description: "Field mask selecting which Location fields to return, e.g. `name,title,storefrontAddress`."
|
|
30310
|
+
}
|
|
30311
|
+
},
|
|
30312
|
+
required: ["accountId", "readMask"]
|
|
30313
|
+
},
|
|
30314
|
+
request: {
|
|
30315
|
+
method: "GET",
|
|
30316
|
+
path: "https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations",
|
|
30317
|
+
query: {
|
|
30318
|
+
pageSize: "{pageSize}",
|
|
30319
|
+
pageToken: "{pageToken}",
|
|
30320
|
+
filter: "{filter}",
|
|
30321
|
+
readMask: "{readMask}"
|
|
30322
|
+
}
|
|
30323
|
+
},
|
|
30324
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30325
|
+
},
|
|
30326
|
+
{
|
|
30327
|
+
name: "reviews.list",
|
|
30328
|
+
class: "read",
|
|
30329
|
+
description: "List customer reviews for a location (legacy v4 endpoint \u2014 Google never migrated reviews onto the v1 split APIs).",
|
|
30330
|
+
parameters: {
|
|
30331
|
+
type: "object",
|
|
30332
|
+
properties: {
|
|
30333
|
+
accountId: { type: "string" },
|
|
30334
|
+
locationId: { type: "string" },
|
|
30335
|
+
pageSize: { type: "integer", minimum: 1, maximum: 50 },
|
|
30336
|
+
pageToken: { type: "string" },
|
|
30337
|
+
orderBy: {
|
|
30338
|
+
type: "string",
|
|
30339
|
+
description: "Sort order, e.g. `updateTime desc` or `rating desc`."
|
|
30340
|
+
}
|
|
30341
|
+
},
|
|
30342
|
+
required: ["accountId", "locationId"]
|
|
30343
|
+
},
|
|
30344
|
+
request: {
|
|
30345
|
+
method: "GET",
|
|
30346
|
+
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews",
|
|
30347
|
+
query: {
|
|
30348
|
+
pageSize: "{pageSize}",
|
|
30349
|
+
pageToken: "{pageToken}",
|
|
30350
|
+
orderBy: "{orderBy}"
|
|
30351
|
+
}
|
|
30352
|
+
},
|
|
30353
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30354
|
+
},
|
|
30355
|
+
{
|
|
30356
|
+
name: "reviews.get",
|
|
30357
|
+
class: "read",
|
|
30358
|
+
description: "Get a single customer review by id.",
|
|
30359
|
+
parameters: {
|
|
30360
|
+
type: "object",
|
|
30361
|
+
properties: {
|
|
30362
|
+
accountId: { type: "string" },
|
|
30363
|
+
locationId: { type: "string" },
|
|
30364
|
+
reviewId: { type: "string" }
|
|
30365
|
+
},
|
|
30366
|
+
required: ["accountId", "locationId", "reviewId"]
|
|
30367
|
+
},
|
|
30368
|
+
request: {
|
|
30369
|
+
method: "GET",
|
|
30370
|
+
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}"
|
|
30371
|
+
},
|
|
30372
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30373
|
+
},
|
|
30374
|
+
{
|
|
30375
|
+
// Mirrors the activepieces `create.reply` action (`createReply`).
|
|
30376
|
+
// The legacy v4 endpoint uses PUT for upsert semantics: posting the
|
|
30377
|
+
// same reply twice replaces (not duplicates) the owner response, which
|
|
30378
|
+
// makes this naturally idempotent on (locationId, reviewId).
|
|
30379
|
+
name: "reviews.reply.create",
|
|
30380
|
+
class: "mutation",
|
|
30381
|
+
description: "Create or replace the owner reply on a customer review (idempotent upsert on the review name).",
|
|
30382
|
+
parameters: {
|
|
30383
|
+
type: "object",
|
|
30384
|
+
properties: {
|
|
30385
|
+
accountId: { type: "string" },
|
|
30386
|
+
locationId: { type: "string" },
|
|
30387
|
+
reviewId: { type: "string" },
|
|
30388
|
+
comment: {
|
|
30389
|
+
type: "string",
|
|
30390
|
+
description: "Reply text, up to 4096 characters.",
|
|
30391
|
+
maxLength: 4096
|
|
30392
|
+
}
|
|
30393
|
+
},
|
|
30394
|
+
required: ["accountId", "locationId", "reviewId", "comment"]
|
|
30395
|
+
},
|
|
30396
|
+
request: {
|
|
30397
|
+
method: "PUT",
|
|
30398
|
+
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply",
|
|
30399
|
+
body: { comment: "{comment}" }
|
|
30400
|
+
},
|
|
30401
|
+
cas: "native-idempotency",
|
|
30402
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30403
|
+
},
|
|
30404
|
+
{
|
|
30405
|
+
name: "reviews.reply.delete",
|
|
30406
|
+
class: "mutation",
|
|
30407
|
+
description: "Delete the owner reply on a customer review.",
|
|
30408
|
+
parameters: {
|
|
30409
|
+
type: "object",
|
|
30410
|
+
properties: {
|
|
30411
|
+
accountId: { type: "string" },
|
|
30412
|
+
locationId: { type: "string" },
|
|
30413
|
+
reviewId: { type: "string" }
|
|
30414
|
+
},
|
|
30415
|
+
required: ["accountId", "locationId", "reviewId"]
|
|
30416
|
+
},
|
|
30417
|
+
request: {
|
|
30418
|
+
method: "DELETE",
|
|
30419
|
+
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply"
|
|
30420
|
+
},
|
|
30421
|
+
cas: "native-idempotency",
|
|
30422
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30423
|
+
},
|
|
30424
|
+
{
|
|
30425
|
+
// GBP "posts" — short-lived updates that surface on the storefront's
|
|
30426
|
+
// listing. The legacy v4 endpoint is the only published surface; the
|
|
30427
|
+
// Business Posts v1 API was retired in 2022 and Google never produced a
|
|
30428
|
+
// replacement. Repeating a POST produces a duplicate localPost, so the
|
|
30429
|
+
// MutationGuard idempotency-key layer must dedupe above the connector.
|
|
30430
|
+
name: "localPosts.create",
|
|
30431
|
+
class: "mutation",
|
|
30432
|
+
description: "Publish a Google Business Profile local post (status update, offer, event, or call-to-action) on a location.",
|
|
30433
|
+
parameters: {
|
|
30434
|
+
type: "object",
|
|
30435
|
+
properties: {
|
|
30436
|
+
accountId: { type: "string" },
|
|
30437
|
+
locationId: { type: "string" },
|
|
30438
|
+
languageCode: {
|
|
30439
|
+
type: "string",
|
|
30440
|
+
description: 'BCP-47 language code, e.g. "en".'
|
|
30441
|
+
},
|
|
30442
|
+
summary: {
|
|
30443
|
+
type: "string",
|
|
30444
|
+
description: "Post body text (up to 1,500 characters).",
|
|
30445
|
+
maxLength: 1500
|
|
30446
|
+
},
|
|
30447
|
+
topicType: {
|
|
30448
|
+
type: "string",
|
|
30449
|
+
description: "STANDARD | EVENT | OFFER | ALERT."
|
|
30450
|
+
},
|
|
30451
|
+
callToAction: {
|
|
30452
|
+
type: "object",
|
|
30453
|
+
description: 'Optional { actionType, url } block, e.g. { actionType: "LEARN_MORE", url: "https://..." }.'
|
|
30454
|
+
},
|
|
30455
|
+
event: {
|
|
30456
|
+
type: "object",
|
|
30457
|
+
description: "For topicType=EVENT: { title, schedule: { startDate, endDate, ... } }."
|
|
30458
|
+
},
|
|
30459
|
+
offer: {
|
|
30460
|
+
type: "object",
|
|
30461
|
+
description: "For topicType=OFFER: { couponCode, redeemOnlineUrl, termsConditions }."
|
|
30462
|
+
},
|
|
30463
|
+
media: {
|
|
30464
|
+
type: "array",
|
|
30465
|
+
description: "Optional MediaItem list to attach images/video to the post."
|
|
30466
|
+
}
|
|
30467
|
+
},
|
|
30468
|
+
required: ["accountId", "locationId", "languageCode", "summary"]
|
|
30469
|
+
},
|
|
30470
|
+
request: {
|
|
30471
|
+
method: "POST",
|
|
30472
|
+
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/localPosts",
|
|
30473
|
+
body: {
|
|
30474
|
+
languageCode: "{languageCode}",
|
|
30475
|
+
summary: "{summary}",
|
|
30476
|
+
topicType: "{topicType}",
|
|
30477
|
+
callToAction: "{callToAction}",
|
|
30478
|
+
event: "{event}",
|
|
30479
|
+
offer: "{offer}",
|
|
30480
|
+
media: "{media}"
|
|
30481
|
+
}
|
|
30482
|
+
},
|
|
30483
|
+
// GBP localPosts has no requestId / idempotency-key on POST; consecutive
|
|
30484
|
+
// calls produce duplicate posts. MutationGuard's idempotency-key layer
|
|
30485
|
+
// is the only guard.
|
|
30486
|
+
cas: "none",
|
|
30487
|
+
externalEffect: true,
|
|
30488
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30489
|
+
},
|
|
30490
|
+
{
|
|
30491
|
+
name: "localPosts.delete",
|
|
30492
|
+
class: "mutation",
|
|
30493
|
+
description: "Delete a local post from a location. Repeating the call on an already-deleted post yields 404 but is idempotent in effect.",
|
|
30494
|
+
parameters: {
|
|
30495
|
+
type: "object",
|
|
30496
|
+
properties: {
|
|
30497
|
+
accountId: { type: "string" },
|
|
30498
|
+
locationId: { type: "string" },
|
|
30499
|
+
localPostId: { type: "string" }
|
|
30500
|
+
},
|
|
30501
|
+
required: ["accountId", "locationId", "localPostId"]
|
|
30502
|
+
},
|
|
30503
|
+
request: {
|
|
30504
|
+
method: "DELETE",
|
|
30505
|
+
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/localPosts/{localPostId}"
|
|
30506
|
+
},
|
|
30507
|
+
cas: "native-idempotency",
|
|
30508
|
+
externalEffect: true,
|
|
30509
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30510
|
+
},
|
|
30511
|
+
{
|
|
30512
|
+
// GBP "media" — photos/videos on a location's profile. The legacy v4
|
|
30513
|
+
// /media endpoint accepts a MediaItem body with either a sourceUrl
|
|
30514
|
+
// (Google fetches it) or a reference from /media:startUpload (multi-step
|
|
30515
|
+
// resumable upload). We expose the sourceUrl path because it's a single
|
|
30516
|
+
// request the declarative-rest engine can model cleanly; bytestream
|
|
30517
|
+
// upload is a separate hand-rolled adapter when needed.
|
|
30518
|
+
name: "media.create",
|
|
30519
|
+
class: "mutation",
|
|
30520
|
+
description: "Upload a photo or video to a Google Business Profile location via the v4 /media endpoint. Pass a sourceUrl Google can fetch (HTTPS, publicly reachable). For bytestream uploads use the /media:startUpload + PUT bytestream flow instead.",
|
|
30521
|
+
parameters: {
|
|
30522
|
+
type: "object",
|
|
30523
|
+
properties: {
|
|
30524
|
+
accountId: { type: "string" },
|
|
30525
|
+
locationId: { type: "string" },
|
|
30526
|
+
mediaFormat: {
|
|
30527
|
+
type: "string",
|
|
30528
|
+
description: "PHOTO | VIDEO."
|
|
30529
|
+
},
|
|
30530
|
+
locationAssociation: {
|
|
30531
|
+
type: "object",
|
|
30532
|
+
description: 'Where the media attaches, e.g. { category: "EXTERIOR" } or { priceListItemId: "..." }.'
|
|
30533
|
+
},
|
|
30534
|
+
sourceUrl: {
|
|
30535
|
+
type: "string",
|
|
30536
|
+
description: "Public HTTPS URL Google should fetch the media from."
|
|
30537
|
+
},
|
|
30538
|
+
description: {
|
|
30539
|
+
type: "string",
|
|
30540
|
+
description: "Optional caption shown alongside the media."
|
|
30541
|
+
}
|
|
30542
|
+
},
|
|
30543
|
+
required: ["accountId", "locationId", "mediaFormat", "sourceUrl"]
|
|
30544
|
+
},
|
|
30545
|
+
request: {
|
|
30546
|
+
method: "POST",
|
|
30547
|
+
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media",
|
|
30548
|
+
body: {
|
|
30549
|
+
mediaFormat: "{mediaFormat}",
|
|
30550
|
+
locationAssociation: "{locationAssociation}",
|
|
30551
|
+
sourceUrl: "{sourceUrl}",
|
|
30552
|
+
description: "{description}"
|
|
30553
|
+
}
|
|
30554
|
+
},
|
|
30555
|
+
// GBP media POST has no idempotency token; consecutive calls produce
|
|
30556
|
+
// duplicate media items. MutationGuard's idempotency-key layer is the
|
|
30557
|
+
// only guard.
|
|
30558
|
+
cas: "none",
|
|
30559
|
+
externalEffect: true,
|
|
30560
|
+
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
30561
|
+
}
|
|
30562
|
+
]
|
|
30563
|
+
});
|
|
30564
|
+
|
|
29903
30565
|
// src/connectors/adapters/google-search-console.ts
|
|
29904
30566
|
var googleSearchConsoleConnector = declarativeRestConnector({
|
|
29905
30567
|
kind: "google-search-console",
|
|
@@ -31765,6 +32427,344 @@ async function ensureFreshAccessToken7(creds, clientId, clientSecret, inv) {
|
|
|
31765
32427
|
return creds.accessToken;
|
|
31766
32428
|
}
|
|
31767
32429
|
|
|
32430
|
+
// src/connectors/adapters/harvest.ts
|
|
32431
|
+
var harvestConnector = declarativeRestConnector({
|
|
32432
|
+
kind: "harvest",
|
|
32433
|
+
displayName: "Harvest",
|
|
32434
|
+
description: "Read Harvest invoices, projects, tasks, clients, estimates, expenses, time entries, roles, users, and run the uninvoiced report.",
|
|
32435
|
+
auth: {
|
|
32436
|
+
kind: "oauth2",
|
|
32437
|
+
authorizationUrl: "https://id.getharvest.com/oauth2/authorize",
|
|
32438
|
+
tokenUrl: "https://id.getharvest.com/api/v2/oauth2/token",
|
|
32439
|
+
scopes: ["harvest:all"],
|
|
32440
|
+
clientIdEnv: "HARVEST_OAUTH_CLIENT_ID",
|
|
32441
|
+
clientSecretEnv: "HARVEST_OAUTH_CLIENT_SECRET"
|
|
32442
|
+
},
|
|
32443
|
+
category: "other",
|
|
32444
|
+
defaultConsistencyModel: "authoritative",
|
|
32445
|
+
baseUrl: "https://api.harvestapp.com/v2",
|
|
32446
|
+
test: {
|
|
32447
|
+
method: "GET",
|
|
32448
|
+
path: "/users/me",
|
|
32449
|
+
headers: { "Harvest-Account-Id": "{accountId}" }
|
|
32450
|
+
},
|
|
32451
|
+
capabilities: [
|
|
32452
|
+
{
|
|
32453
|
+
name: "invoices.get",
|
|
32454
|
+
class: "read",
|
|
32455
|
+
description: "List invoices in a Harvest account, optionally filtered by client/project/state/date window.",
|
|
32456
|
+
parameters: {
|
|
32457
|
+
type: "object",
|
|
32458
|
+
properties: {
|
|
32459
|
+
accountId: { type: "string", description: "Harvest Account ID (sent as the Harvest-Account-Id header)." },
|
|
32460
|
+
client_id: { type: "string" },
|
|
32461
|
+
project_id: { type: "string" },
|
|
32462
|
+
state: { type: "string", enum: ["draft", "open", "paid", "closed"] },
|
|
32463
|
+
updated_since: { type: "string", description: "ISO-8601 timestamp." },
|
|
32464
|
+
from: { type: "string", description: "ISO-8601 date." },
|
|
32465
|
+
to: { type: "string", description: "ISO-8601 date." },
|
|
32466
|
+
page: { type: "integer", minimum: 1 },
|
|
32467
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32468
|
+
},
|
|
32469
|
+
required: ["accountId"]
|
|
32470
|
+
},
|
|
32471
|
+
request: {
|
|
32472
|
+
method: "GET",
|
|
32473
|
+
path: "/invoices",
|
|
32474
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32475
|
+
query: {
|
|
32476
|
+
client_id: "{client_id}",
|
|
32477
|
+
project_id: "{project_id}",
|
|
32478
|
+
state: "{state}",
|
|
32479
|
+
updated_since: "{updated_since}",
|
|
32480
|
+
from: "{from}",
|
|
32481
|
+
to: "{to}",
|
|
32482
|
+
page: "{page}",
|
|
32483
|
+
per_page: "{per_page}"
|
|
32484
|
+
}
|
|
32485
|
+
},
|
|
32486
|
+
requiredScopes: ["harvest:all"]
|
|
32487
|
+
},
|
|
32488
|
+
{
|
|
32489
|
+
name: "projects.get",
|
|
32490
|
+
class: "read",
|
|
32491
|
+
description: "List projects, optionally filtered by client or active state.",
|
|
32492
|
+
parameters: {
|
|
32493
|
+
type: "object",
|
|
32494
|
+
properties: {
|
|
32495
|
+
accountId: { type: "string" },
|
|
32496
|
+
is_active: { type: "boolean" },
|
|
32497
|
+
client_id: { type: "string" },
|
|
32498
|
+
updated_since: { type: "string" },
|
|
32499
|
+
page: { type: "integer", minimum: 1 },
|
|
32500
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32501
|
+
},
|
|
32502
|
+
required: ["accountId"]
|
|
32503
|
+
},
|
|
32504
|
+
request: {
|
|
32505
|
+
method: "GET",
|
|
32506
|
+
path: "/projects",
|
|
32507
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32508
|
+
query: {
|
|
32509
|
+
is_active: "{is_active}",
|
|
32510
|
+
client_id: "{client_id}",
|
|
32511
|
+
updated_since: "{updated_since}",
|
|
32512
|
+
page: "{page}",
|
|
32513
|
+
per_page: "{per_page}"
|
|
32514
|
+
}
|
|
32515
|
+
},
|
|
32516
|
+
requiredScopes: ["harvest:all"]
|
|
32517
|
+
},
|
|
32518
|
+
{
|
|
32519
|
+
name: "tasks.get",
|
|
32520
|
+
class: "read",
|
|
32521
|
+
description: "List billable/non-billable tasks defined on the Harvest account.",
|
|
32522
|
+
parameters: {
|
|
32523
|
+
type: "object",
|
|
32524
|
+
properties: {
|
|
32525
|
+
accountId: { type: "string" },
|
|
32526
|
+
is_active: { type: "boolean" },
|
|
32527
|
+
updated_since: { type: "string" },
|
|
32528
|
+
page: { type: "integer", minimum: 1 },
|
|
32529
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32530
|
+
},
|
|
32531
|
+
required: ["accountId"]
|
|
32532
|
+
},
|
|
32533
|
+
request: {
|
|
32534
|
+
method: "GET",
|
|
32535
|
+
path: "/tasks",
|
|
32536
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32537
|
+
query: {
|
|
32538
|
+
is_active: "{is_active}",
|
|
32539
|
+
updated_since: "{updated_since}",
|
|
32540
|
+
page: "{page}",
|
|
32541
|
+
per_page: "{per_page}"
|
|
32542
|
+
}
|
|
32543
|
+
},
|
|
32544
|
+
requiredScopes: ["harvest:all"]
|
|
32545
|
+
},
|
|
32546
|
+
{
|
|
32547
|
+
name: "clients.get",
|
|
32548
|
+
class: "read",
|
|
32549
|
+
description: "List clients in the Harvest account.",
|
|
32550
|
+
parameters: {
|
|
32551
|
+
type: "object",
|
|
32552
|
+
properties: {
|
|
32553
|
+
accountId: { type: "string" },
|
|
32554
|
+
is_active: { type: "boolean" },
|
|
32555
|
+
updated_since: { type: "string" },
|
|
32556
|
+
page: { type: "integer", minimum: 1 },
|
|
32557
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32558
|
+
},
|
|
32559
|
+
required: ["accountId"]
|
|
32560
|
+
},
|
|
32561
|
+
request: {
|
|
32562
|
+
method: "GET",
|
|
32563
|
+
path: "/clients",
|
|
32564
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32565
|
+
query: {
|
|
32566
|
+
is_active: "{is_active}",
|
|
32567
|
+
updated_since: "{updated_since}",
|
|
32568
|
+
page: "{page}",
|
|
32569
|
+
per_page: "{per_page}"
|
|
32570
|
+
}
|
|
32571
|
+
},
|
|
32572
|
+
requiredScopes: ["harvest:all"]
|
|
32573
|
+
},
|
|
32574
|
+
{
|
|
32575
|
+
name: "estimates.get",
|
|
32576
|
+
class: "read",
|
|
32577
|
+
description: "List estimates, optionally filtered by client/state/updated_since.",
|
|
32578
|
+
parameters: {
|
|
32579
|
+
type: "object",
|
|
32580
|
+
properties: {
|
|
32581
|
+
accountId: { type: "string" },
|
|
32582
|
+
client_id: { type: "string" },
|
|
32583
|
+
state: { type: "string", enum: ["draft", "sent", "accepted", "declined"] },
|
|
32584
|
+
updated_since: { type: "string" },
|
|
32585
|
+
from: { type: "string" },
|
|
32586
|
+
to: { type: "string" },
|
|
32587
|
+
page: { type: "integer", minimum: 1 },
|
|
32588
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32589
|
+
},
|
|
32590
|
+
required: ["accountId"]
|
|
32591
|
+
},
|
|
32592
|
+
request: {
|
|
32593
|
+
method: "GET",
|
|
32594
|
+
path: "/estimates",
|
|
32595
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32596
|
+
query: {
|
|
32597
|
+
client_id: "{client_id}",
|
|
32598
|
+
state: "{state}",
|
|
32599
|
+
updated_since: "{updated_since}",
|
|
32600
|
+
from: "{from}",
|
|
32601
|
+
to: "{to}",
|
|
32602
|
+
page: "{page}",
|
|
32603
|
+
per_page: "{per_page}"
|
|
32604
|
+
}
|
|
32605
|
+
},
|
|
32606
|
+
requiredScopes: ["harvest:all"]
|
|
32607
|
+
},
|
|
32608
|
+
{
|
|
32609
|
+
name: "expenses.get",
|
|
32610
|
+
class: "read",
|
|
32611
|
+
description: "List expenses in the account, with optional user/client/project/billed/date filters.",
|
|
32612
|
+
parameters: {
|
|
32613
|
+
type: "object",
|
|
32614
|
+
properties: {
|
|
32615
|
+
accountId: { type: "string" },
|
|
32616
|
+
user_id: { type: "string" },
|
|
32617
|
+
client_id: { type: "string" },
|
|
32618
|
+
project_id: { type: "string" },
|
|
32619
|
+
is_billed: { type: "boolean" },
|
|
32620
|
+
updated_since: { type: "string" },
|
|
32621
|
+
from: { type: "string" },
|
|
32622
|
+
to: { type: "string" },
|
|
32623
|
+
page: { type: "integer", minimum: 1 },
|
|
32624
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32625
|
+
},
|
|
32626
|
+
required: ["accountId"]
|
|
32627
|
+
},
|
|
32628
|
+
request: {
|
|
32629
|
+
method: "GET",
|
|
32630
|
+
path: "/expenses",
|
|
32631
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32632
|
+
query: {
|
|
32633
|
+
user_id: "{user_id}",
|
|
32634
|
+
client_id: "{client_id}",
|
|
32635
|
+
project_id: "{project_id}",
|
|
32636
|
+
is_billed: "{is_billed}",
|
|
32637
|
+
updated_since: "{updated_since}",
|
|
32638
|
+
from: "{from}",
|
|
32639
|
+
to: "{to}",
|
|
32640
|
+
page: "{page}",
|
|
32641
|
+
per_page: "{per_page}"
|
|
32642
|
+
}
|
|
32643
|
+
},
|
|
32644
|
+
requiredScopes: ["harvest:all"]
|
|
32645
|
+
},
|
|
32646
|
+
{
|
|
32647
|
+
name: "time.entries.get",
|
|
32648
|
+
class: "read",
|
|
32649
|
+
description: "List time entries with optional user/client/project/task/billed/running/date filters.",
|
|
32650
|
+
parameters: {
|
|
32651
|
+
type: "object",
|
|
32652
|
+
properties: {
|
|
32653
|
+
accountId: { type: "string" },
|
|
32654
|
+
user_id: { type: "string" },
|
|
32655
|
+
client_id: { type: "string" },
|
|
32656
|
+
project_id: { type: "string" },
|
|
32657
|
+
task_id: { type: "string" },
|
|
32658
|
+
is_billed: { type: "boolean" },
|
|
32659
|
+
is_running: { type: "boolean" },
|
|
32660
|
+
updated_since: { type: "string" },
|
|
32661
|
+
from: { type: "string" },
|
|
32662
|
+
to: { type: "string" },
|
|
32663
|
+
page: { type: "integer", minimum: 1 },
|
|
32664
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32665
|
+
},
|
|
32666
|
+
required: ["accountId"]
|
|
32667
|
+
},
|
|
32668
|
+
request: {
|
|
32669
|
+
method: "GET",
|
|
32670
|
+
path: "/time_entries",
|
|
32671
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32672
|
+
query: {
|
|
32673
|
+
user_id: "{user_id}",
|
|
32674
|
+
client_id: "{client_id}",
|
|
32675
|
+
project_id: "{project_id}",
|
|
32676
|
+
task_id: "{task_id}",
|
|
32677
|
+
is_billed: "{is_billed}",
|
|
32678
|
+
is_running: "{is_running}",
|
|
32679
|
+
updated_since: "{updated_since}",
|
|
32680
|
+
from: "{from}",
|
|
32681
|
+
to: "{to}",
|
|
32682
|
+
page: "{page}",
|
|
32683
|
+
per_page: "{per_page}"
|
|
32684
|
+
}
|
|
32685
|
+
},
|
|
32686
|
+
requiredScopes: ["harvest:all"]
|
|
32687
|
+
},
|
|
32688
|
+
{
|
|
32689
|
+
name: "roles.get",
|
|
32690
|
+
class: "read",
|
|
32691
|
+
description: "List user roles defined in the Harvest account.",
|
|
32692
|
+
parameters: {
|
|
32693
|
+
type: "object",
|
|
32694
|
+
properties: {
|
|
32695
|
+
accountId: { type: "string" },
|
|
32696
|
+
page: { type: "integer", minimum: 1 },
|
|
32697
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32698
|
+
},
|
|
32699
|
+
required: ["accountId"]
|
|
32700
|
+
},
|
|
32701
|
+
request: {
|
|
32702
|
+
method: "GET",
|
|
32703
|
+
path: "/roles",
|
|
32704
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32705
|
+
query: { page: "{page}", per_page: "{per_page}" }
|
|
32706
|
+
},
|
|
32707
|
+
requiredScopes: ["harvest:all"]
|
|
32708
|
+
},
|
|
32709
|
+
{
|
|
32710
|
+
name: "users.get",
|
|
32711
|
+
class: "read",
|
|
32712
|
+
description: "List Harvest users in the account.",
|
|
32713
|
+
parameters: {
|
|
32714
|
+
type: "object",
|
|
32715
|
+
properties: {
|
|
32716
|
+
accountId: { type: "string" },
|
|
32717
|
+
is_active: { type: "boolean" },
|
|
32718
|
+
updated_since: { type: "string" },
|
|
32719
|
+
page: { type: "integer", minimum: 1 },
|
|
32720
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32721
|
+
},
|
|
32722
|
+
required: ["accountId"]
|
|
32723
|
+
},
|
|
32724
|
+
request: {
|
|
32725
|
+
method: "GET",
|
|
32726
|
+
path: "/users",
|
|
32727
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32728
|
+
query: {
|
|
32729
|
+
is_active: "{is_active}",
|
|
32730
|
+
updated_since: "{updated_since}",
|
|
32731
|
+
page: "{page}",
|
|
32732
|
+
per_page: "{per_page}"
|
|
32733
|
+
}
|
|
32734
|
+
},
|
|
32735
|
+
requiredScopes: ["harvest:all"]
|
|
32736
|
+
},
|
|
32737
|
+
{
|
|
32738
|
+
name: "reports.uninvoiced",
|
|
32739
|
+
class: "read",
|
|
32740
|
+
description: "Pull the uninvoiced report for a date window \u2014 totals of uninvoiced hours/expenses per project.",
|
|
32741
|
+
parameters: {
|
|
32742
|
+
type: "object",
|
|
32743
|
+
properties: {
|
|
32744
|
+
accountId: { type: "string" },
|
|
32745
|
+
from: { type: "string", description: "Window start date (YYYY-MM-DD)." },
|
|
32746
|
+
to: { type: "string", description: "Window end date (YYYY-MM-DD)." },
|
|
32747
|
+
page: { type: "integer", minimum: 1 },
|
|
32748
|
+
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
32749
|
+
},
|
|
32750
|
+
required: ["accountId", "from", "to"]
|
|
32751
|
+
},
|
|
32752
|
+
request: {
|
|
32753
|
+
method: "GET",
|
|
32754
|
+
path: "/reports/uninvoiced",
|
|
32755
|
+
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
32756
|
+
query: {
|
|
32757
|
+
from: "{from}",
|
|
32758
|
+
to: "{to}",
|
|
32759
|
+
page: "{page}",
|
|
32760
|
+
per_page: "{per_page}"
|
|
32761
|
+
}
|
|
32762
|
+
},
|
|
32763
|
+
requiredScopes: ["harvest:all"]
|
|
32764
|
+
}
|
|
32765
|
+
]
|
|
32766
|
+
});
|
|
32767
|
+
|
|
31768
32768
|
// src/connectors/adapters/helpscout.ts
|
|
31769
32769
|
var conversationParams = {
|
|
31770
32770
|
type: "object",
|
|
@@ -54029,6 +55029,256 @@ var tallyConnector = declarativeRestConnector({
|
|
|
54029
55029
|
]
|
|
54030
55030
|
});
|
|
54031
55031
|
|
|
55032
|
+
// src/connectors/adapters/ticktick.ts
|
|
55033
|
+
var ticktickConnector = declarativeRestConnector({
|
|
55034
|
+
kind: "ticktick",
|
|
55035
|
+
displayName: "TickTick",
|
|
55036
|
+
description: "Create, update, complete, and delete tasks in TickTick.",
|
|
55037
|
+
auth: {
|
|
55038
|
+
kind: "oauth2",
|
|
55039
|
+
authorizationUrl: "https://ticktick.com/oauth/authorize",
|
|
55040
|
+
tokenUrl: "https://ticktick.com/oauth/token",
|
|
55041
|
+
scopes: ["tasks:read", "tasks:write"],
|
|
55042
|
+
clientIdEnv: "TICKTICK_OAUTH_CLIENT_ID",
|
|
55043
|
+
clientSecretEnv: "TICKTICK_OAUTH_CLIENT_SECRET",
|
|
55044
|
+
tokenClientAuthMethod: "client_secret_basic"
|
|
55045
|
+
},
|
|
55046
|
+
category: "other",
|
|
55047
|
+
defaultConsistencyModel: "authoritative",
|
|
55048
|
+
baseUrl: "https://api.ticktick.com/v2",
|
|
55049
|
+
test: { method: "GET", path: "/user" },
|
|
55050
|
+
capabilities: [
|
|
55051
|
+
{
|
|
55052
|
+
name: "tasks.create",
|
|
55053
|
+
class: "mutation",
|
|
55054
|
+
description: "Create a new task in TickTick.",
|
|
55055
|
+
parameters: {
|
|
55056
|
+
type: "object",
|
|
55057
|
+
properties: {
|
|
55058
|
+
title: { type: "string" },
|
|
55059
|
+
projectId: { type: "string" },
|
|
55060
|
+
description: { type: "string" },
|
|
55061
|
+
priority: { type: "integer" },
|
|
55062
|
+
dueDate: { type: "string" }
|
|
55063
|
+
},
|
|
55064
|
+
required: ["title", "projectId"]
|
|
55065
|
+
},
|
|
55066
|
+
request: {
|
|
55067
|
+
method: "POST",
|
|
55068
|
+
path: "/task",
|
|
55069
|
+
body: {
|
|
55070
|
+
title: "{title}",
|
|
55071
|
+
projectId: "{projectId}",
|
|
55072
|
+
description: "{description}",
|
|
55073
|
+
priority: "{priority}",
|
|
55074
|
+
dueDate: "{dueDate}"
|
|
55075
|
+
}
|
|
55076
|
+
},
|
|
55077
|
+
cas: "native-idempotency"
|
|
55078
|
+
},
|
|
55079
|
+
{
|
|
55080
|
+
name: "tasks.update",
|
|
55081
|
+
class: "mutation",
|
|
55082
|
+
description: "Update an existing task in TickTick.",
|
|
55083
|
+
parameters: {
|
|
55084
|
+
type: "object",
|
|
55085
|
+
properties: {
|
|
55086
|
+
taskId: { type: "string" },
|
|
55087
|
+
title: { type: "string" },
|
|
55088
|
+
description: { type: "string" },
|
|
55089
|
+
priority: { type: "integer" },
|
|
55090
|
+
dueDate: { type: "string" }
|
|
55091
|
+
},
|
|
55092
|
+
required: ["taskId"]
|
|
55093
|
+
},
|
|
55094
|
+
request: {
|
|
55095
|
+
method: "POST",
|
|
55096
|
+
path: "/task/{taskId}",
|
|
55097
|
+
body: {
|
|
55098
|
+
title: "{title}",
|
|
55099
|
+
description: "{description}",
|
|
55100
|
+
priority: "{priority}",
|
|
55101
|
+
dueDate: "{dueDate}"
|
|
55102
|
+
}
|
|
55103
|
+
},
|
|
55104
|
+
cas: "optimistic-read-verify"
|
|
55105
|
+
},
|
|
55106
|
+
{
|
|
55107
|
+
name: "tasks.get",
|
|
55108
|
+
class: "read",
|
|
55109
|
+
description: "Retrieve a specific task from TickTick.",
|
|
55110
|
+
parameters: {
|
|
55111
|
+
type: "object",
|
|
55112
|
+
properties: {
|
|
55113
|
+
taskId: { type: "string" }
|
|
55114
|
+
},
|
|
55115
|
+
required: ["taskId"]
|
|
55116
|
+
},
|
|
55117
|
+
request: {
|
|
55118
|
+
method: "GET",
|
|
55119
|
+
path: "/task/{taskId}"
|
|
55120
|
+
}
|
|
55121
|
+
},
|
|
55122
|
+
{
|
|
55123
|
+
name: "tasks.find",
|
|
55124
|
+
class: "read",
|
|
55125
|
+
description: "Find tasks in a TickTick project by query.",
|
|
55126
|
+
parameters: {
|
|
55127
|
+
type: "object",
|
|
55128
|
+
properties: {
|
|
55129
|
+
projectId: { type: "string" },
|
|
55130
|
+
query: { type: "string" },
|
|
55131
|
+
limit: { type: "integer" }
|
|
55132
|
+
},
|
|
55133
|
+
required: ["projectId"]
|
|
55134
|
+
},
|
|
55135
|
+
request: {
|
|
55136
|
+
method: "GET",
|
|
55137
|
+
path: "/project/{projectId}/tasks",
|
|
55138
|
+
query: {
|
|
55139
|
+
q: "{query}",
|
|
55140
|
+
limit: "{limit}"
|
|
55141
|
+
}
|
|
55142
|
+
}
|
|
55143
|
+
},
|
|
55144
|
+
{
|
|
55145
|
+
name: "tasks.complete",
|
|
55146
|
+
class: "mutation",
|
|
55147
|
+
description: "Mark a task as complete in TickTick.",
|
|
55148
|
+
parameters: {
|
|
55149
|
+
type: "object",
|
|
55150
|
+
properties: {
|
|
55151
|
+
taskId: { type: "string" }
|
|
55152
|
+
},
|
|
55153
|
+
required: ["taskId"]
|
|
55154
|
+
},
|
|
55155
|
+
request: {
|
|
55156
|
+
method: "POST",
|
|
55157
|
+
path: "/task/{taskId}/complete"
|
|
55158
|
+
},
|
|
55159
|
+
cas: "optimistic-read-verify"
|
|
55160
|
+
},
|
|
55161
|
+
{
|
|
55162
|
+
name: "tasks.delete",
|
|
55163
|
+
class: "mutation",
|
|
55164
|
+
description: "Delete a task from TickTick.",
|
|
55165
|
+
parameters: {
|
|
55166
|
+
type: "object",
|
|
55167
|
+
properties: {
|
|
55168
|
+
taskId: { type: "string" }
|
|
55169
|
+
},
|
|
55170
|
+
required: ["taskId"]
|
|
55171
|
+
},
|
|
55172
|
+
request: {
|
|
55173
|
+
method: "DELETE",
|
|
55174
|
+
path: "/task/{taskId}"
|
|
55175
|
+
},
|
|
55176
|
+
cas: "optimistic-read-verify"
|
|
55177
|
+
},
|
|
55178
|
+
{
|
|
55179
|
+
name: "projects.get",
|
|
55180
|
+
class: "read",
|
|
55181
|
+
description: "Retrieve a specific project from TickTick.",
|
|
55182
|
+
parameters: {
|
|
55183
|
+
type: "object",
|
|
55184
|
+
properties: {
|
|
55185
|
+
projectId: { type: "string" }
|
|
55186
|
+
},
|
|
55187
|
+
required: ["projectId"]
|
|
55188
|
+
},
|
|
55189
|
+
request: {
|
|
55190
|
+
method: "GET",
|
|
55191
|
+
path: "/project/{projectId}"
|
|
55192
|
+
}
|
|
55193
|
+
},
|
|
55194
|
+
{
|
|
55195
|
+
name: "projects.create",
|
|
55196
|
+
class: "mutation",
|
|
55197
|
+
description: "Create a new project (list) in TickTick.",
|
|
55198
|
+
parameters: {
|
|
55199
|
+
type: "object",
|
|
55200
|
+
properties: {
|
|
55201
|
+
name: { type: "string" },
|
|
55202
|
+
color: { type: "string", description: "Hex color code for the project (optional)." },
|
|
55203
|
+
viewMode: { type: "string", description: "View mode, e.g. 'list', 'kanban', 'timeline' (optional)." },
|
|
55204
|
+
kind: { type: "string", description: "Project kind, e.g. 'TASK' or 'NOTE' (optional)." }
|
|
55205
|
+
},
|
|
55206
|
+
required: ["name"]
|
|
55207
|
+
},
|
|
55208
|
+
request: {
|
|
55209
|
+
method: "POST",
|
|
55210
|
+
path: "/project",
|
|
55211
|
+
body: "args"
|
|
55212
|
+
},
|
|
55213
|
+
cas: "native-idempotency",
|
|
55214
|
+
externalEffect: true
|
|
55215
|
+
},
|
|
55216
|
+
{
|
|
55217
|
+
name: "projects.update",
|
|
55218
|
+
class: "mutation",
|
|
55219
|
+
description: "Update an existing project in TickTick.",
|
|
55220
|
+
parameters: {
|
|
55221
|
+
type: "object",
|
|
55222
|
+
properties: {
|
|
55223
|
+
projectId: { type: "string" },
|
|
55224
|
+
name: { type: "string", description: "New project name (optional)." },
|
|
55225
|
+
color: { type: "string", description: "Hex color code for the project (optional)." },
|
|
55226
|
+
viewMode: { type: "string", description: "View mode (optional)." },
|
|
55227
|
+
kind: { type: "string", description: "Project kind (optional)." }
|
|
55228
|
+
},
|
|
55229
|
+
required: ["projectId"]
|
|
55230
|
+
},
|
|
55231
|
+
request: {
|
|
55232
|
+
method: "POST",
|
|
55233
|
+
path: "/project/{projectId}",
|
|
55234
|
+
body: "args"
|
|
55235
|
+
},
|
|
55236
|
+
cas: "native-idempotency",
|
|
55237
|
+
externalEffect: true
|
|
55238
|
+
},
|
|
55239
|
+
{
|
|
55240
|
+
name: "projects.delete",
|
|
55241
|
+
class: "mutation",
|
|
55242
|
+
description: "Delete a project from TickTick.",
|
|
55243
|
+
parameters: {
|
|
55244
|
+
type: "object",
|
|
55245
|
+
properties: {
|
|
55246
|
+
projectId: { type: "string" }
|
|
55247
|
+
},
|
|
55248
|
+
required: ["projectId"]
|
|
55249
|
+
},
|
|
55250
|
+
request: {
|
|
55251
|
+
method: "DELETE",
|
|
55252
|
+
path: "/project/{projectId}"
|
|
55253
|
+
},
|
|
55254
|
+
cas: "native-idempotency",
|
|
55255
|
+
externalEffect: true
|
|
55256
|
+
},
|
|
55257
|
+
{
|
|
55258
|
+
name: "tasks.move",
|
|
55259
|
+
class: "mutation",
|
|
55260
|
+
description: "Move a task to another project.",
|
|
55261
|
+
parameters: {
|
|
55262
|
+
type: "object",
|
|
55263
|
+
properties: {
|
|
55264
|
+
taskId: { type: "string" },
|
|
55265
|
+
projectId: { type: "string", description: "Destination project ID." }
|
|
55266
|
+
},
|
|
55267
|
+
required: ["taskId", "projectId"]
|
|
55268
|
+
},
|
|
55269
|
+
request: {
|
|
55270
|
+
method: "POST",
|
|
55271
|
+
path: "/task/{taskId}/move",
|
|
55272
|
+
body: {
|
|
55273
|
+
projectId: "{projectId}"
|
|
55274
|
+
}
|
|
55275
|
+
},
|
|
55276
|
+
cas: "native-idempotency",
|
|
55277
|
+
externalEffect: true
|
|
55278
|
+
}
|
|
55279
|
+
]
|
|
55280
|
+
});
|
|
55281
|
+
|
|
54032
55282
|
// src/connectors/adapters/tl-dv.ts
|
|
54033
55283
|
var tlDvConnector = declarativeRestConnector({
|
|
54034
55284
|
kind: "tl-dv",
|
|
@@ -68988,6 +70238,11 @@ var CONNECTOR_ADAPTER_FACTORIES = [
|
|
|
68988
70238
|
defineFactoryAdapter(() => googleTasksConnector, googleOAuthEnvMap),
|
|
68989
70239
|
defineFactoryAdapter(() => googleAnalyticsConnector, googleOAuthEnvMap),
|
|
68990
70240
|
defineFactoryAdapter(() => googleMeetConnector, googleOAuthEnvMap),
|
|
70241
|
+
// Business Profile uses the existing Google OAuth app. Keeping the
|
|
70242
|
+
// credentials as one pair prevents a partial dedicated configuration from
|
|
70243
|
+
// being combined with a shared secret; enable the Business Profile APIs on
|
|
70244
|
+
// that Google Cloud project before connecting an account.
|
|
70245
|
+
defineFactoryAdapter(() => googleMyBusinessConnector, googleOAuthEnvMap),
|
|
68991
70246
|
defineFactoryAdapter(() => googleSearchConsoleConnector, googleOAuthEnvMap),
|
|
68992
70247
|
defineFactoryAdapter(slack, {
|
|
68993
70248
|
clientId: "SLACK_OAUTH_CLIENT_ID",
|
|
@@ -69408,12 +70663,20 @@ var CONNECTOR_ADAPTER_FACTORIES = [
|
|
|
69408
70663
|
clientId: "SHOPIFY_OAUTH_CLIENT_ID",
|
|
69409
70664
|
clientSecret: "SHOPIFY_OAUTH_CLIENT_SECRET"
|
|
69410
70665
|
}),
|
|
70666
|
+
defineFactoryAdapter(() => ebayConnector, {
|
|
70667
|
+
clientId: "EBAY_OAUTH_CLIENT_ID",
|
|
70668
|
+
clientSecret: "EBAY_OAUTH_CLIENT_SECRET"
|
|
70669
|
+
}),
|
|
69411
70670
|
defineFactoryAdapter(() => lemonSqueezyConnector, {}),
|
|
69412
70671
|
defineFactoryAdapter(() => shippoConnector, {}),
|
|
69413
70672
|
defineFactoryAdapter(() => billplzConnector, {}),
|
|
69414
70673
|
defineFactoryAdapter(() => voucheryIoConnector, {}),
|
|
69415
70674
|
defineFactoryAdapter(() => saleorConnector, {}),
|
|
69416
70675
|
defineFactoryAdapter(() => cashfreePaymentsConnector, {}),
|
|
70676
|
+
defineFactoryAdapter(() => harvestConnector, {
|
|
70677
|
+
clientId: "HARVEST_OAUTH_CLIENT_ID",
|
|
70678
|
+
clientSecret: "HARVEST_OAUTH_CLIENT_SECRET"
|
|
70679
|
+
}),
|
|
69417
70680
|
defineFactoryAdapter(() => frontConnector, {
|
|
69418
70681
|
clientId: "FRONT_OAUTH_CLIENT_ID",
|
|
69419
70682
|
clientSecret: "FRONT_OAUTH_CLIENT_SECRET"
|
|
@@ -69463,6 +70726,10 @@ var CONNECTOR_ADAPTER_FACTORIES = [
|
|
|
69463
70726
|
defineFactoryAdapter(() => brazeConnector, {}),
|
|
69464
70727
|
defineFactoryAdapter(() => smartleadConnector, {}),
|
|
69465
70728
|
defineFactoryAdapter(() => lemlistConnector, {}),
|
|
70729
|
+
defineFactoryAdapter(() => ticktickConnector, {
|
|
70730
|
+
clientId: "TICKTICK_OAUTH_CLIENT_ID",
|
|
70731
|
+
clientSecret: "TICKTICK_OAUTH_CLIENT_SECRET"
|
|
70732
|
+
}),
|
|
69466
70733
|
defineFactoryAdapter(() => builtwithConnector, {}),
|
|
69467
70734
|
defineFactoryAdapter(() => fullenrichConnector, {}),
|
|
69468
70735
|
defineFactoryAdapter(() => hunterConnector, {}),
|
|
@@ -72426,353 +73693,6 @@ var bigcommerceConnector = declarativeRestConnector({
|
|
|
72426
73693
|
]
|
|
72427
73694
|
});
|
|
72428
73695
|
|
|
72429
|
-
// src/connectors/adapters/ebay.ts
|
|
72430
|
-
var ebayConnector = declarativeRestConnector({
|
|
72431
|
-
kind: "ebay",
|
|
72432
|
-
displayName: "eBay",
|
|
72433
|
-
description: "Manage eBay seller inventory items and fulfillment orders, and read the connected user identity.",
|
|
72434
|
-
auth: {
|
|
72435
|
-
kind: "oauth2",
|
|
72436
|
-
authorizationUrl: "https://auth.ebay.com/oauth2/authorize",
|
|
72437
|
-
tokenUrl: "https://api.ebay.com/identity/v1/oauth2/token",
|
|
72438
|
-
scopes: [
|
|
72439
|
-
"https://api.ebay.com/oauth/api_scope",
|
|
72440
|
-
"https://api.ebay.com/oauth/api_scope/sell.inventory",
|
|
72441
|
-
"https://api.ebay.com/oauth/api_scope/sell.fulfillment",
|
|
72442
|
-
"https://api.ebay.com/oauth/api_scope/sell.account",
|
|
72443
|
-
"https://api.ebay.com/oauth/api_scope/sell.marketing",
|
|
72444
|
-
"https://api.ebay.com/oauth/api_scope/commerce.identity.readonly"
|
|
72445
|
-
],
|
|
72446
|
-
clientIdEnv: "EBAY_OAUTH_CLIENT_ID",
|
|
72447
|
-
clientSecretEnv: "EBAY_OAUTH_CLIENT_SECRET"
|
|
72448
|
-
},
|
|
72449
|
-
category: "commerce",
|
|
72450
|
-
defaultConsistencyModel: "authoritative",
|
|
72451
|
-
// Production by default; consumers persist `metadata.apiBaseUrl =
|
|
72452
|
-
// "https://api.sandbox.ebay.com"` to route a connection at the sandbox.
|
|
72453
|
-
baseUrl: { metadataKey: "apiBaseUrl", fallback: "https://api.ebay.com" },
|
|
72454
|
-
credentialPlacement: { kind: "bearer" },
|
|
72455
|
-
defaultHeaders: { accept: "application/json" },
|
|
72456
|
-
// The privileges endpoint is the canonical liveness check — cheap, always
|
|
72457
|
-
// available for tokens carrying any sell.* scope, returns the seller's
|
|
72458
|
-
// current selling limits.
|
|
72459
|
-
test: { method: "GET", path: "sell/account/v1/privilege" },
|
|
72460
|
-
capabilities: [
|
|
72461
|
-
{
|
|
72462
|
-
name: "inventory_items.search",
|
|
72463
|
-
class: "read",
|
|
72464
|
-
description: "List inventory items for the connected seller with pagination.",
|
|
72465
|
-
parameters: {
|
|
72466
|
-
type: "object",
|
|
72467
|
-
properties: {
|
|
72468
|
-
limit: { type: "integer", minimum: 1, maximum: 200, description: "Page size (eBay default 25, max 200)." },
|
|
72469
|
-
offset: { type: "integer", minimum: 0, description: "Zero-based offset of the first item to return." }
|
|
72470
|
-
}
|
|
72471
|
-
},
|
|
72472
|
-
request: {
|
|
72473
|
-
method: "GET",
|
|
72474
|
-
path: "sell/inventory/v1/inventory_item",
|
|
72475
|
-
query: {
|
|
72476
|
-
limit: "{limit}",
|
|
72477
|
-
offset: "{offset}"
|
|
72478
|
-
}
|
|
72479
|
-
},
|
|
72480
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72481
|
-
},
|
|
72482
|
-
{
|
|
72483
|
-
name: "inventory_items.get",
|
|
72484
|
-
class: "read",
|
|
72485
|
-
description: "Read a single inventory item by SKU.",
|
|
72486
|
-
parameters: {
|
|
72487
|
-
type: "object",
|
|
72488
|
-
properties: {
|
|
72489
|
-
sku: { type: "string", description: "Seller-defined inventory SKU." }
|
|
72490
|
-
},
|
|
72491
|
-
required: ["sku"]
|
|
72492
|
-
},
|
|
72493
|
-
request: {
|
|
72494
|
-
method: "GET",
|
|
72495
|
-
path: "sell/inventory/v1/inventory_item/{sku}"
|
|
72496
|
-
},
|
|
72497
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72498
|
-
},
|
|
72499
|
-
{
|
|
72500
|
-
name: "inventory_items.upsert",
|
|
72501
|
-
class: "mutation",
|
|
72502
|
-
description: "Create or fully replace an inventory item identified by SKU (eBay PUT semantics are upsert).",
|
|
72503
|
-
parameters: {
|
|
72504
|
-
type: "object",
|
|
72505
|
-
properties: {
|
|
72506
|
-
sku: { type: "string", description: "Seller-defined inventory SKU." },
|
|
72507
|
-
marketplaceId: { type: "string", description: "Marketplace id, e.g. EBAY_US. Defaults to Content-Language en-US." },
|
|
72508
|
-
item: {
|
|
72509
|
-
type: "object",
|
|
72510
|
-
description: "Inventory item payload (product, condition, availability, packageWeightAndSize)."
|
|
72511
|
-
}
|
|
72512
|
-
},
|
|
72513
|
-
required: ["sku", "item"]
|
|
72514
|
-
},
|
|
72515
|
-
request: {
|
|
72516
|
-
method: "PUT",
|
|
72517
|
-
path: "sell/inventory/v1/inventory_item/{sku}",
|
|
72518
|
-
headers: {
|
|
72519
|
-
"content-language": "en-US",
|
|
72520
|
-
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
72521
|
-
},
|
|
72522
|
-
body: "{item}"
|
|
72523
|
-
},
|
|
72524
|
-
cas: "native-idempotency",
|
|
72525
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72526
|
-
},
|
|
72527
|
-
{
|
|
72528
|
-
name: "inventory_items.delete",
|
|
72529
|
-
class: "mutation",
|
|
72530
|
-
description: "Delete an inventory item and all of its offers by SKU.",
|
|
72531
|
-
parameters: {
|
|
72532
|
-
type: "object",
|
|
72533
|
-
properties: {
|
|
72534
|
-
sku: { type: "string" }
|
|
72535
|
-
},
|
|
72536
|
-
required: ["sku"]
|
|
72537
|
-
},
|
|
72538
|
-
request: {
|
|
72539
|
-
method: "DELETE",
|
|
72540
|
-
path: "sell/inventory/v1/inventory_item/{sku}"
|
|
72541
|
-
},
|
|
72542
|
-
cas: "optimistic-read-verify",
|
|
72543
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72544
|
-
},
|
|
72545
|
-
{
|
|
72546
|
-
name: "offers.search",
|
|
72547
|
-
class: "read",
|
|
72548
|
-
description: "List offers (listings) attached to a given inventory SKU with pagination.",
|
|
72549
|
-
parameters: {
|
|
72550
|
-
type: "object",
|
|
72551
|
-
properties: {
|
|
72552
|
-
sku: { type: "string", description: "Inventory SKU whose offers to list." },
|
|
72553
|
-
marketplace_id: { type: "string", description: "Marketplace filter, e.g. EBAY_US." },
|
|
72554
|
-
format: { type: "string", enum: ["FIXED_PRICE", "AUCTION"] },
|
|
72555
|
-
limit: { type: "integer", minimum: 1, maximum: 200 },
|
|
72556
|
-
offset: { type: "integer", minimum: 0 }
|
|
72557
|
-
},
|
|
72558
|
-
required: ["sku"]
|
|
72559
|
-
},
|
|
72560
|
-
request: {
|
|
72561
|
-
method: "GET",
|
|
72562
|
-
path: "sell/inventory/v1/offer",
|
|
72563
|
-
query: {
|
|
72564
|
-
sku: "{sku}",
|
|
72565
|
-
marketplace_id: "{marketplace_id}",
|
|
72566
|
-
format: "{format}",
|
|
72567
|
-
limit: "{limit}",
|
|
72568
|
-
offset: "{offset}"
|
|
72569
|
-
}
|
|
72570
|
-
},
|
|
72571
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72572
|
-
},
|
|
72573
|
-
{
|
|
72574
|
-
name: "offers.publish",
|
|
72575
|
-
class: "mutation",
|
|
72576
|
-
description: "Publish an offer, converting it into an active eBay listing.",
|
|
72577
|
-
parameters: {
|
|
72578
|
-
type: "object",
|
|
72579
|
-
properties: {
|
|
72580
|
-
offerId: { type: "string", description: "Unique identifier of the offer to publish." }
|
|
72581
|
-
},
|
|
72582
|
-
required: ["offerId"]
|
|
72583
|
-
},
|
|
72584
|
-
request: {
|
|
72585
|
-
method: "POST",
|
|
72586
|
-
path: "sell/inventory/v1/offer/{offerId}/publish"
|
|
72587
|
-
},
|
|
72588
|
-
cas: "native-idempotency",
|
|
72589
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72590
|
-
},
|
|
72591
|
-
{
|
|
72592
|
-
name: "orders.search",
|
|
72593
|
-
class: "read",
|
|
72594
|
-
description: "List fulfillment orders for the connected seller with optional filters and pagination.",
|
|
72595
|
-
parameters: {
|
|
72596
|
-
type: "object",
|
|
72597
|
-
properties: {
|
|
72598
|
-
filter: {
|
|
72599
|
-
type: "string",
|
|
72600
|
-
description: 'eBay fulfillment filter expression, e.g. "creationdate:[2026-01-01T00:00:00.000Z..]" or "orderfulfillmentstatus:{NOT_STARTED|IN_PROGRESS}".'
|
|
72601
|
-
},
|
|
72602
|
-
orderIds: { type: "string", description: "Comma-separated list of order ids to fetch." },
|
|
72603
|
-
fieldGroups: { type: "string", description: "Optional response projection, e.g. TAX_BREAKDOWN." },
|
|
72604
|
-
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." },
|
|
72605
|
-
limit: { type: "integer", minimum: 1, maximum: 1e3 },
|
|
72606
|
-
offset: { type: "integer", minimum: 0 }
|
|
72607
|
-
}
|
|
72608
|
-
},
|
|
72609
|
-
request: {
|
|
72610
|
-
method: "GET",
|
|
72611
|
-
path: "sell/fulfillment/v1/order",
|
|
72612
|
-
headers: {
|
|
72613
|
-
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
72614
|
-
},
|
|
72615
|
-
query: {
|
|
72616
|
-
filter: "{filter}",
|
|
72617
|
-
orderIds: "{orderIds}",
|
|
72618
|
-
fieldGroups: "{fieldGroups}",
|
|
72619
|
-
limit: "{limit}",
|
|
72620
|
-
offset: "{offset}"
|
|
72621
|
-
}
|
|
72622
|
-
},
|
|
72623
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
72624
|
-
},
|
|
72625
|
-
{
|
|
72626
|
-
name: "orders.get",
|
|
72627
|
-
class: "read",
|
|
72628
|
-
description: "Read a single fulfillment order by id.",
|
|
72629
|
-
parameters: {
|
|
72630
|
-
type: "object",
|
|
72631
|
-
properties: {
|
|
72632
|
-
orderId: { type: "string" },
|
|
72633
|
-
fieldGroups: { type: "string", description: "Optional response projection, e.g. TAX_BREAKDOWN." },
|
|
72634
|
-
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." }
|
|
72635
|
-
},
|
|
72636
|
-
required: ["orderId"]
|
|
72637
|
-
},
|
|
72638
|
-
request: {
|
|
72639
|
-
method: "GET",
|
|
72640
|
-
path: "sell/fulfillment/v1/order/{orderId}",
|
|
72641
|
-
headers: {
|
|
72642
|
-
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
72643
|
-
},
|
|
72644
|
-
query: {
|
|
72645
|
-
fieldGroups: "{fieldGroups}"
|
|
72646
|
-
}
|
|
72647
|
-
},
|
|
72648
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
72649
|
-
},
|
|
72650
|
-
{
|
|
72651
|
-
name: "orders.ship",
|
|
72652
|
-
class: "mutation",
|
|
72653
|
-
description: "Create a shipping fulfillment for an order \u2014 records carrier, tracking, and the line items shipped.",
|
|
72654
|
-
parameters: {
|
|
72655
|
-
type: "object",
|
|
72656
|
-
properties: {
|
|
72657
|
-
orderId: { type: "string" },
|
|
72658
|
-
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." },
|
|
72659
|
-
fulfillment: {
|
|
72660
|
-
type: "object",
|
|
72661
|
-
description: "Shipping fulfillment payload (lineItems, shippedDate, shippingCarrierCode, trackingNumber)."
|
|
72662
|
-
}
|
|
72663
|
-
},
|
|
72664
|
-
required: ["orderId", "fulfillment"]
|
|
72665
|
-
},
|
|
72666
|
-
request: {
|
|
72667
|
-
method: "POST",
|
|
72668
|
-
path: "sell/fulfillment/v1/order/{orderId}/shipping_fulfillment",
|
|
72669
|
-
headers: {
|
|
72670
|
-
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
72671
|
-
},
|
|
72672
|
-
body: "{fulfillment}"
|
|
72673
|
-
},
|
|
72674
|
-
cas: "native-idempotency",
|
|
72675
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
72676
|
-
},
|
|
72677
|
-
{
|
|
72678
|
-
name: "identity.get",
|
|
72679
|
-
class: "read",
|
|
72680
|
-
description: "Read the connected eBay user identity (account type, registration marketplace, business / individual flags).",
|
|
72681
|
-
parameters: {
|
|
72682
|
-
type: "object",
|
|
72683
|
-
properties: {}
|
|
72684
|
-
},
|
|
72685
|
-
request: {
|
|
72686
|
-
method: "GET",
|
|
72687
|
-
path: "commerce/identity/v1/user/"
|
|
72688
|
-
},
|
|
72689
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/commerce.identity.readonly"]
|
|
72690
|
-
},
|
|
72691
|
-
{
|
|
72692
|
-
name: "inventory.update",
|
|
72693
|
-
class: "mutation",
|
|
72694
|
-
description: "Bulk-update price and/or available quantity for one or more inventory items / offers.",
|
|
72695
|
-
parameters: {
|
|
72696
|
-
type: "object",
|
|
72697
|
-
properties: {
|
|
72698
|
-
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." },
|
|
72699
|
-
requests: {
|
|
72700
|
-
type: "array",
|
|
72701
|
-
description: "eBay PriceQuantity request array. Each entry targets a SKU and/or offerId with new ship-to-locationAvailability / price values.",
|
|
72702
|
-
items: { type: "object" }
|
|
72703
|
-
}
|
|
72704
|
-
},
|
|
72705
|
-
required: ["requests"]
|
|
72706
|
-
},
|
|
72707
|
-
request: {
|
|
72708
|
-
method: "POST",
|
|
72709
|
-
path: "sell/inventory/v1/bulk_update_price_quantity",
|
|
72710
|
-
headers: {
|
|
72711
|
-
"content-language": "en-US",
|
|
72712
|
-
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
72713
|
-
},
|
|
72714
|
-
body: { requests: "{requests}" }
|
|
72715
|
-
},
|
|
72716
|
-
cas: "native-idempotency",
|
|
72717
|
-
externalEffect: true,
|
|
72718
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72719
|
-
},
|
|
72720
|
-
{
|
|
72721
|
-
name: "orders.cancel",
|
|
72722
|
-
class: "mutation",
|
|
72723
|
-
description: "Request order cancellation via the Post-Order Cancellation API. Sellers can request cancellation on unshipped orders.",
|
|
72724
|
-
parameters: {
|
|
72725
|
-
type: "object",
|
|
72726
|
-
properties: {
|
|
72727
|
-
legacyOrderId: {
|
|
72728
|
-
type: "string",
|
|
72729
|
-
description: "eBay legacy (string) order id the cancellation request applies to."
|
|
72730
|
-
},
|
|
72731
|
-
cancelReason: {
|
|
72732
|
-
type: "string",
|
|
72733
|
-
description: "Reason for the cancellation, e.g. OUT_OF_STOCK_OR_CANNOT_FULFILL, BUYER_ASKED_CANCEL, ADDRESS_ISSUES."
|
|
72734
|
-
},
|
|
72735
|
-
marketplaceId: { type: "string", description: "Marketplace id header override, e.g. EBAY_US." }
|
|
72736
|
-
},
|
|
72737
|
-
required: ["legacyOrderId", "cancelReason"]
|
|
72738
|
-
},
|
|
72739
|
-
request: {
|
|
72740
|
-
method: "POST",
|
|
72741
|
-
path: "post-order/v2/cancellation",
|
|
72742
|
-
headers: {
|
|
72743
|
-
"x-ebay-c-marketplace-id": "{marketplaceId}"
|
|
72744
|
-
},
|
|
72745
|
-
body: {
|
|
72746
|
-
legacyOrderId: "{legacyOrderId}",
|
|
72747
|
-
cancelReason: "{cancelReason}"
|
|
72748
|
-
}
|
|
72749
|
-
},
|
|
72750
|
-
cas: "native-idempotency",
|
|
72751
|
-
externalEffect: true,
|
|
72752
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.fulfillment"]
|
|
72753
|
-
},
|
|
72754
|
-
{
|
|
72755
|
-
name: "listing.end",
|
|
72756
|
-
class: "mutation",
|
|
72757
|
-
description: "End an active listing by withdrawing its offer.",
|
|
72758
|
-
parameters: {
|
|
72759
|
-
type: "object",
|
|
72760
|
-
properties: {
|
|
72761
|
-
offerId: { type: "string", description: "Unique identifier of the offer (active listing) to withdraw." }
|
|
72762
|
-
},
|
|
72763
|
-
required: ["offerId"]
|
|
72764
|
-
},
|
|
72765
|
-
request: {
|
|
72766
|
-
method: "POST",
|
|
72767
|
-
path: "sell/inventory/v1/offer/{offerId}/withdraw"
|
|
72768
|
-
},
|
|
72769
|
-
cas: "native-idempotency",
|
|
72770
|
-
externalEffect: true,
|
|
72771
|
-
requiredScopes: ["https://api.ebay.com/oauth/api_scope/sell.inventory"]
|
|
72772
|
-
}
|
|
72773
|
-
]
|
|
72774
|
-
});
|
|
72775
|
-
|
|
72776
73696
|
// src/connectors/adapters/quickzu.ts
|
|
72777
73697
|
var quickzuConnector = declarativeRestConnector({
|
|
72778
73698
|
kind: "quickzu",
|
|
@@ -108073,320 +108993,6 @@ var googleSearchConnector = declarativeRestConnector({
|
|
|
108073
108993
|
]
|
|
108074
108994
|
});
|
|
108075
108995
|
|
|
108076
|
-
// src/connectors/adapters/google-my-business.ts
|
|
108077
|
-
var googleMyBusinessConnector = declarativeRestConnector({
|
|
108078
|
-
kind: "google-my-business",
|
|
108079
|
-
displayName: "Google My Business",
|
|
108080
|
-
description: "Manage Google Business Profile (formerly Google My Business): list accounts and locations, read customer reviews, and post owner replies.",
|
|
108081
|
-
auth: {
|
|
108082
|
-
kind: "oauth2",
|
|
108083
|
-
authorizationUrl: "https://accounts.google.com/o/oauth2/v2/auth",
|
|
108084
|
-
tokenUrl: "https://oauth2.googleapis.com/token",
|
|
108085
|
-
scopes: ["https://www.googleapis.com/auth/business.manage"],
|
|
108086
|
-
clientIdEnv: "GOOGLE_MY_BUSINESS_OAUTH_CLIENT_ID",
|
|
108087
|
-
clientSecretEnv: "GOOGLE_MY_BUSINESS_OAUTH_CLIENT_SECRET"
|
|
108088
|
-
},
|
|
108089
|
-
category: "crm",
|
|
108090
|
-
defaultConsistencyModel: "authoritative",
|
|
108091
|
-
baseUrl: "https://mybusinessaccountmanagement.googleapis.com",
|
|
108092
|
-
test: { method: "GET", path: "/v1/accounts" },
|
|
108093
|
-
capabilities: [
|
|
108094
|
-
{
|
|
108095
|
-
name: "accounts.list",
|
|
108096
|
-
class: "read",
|
|
108097
|
-
description: "List Business Profile accounts the authenticated user owns or co-manages.",
|
|
108098
|
-
parameters: {
|
|
108099
|
-
type: "object",
|
|
108100
|
-
properties: {
|
|
108101
|
-
pageSize: { type: "integer", minimum: 1, maximum: 50 },
|
|
108102
|
-
pageToken: { type: "string" },
|
|
108103
|
-
filter: { type: "string" }
|
|
108104
|
-
},
|
|
108105
|
-
required: []
|
|
108106
|
-
},
|
|
108107
|
-
request: {
|
|
108108
|
-
method: "GET",
|
|
108109
|
-
path: "/v1/accounts",
|
|
108110
|
-
query: {
|
|
108111
|
-
pageSize: "{pageSize}",
|
|
108112
|
-
pageToken: "{pageToken}",
|
|
108113
|
-
filter: "{filter}"
|
|
108114
|
-
}
|
|
108115
|
-
},
|
|
108116
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108117
|
-
},
|
|
108118
|
-
{
|
|
108119
|
-
name: "locations.list",
|
|
108120
|
-
class: "read",
|
|
108121
|
-
description: "List locations under a Business Profile account (Business Information API).",
|
|
108122
|
-
parameters: {
|
|
108123
|
-
type: "object",
|
|
108124
|
-
properties: {
|
|
108125
|
-
accountId: {
|
|
108126
|
-
type: "string",
|
|
108127
|
-
description: "Bare account id (the trailing segment of `accounts/{accountId}`)."
|
|
108128
|
-
},
|
|
108129
|
-
pageSize: { type: "integer", minimum: 1, maximum: 100 },
|
|
108130
|
-
pageToken: { type: "string" },
|
|
108131
|
-
filter: { type: "string" },
|
|
108132
|
-
readMask: {
|
|
108133
|
-
type: "string",
|
|
108134
|
-
description: "Field mask selecting which Location fields to return, e.g. `name,title,storefrontAddress`."
|
|
108135
|
-
}
|
|
108136
|
-
},
|
|
108137
|
-
required: ["accountId", "readMask"]
|
|
108138
|
-
},
|
|
108139
|
-
request: {
|
|
108140
|
-
method: "GET",
|
|
108141
|
-
path: "https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations",
|
|
108142
|
-
query: {
|
|
108143
|
-
pageSize: "{pageSize}",
|
|
108144
|
-
pageToken: "{pageToken}",
|
|
108145
|
-
filter: "{filter}",
|
|
108146
|
-
readMask: "{readMask}"
|
|
108147
|
-
}
|
|
108148
|
-
},
|
|
108149
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108150
|
-
},
|
|
108151
|
-
{
|
|
108152
|
-
name: "reviews.list",
|
|
108153
|
-
class: "read",
|
|
108154
|
-
description: "List customer reviews for a location (legacy v4 endpoint \u2014 Google never migrated reviews onto the v1 split APIs).",
|
|
108155
|
-
parameters: {
|
|
108156
|
-
type: "object",
|
|
108157
|
-
properties: {
|
|
108158
|
-
accountId: { type: "string" },
|
|
108159
|
-
locationId: { type: "string" },
|
|
108160
|
-
pageSize: { type: "integer", minimum: 1, maximum: 50 },
|
|
108161
|
-
pageToken: { type: "string" },
|
|
108162
|
-
orderBy: {
|
|
108163
|
-
type: "string",
|
|
108164
|
-
description: "Sort order, e.g. `updateTime desc` or `rating desc`."
|
|
108165
|
-
}
|
|
108166
|
-
},
|
|
108167
|
-
required: ["accountId", "locationId"]
|
|
108168
|
-
},
|
|
108169
|
-
request: {
|
|
108170
|
-
method: "GET",
|
|
108171
|
-
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews",
|
|
108172
|
-
query: {
|
|
108173
|
-
pageSize: "{pageSize}",
|
|
108174
|
-
pageToken: "{pageToken}",
|
|
108175
|
-
orderBy: "{orderBy}"
|
|
108176
|
-
}
|
|
108177
|
-
},
|
|
108178
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108179
|
-
},
|
|
108180
|
-
{
|
|
108181
|
-
name: "reviews.get",
|
|
108182
|
-
class: "read",
|
|
108183
|
-
description: "Get a single customer review by id.",
|
|
108184
|
-
parameters: {
|
|
108185
|
-
type: "object",
|
|
108186
|
-
properties: {
|
|
108187
|
-
accountId: { type: "string" },
|
|
108188
|
-
locationId: { type: "string" },
|
|
108189
|
-
reviewId: { type: "string" }
|
|
108190
|
-
},
|
|
108191
|
-
required: ["accountId", "locationId", "reviewId"]
|
|
108192
|
-
},
|
|
108193
|
-
request: {
|
|
108194
|
-
method: "GET",
|
|
108195
|
-
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}"
|
|
108196
|
-
},
|
|
108197
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108198
|
-
},
|
|
108199
|
-
{
|
|
108200
|
-
// Mirrors the activepieces `create.reply` action (`createReply`).
|
|
108201
|
-
// The legacy v4 endpoint uses PUT for upsert semantics: posting the
|
|
108202
|
-
// same reply twice replaces (not duplicates) the owner response, which
|
|
108203
|
-
// makes this naturally idempotent on (locationId, reviewId).
|
|
108204
|
-
name: "reviews.reply.create",
|
|
108205
|
-
class: "mutation",
|
|
108206
|
-
description: "Create or replace the owner reply on a customer review (idempotent upsert on the review name).",
|
|
108207
|
-
parameters: {
|
|
108208
|
-
type: "object",
|
|
108209
|
-
properties: {
|
|
108210
|
-
accountId: { type: "string" },
|
|
108211
|
-
locationId: { type: "string" },
|
|
108212
|
-
reviewId: { type: "string" },
|
|
108213
|
-
comment: {
|
|
108214
|
-
type: "string",
|
|
108215
|
-
description: "Reply text, up to 4096 characters.",
|
|
108216
|
-
maxLength: 4096
|
|
108217
|
-
}
|
|
108218
|
-
},
|
|
108219
|
-
required: ["accountId", "locationId", "reviewId", "comment"]
|
|
108220
|
-
},
|
|
108221
|
-
request: {
|
|
108222
|
-
method: "PUT",
|
|
108223
|
-
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply",
|
|
108224
|
-
body: { comment: "{comment}" }
|
|
108225
|
-
},
|
|
108226
|
-
cas: "native-idempotency",
|
|
108227
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108228
|
-
},
|
|
108229
|
-
{
|
|
108230
|
-
name: "reviews.reply.delete",
|
|
108231
|
-
class: "mutation",
|
|
108232
|
-
description: "Delete the owner reply on a customer review.",
|
|
108233
|
-
parameters: {
|
|
108234
|
-
type: "object",
|
|
108235
|
-
properties: {
|
|
108236
|
-
accountId: { type: "string" },
|
|
108237
|
-
locationId: { type: "string" },
|
|
108238
|
-
reviewId: { type: "string" }
|
|
108239
|
-
},
|
|
108240
|
-
required: ["accountId", "locationId", "reviewId"]
|
|
108241
|
-
},
|
|
108242
|
-
request: {
|
|
108243
|
-
method: "DELETE",
|
|
108244
|
-
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/reviews/{reviewId}/reply"
|
|
108245
|
-
},
|
|
108246
|
-
cas: "native-idempotency",
|
|
108247
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108248
|
-
},
|
|
108249
|
-
{
|
|
108250
|
-
// GBP "posts" — short-lived updates that surface on the storefront's
|
|
108251
|
-
// listing. The legacy v4 endpoint is the only published surface; the
|
|
108252
|
-
// Business Posts v1 API was retired in 2022 and Google never produced a
|
|
108253
|
-
// replacement. Repeating a POST produces a duplicate localPost, so the
|
|
108254
|
-
// MutationGuard idempotency-key layer must dedupe above the connector.
|
|
108255
|
-
name: "localPosts.create",
|
|
108256
|
-
class: "mutation",
|
|
108257
|
-
description: "Publish a Google Business Profile local post (status update, offer, event, or call-to-action) on a location.",
|
|
108258
|
-
parameters: {
|
|
108259
|
-
type: "object",
|
|
108260
|
-
properties: {
|
|
108261
|
-
accountId: { type: "string" },
|
|
108262
|
-
locationId: { type: "string" },
|
|
108263
|
-
languageCode: {
|
|
108264
|
-
type: "string",
|
|
108265
|
-
description: 'BCP-47 language code, e.g. "en".'
|
|
108266
|
-
},
|
|
108267
|
-
summary: {
|
|
108268
|
-
type: "string",
|
|
108269
|
-
description: "Post body text (up to 1,500 characters).",
|
|
108270
|
-
maxLength: 1500
|
|
108271
|
-
},
|
|
108272
|
-
topicType: {
|
|
108273
|
-
type: "string",
|
|
108274
|
-
description: "STANDARD | EVENT | OFFER | ALERT."
|
|
108275
|
-
},
|
|
108276
|
-
callToAction: {
|
|
108277
|
-
type: "object",
|
|
108278
|
-
description: 'Optional { actionType, url } block, e.g. { actionType: "LEARN_MORE", url: "https://..." }.'
|
|
108279
|
-
},
|
|
108280
|
-
event: {
|
|
108281
|
-
type: "object",
|
|
108282
|
-
description: "For topicType=EVENT: { title, schedule: { startDate, endDate, ... } }."
|
|
108283
|
-
},
|
|
108284
|
-
offer: {
|
|
108285
|
-
type: "object",
|
|
108286
|
-
description: "For topicType=OFFER: { couponCode, redeemOnlineUrl, termsConditions }."
|
|
108287
|
-
},
|
|
108288
|
-
media: {
|
|
108289
|
-
type: "array",
|
|
108290
|
-
description: "Optional MediaItem list to attach images/video to the post."
|
|
108291
|
-
}
|
|
108292
|
-
},
|
|
108293
|
-
required: ["accountId", "locationId", "languageCode", "summary"]
|
|
108294
|
-
},
|
|
108295
|
-
request: {
|
|
108296
|
-
method: "POST",
|
|
108297
|
-
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/localPosts",
|
|
108298
|
-
body: {
|
|
108299
|
-
languageCode: "{languageCode}",
|
|
108300
|
-
summary: "{summary}",
|
|
108301
|
-
topicType: "{topicType}",
|
|
108302
|
-
callToAction: "{callToAction}",
|
|
108303
|
-
event: "{event}",
|
|
108304
|
-
offer: "{offer}",
|
|
108305
|
-
media: "{media}"
|
|
108306
|
-
}
|
|
108307
|
-
},
|
|
108308
|
-
// GBP localPosts has no requestId / idempotency-key on POST; consecutive
|
|
108309
|
-
// calls produce duplicate posts. MutationGuard's idempotency-key layer
|
|
108310
|
-
// is the only guard.
|
|
108311
|
-
cas: "none",
|
|
108312
|
-
externalEffect: true,
|
|
108313
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108314
|
-
},
|
|
108315
|
-
{
|
|
108316
|
-
name: "localPosts.delete",
|
|
108317
|
-
class: "mutation",
|
|
108318
|
-
description: "Delete a local post from a location. Repeating the call on an already-deleted post yields 404 but is idempotent in effect.",
|
|
108319
|
-
parameters: {
|
|
108320
|
-
type: "object",
|
|
108321
|
-
properties: {
|
|
108322
|
-
accountId: { type: "string" },
|
|
108323
|
-
locationId: { type: "string" },
|
|
108324
|
-
localPostId: { type: "string" }
|
|
108325
|
-
},
|
|
108326
|
-
required: ["accountId", "locationId", "localPostId"]
|
|
108327
|
-
},
|
|
108328
|
-
request: {
|
|
108329
|
-
method: "DELETE",
|
|
108330
|
-
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/localPosts/{localPostId}"
|
|
108331
|
-
},
|
|
108332
|
-
cas: "native-idempotency",
|
|
108333
|
-
externalEffect: true,
|
|
108334
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108335
|
-
},
|
|
108336
|
-
{
|
|
108337
|
-
// GBP "media" — photos/videos on a location's profile. The legacy v4
|
|
108338
|
-
// /media endpoint accepts a MediaItem body with either a sourceUrl
|
|
108339
|
-
// (Google fetches it) or a reference from /media:startUpload (multi-step
|
|
108340
|
-
// resumable upload). We expose the sourceUrl path because it's a single
|
|
108341
|
-
// request the declarative-rest engine can model cleanly; bytestream
|
|
108342
|
-
// upload is a separate hand-rolled adapter when needed.
|
|
108343
|
-
name: "media.create",
|
|
108344
|
-
class: "mutation",
|
|
108345
|
-
description: "Upload a photo or video to a Google Business Profile location via the v4 /media endpoint. Pass a sourceUrl Google can fetch (HTTPS, publicly reachable). For bytestream uploads use the /media:startUpload + PUT bytestream flow instead.",
|
|
108346
|
-
parameters: {
|
|
108347
|
-
type: "object",
|
|
108348
|
-
properties: {
|
|
108349
|
-
accountId: { type: "string" },
|
|
108350
|
-
locationId: { type: "string" },
|
|
108351
|
-
mediaFormat: {
|
|
108352
|
-
type: "string",
|
|
108353
|
-
description: "PHOTO | VIDEO."
|
|
108354
|
-
},
|
|
108355
|
-
locationAssociation: {
|
|
108356
|
-
type: "object",
|
|
108357
|
-
description: 'Where the media attaches, e.g. { category: "EXTERIOR" } or { priceListItemId: "..." }.'
|
|
108358
|
-
},
|
|
108359
|
-
sourceUrl: {
|
|
108360
|
-
type: "string",
|
|
108361
|
-
description: "Public HTTPS URL Google should fetch the media from."
|
|
108362
|
-
},
|
|
108363
|
-
description: {
|
|
108364
|
-
type: "string",
|
|
108365
|
-
description: "Optional caption shown alongside the media."
|
|
108366
|
-
}
|
|
108367
|
-
},
|
|
108368
|
-
required: ["accountId", "locationId", "mediaFormat", "sourceUrl"]
|
|
108369
|
-
},
|
|
108370
|
-
request: {
|
|
108371
|
-
method: "POST",
|
|
108372
|
-
path: "https://mybusiness.googleapis.com/v4/accounts/{accountId}/locations/{locationId}/media",
|
|
108373
|
-
body: {
|
|
108374
|
-
mediaFormat: "{mediaFormat}",
|
|
108375
|
-
locationAssociation: "{locationAssociation}",
|
|
108376
|
-
sourceUrl: "{sourceUrl}",
|
|
108377
|
-
description: "{description}"
|
|
108378
|
-
}
|
|
108379
|
-
},
|
|
108380
|
-
// GBP media POST has no idempotency token; consecutive calls produce
|
|
108381
|
-
// duplicate media items. MutationGuard's idempotency-key layer is the
|
|
108382
|
-
// only guard.
|
|
108383
|
-
cas: "none",
|
|
108384
|
-
externalEffect: true,
|
|
108385
|
-
requiredScopes: ["https://www.googleapis.com/auth/business.manage"]
|
|
108386
|
-
}
|
|
108387
|
-
]
|
|
108388
|
-
});
|
|
108389
|
-
|
|
108390
108996
|
// src/connectors/adapters/greenpt.ts
|
|
108391
108997
|
var greenptConnector = declarativeRestConnector({
|
|
108392
108998
|
kind: "greenpt",
|
|
@@ -109340,344 +109946,6 @@ var hashiCorpVaultConnector = declarativeRestConnector({
|
|
|
109340
109946
|
]
|
|
109341
109947
|
});
|
|
109342
109948
|
|
|
109343
|
-
// src/connectors/adapters/harvest.ts
|
|
109344
|
-
var harvestConnector = declarativeRestConnector({
|
|
109345
|
-
kind: "harvest",
|
|
109346
|
-
displayName: "Harvest",
|
|
109347
|
-
description: "Read Harvest invoices, projects, tasks, clients, estimates, expenses, time entries, roles, users, and run the uninvoiced report.",
|
|
109348
|
-
auth: {
|
|
109349
|
-
kind: "oauth2",
|
|
109350
|
-
authorizationUrl: "https://id.getharvest.com/oauth2/authorize",
|
|
109351
|
-
tokenUrl: "https://id.getharvest.com/api/v2/oauth2/token",
|
|
109352
|
-
scopes: ["harvest:all"],
|
|
109353
|
-
clientIdEnv: "HARVEST_OAUTH_CLIENT_ID",
|
|
109354
|
-
clientSecretEnv: "HARVEST_OAUTH_CLIENT_SECRET"
|
|
109355
|
-
},
|
|
109356
|
-
category: "other",
|
|
109357
|
-
defaultConsistencyModel: "authoritative",
|
|
109358
|
-
baseUrl: "https://api.harvestapp.com/v2",
|
|
109359
|
-
test: {
|
|
109360
|
-
method: "GET",
|
|
109361
|
-
path: "/users/me",
|
|
109362
|
-
headers: { "Harvest-Account-Id": "{accountId}" }
|
|
109363
|
-
},
|
|
109364
|
-
capabilities: [
|
|
109365
|
-
{
|
|
109366
|
-
name: "invoices.get",
|
|
109367
|
-
class: "read",
|
|
109368
|
-
description: "List invoices in a Harvest account, optionally filtered by client/project/state/date window.",
|
|
109369
|
-
parameters: {
|
|
109370
|
-
type: "object",
|
|
109371
|
-
properties: {
|
|
109372
|
-
accountId: { type: "string", description: "Harvest Account ID (sent as the Harvest-Account-Id header)." },
|
|
109373
|
-
client_id: { type: "string" },
|
|
109374
|
-
project_id: { type: "string" },
|
|
109375
|
-
state: { type: "string", enum: ["draft", "open", "paid", "closed"] },
|
|
109376
|
-
updated_since: { type: "string", description: "ISO-8601 timestamp." },
|
|
109377
|
-
from: { type: "string", description: "ISO-8601 date." },
|
|
109378
|
-
to: { type: "string", description: "ISO-8601 date." },
|
|
109379
|
-
page: { type: "integer", minimum: 1 },
|
|
109380
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109381
|
-
},
|
|
109382
|
-
required: ["accountId"]
|
|
109383
|
-
},
|
|
109384
|
-
request: {
|
|
109385
|
-
method: "GET",
|
|
109386
|
-
path: "/invoices",
|
|
109387
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109388
|
-
query: {
|
|
109389
|
-
client_id: "{client_id}",
|
|
109390
|
-
project_id: "{project_id}",
|
|
109391
|
-
state: "{state}",
|
|
109392
|
-
updated_since: "{updated_since}",
|
|
109393
|
-
from: "{from}",
|
|
109394
|
-
to: "{to}",
|
|
109395
|
-
page: "{page}",
|
|
109396
|
-
per_page: "{per_page}"
|
|
109397
|
-
}
|
|
109398
|
-
},
|
|
109399
|
-
requiredScopes: ["harvest:all"]
|
|
109400
|
-
},
|
|
109401
|
-
{
|
|
109402
|
-
name: "projects.get",
|
|
109403
|
-
class: "read",
|
|
109404
|
-
description: "List projects, optionally filtered by client or active state.",
|
|
109405
|
-
parameters: {
|
|
109406
|
-
type: "object",
|
|
109407
|
-
properties: {
|
|
109408
|
-
accountId: { type: "string" },
|
|
109409
|
-
is_active: { type: "boolean" },
|
|
109410
|
-
client_id: { type: "string" },
|
|
109411
|
-
updated_since: { type: "string" },
|
|
109412
|
-
page: { type: "integer", minimum: 1 },
|
|
109413
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109414
|
-
},
|
|
109415
|
-
required: ["accountId"]
|
|
109416
|
-
},
|
|
109417
|
-
request: {
|
|
109418
|
-
method: "GET",
|
|
109419
|
-
path: "/projects",
|
|
109420
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109421
|
-
query: {
|
|
109422
|
-
is_active: "{is_active}",
|
|
109423
|
-
client_id: "{client_id}",
|
|
109424
|
-
updated_since: "{updated_since}",
|
|
109425
|
-
page: "{page}",
|
|
109426
|
-
per_page: "{per_page}"
|
|
109427
|
-
}
|
|
109428
|
-
},
|
|
109429
|
-
requiredScopes: ["harvest:all"]
|
|
109430
|
-
},
|
|
109431
|
-
{
|
|
109432
|
-
name: "tasks.get",
|
|
109433
|
-
class: "read",
|
|
109434
|
-
description: "List billable/non-billable tasks defined on the Harvest account.",
|
|
109435
|
-
parameters: {
|
|
109436
|
-
type: "object",
|
|
109437
|
-
properties: {
|
|
109438
|
-
accountId: { type: "string" },
|
|
109439
|
-
is_active: { type: "boolean" },
|
|
109440
|
-
updated_since: { type: "string" },
|
|
109441
|
-
page: { type: "integer", minimum: 1 },
|
|
109442
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109443
|
-
},
|
|
109444
|
-
required: ["accountId"]
|
|
109445
|
-
},
|
|
109446
|
-
request: {
|
|
109447
|
-
method: "GET",
|
|
109448
|
-
path: "/tasks",
|
|
109449
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109450
|
-
query: {
|
|
109451
|
-
is_active: "{is_active}",
|
|
109452
|
-
updated_since: "{updated_since}",
|
|
109453
|
-
page: "{page}",
|
|
109454
|
-
per_page: "{per_page}"
|
|
109455
|
-
}
|
|
109456
|
-
},
|
|
109457
|
-
requiredScopes: ["harvest:all"]
|
|
109458
|
-
},
|
|
109459
|
-
{
|
|
109460
|
-
name: "clients.get",
|
|
109461
|
-
class: "read",
|
|
109462
|
-
description: "List clients in the Harvest account.",
|
|
109463
|
-
parameters: {
|
|
109464
|
-
type: "object",
|
|
109465
|
-
properties: {
|
|
109466
|
-
accountId: { type: "string" },
|
|
109467
|
-
is_active: { type: "boolean" },
|
|
109468
|
-
updated_since: { type: "string" },
|
|
109469
|
-
page: { type: "integer", minimum: 1 },
|
|
109470
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109471
|
-
},
|
|
109472
|
-
required: ["accountId"]
|
|
109473
|
-
},
|
|
109474
|
-
request: {
|
|
109475
|
-
method: "GET",
|
|
109476
|
-
path: "/clients",
|
|
109477
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109478
|
-
query: {
|
|
109479
|
-
is_active: "{is_active}",
|
|
109480
|
-
updated_since: "{updated_since}",
|
|
109481
|
-
page: "{page}",
|
|
109482
|
-
per_page: "{per_page}"
|
|
109483
|
-
}
|
|
109484
|
-
},
|
|
109485
|
-
requiredScopes: ["harvest:all"]
|
|
109486
|
-
},
|
|
109487
|
-
{
|
|
109488
|
-
name: "estimates.get",
|
|
109489
|
-
class: "read",
|
|
109490
|
-
description: "List estimates, optionally filtered by client/state/updated_since.",
|
|
109491
|
-
parameters: {
|
|
109492
|
-
type: "object",
|
|
109493
|
-
properties: {
|
|
109494
|
-
accountId: { type: "string" },
|
|
109495
|
-
client_id: { type: "string" },
|
|
109496
|
-
state: { type: "string", enum: ["draft", "sent", "accepted", "declined"] },
|
|
109497
|
-
updated_since: { type: "string" },
|
|
109498
|
-
from: { type: "string" },
|
|
109499
|
-
to: { type: "string" },
|
|
109500
|
-
page: { type: "integer", minimum: 1 },
|
|
109501
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109502
|
-
},
|
|
109503
|
-
required: ["accountId"]
|
|
109504
|
-
},
|
|
109505
|
-
request: {
|
|
109506
|
-
method: "GET",
|
|
109507
|
-
path: "/estimates",
|
|
109508
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109509
|
-
query: {
|
|
109510
|
-
client_id: "{client_id}",
|
|
109511
|
-
state: "{state}",
|
|
109512
|
-
updated_since: "{updated_since}",
|
|
109513
|
-
from: "{from}",
|
|
109514
|
-
to: "{to}",
|
|
109515
|
-
page: "{page}",
|
|
109516
|
-
per_page: "{per_page}"
|
|
109517
|
-
}
|
|
109518
|
-
},
|
|
109519
|
-
requiredScopes: ["harvest:all"]
|
|
109520
|
-
},
|
|
109521
|
-
{
|
|
109522
|
-
name: "expenses.get",
|
|
109523
|
-
class: "read",
|
|
109524
|
-
description: "List expenses in the account, with optional user/client/project/billed/date filters.",
|
|
109525
|
-
parameters: {
|
|
109526
|
-
type: "object",
|
|
109527
|
-
properties: {
|
|
109528
|
-
accountId: { type: "string" },
|
|
109529
|
-
user_id: { type: "string" },
|
|
109530
|
-
client_id: { type: "string" },
|
|
109531
|
-
project_id: { type: "string" },
|
|
109532
|
-
is_billed: { type: "boolean" },
|
|
109533
|
-
updated_since: { type: "string" },
|
|
109534
|
-
from: { type: "string" },
|
|
109535
|
-
to: { type: "string" },
|
|
109536
|
-
page: { type: "integer", minimum: 1 },
|
|
109537
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109538
|
-
},
|
|
109539
|
-
required: ["accountId"]
|
|
109540
|
-
},
|
|
109541
|
-
request: {
|
|
109542
|
-
method: "GET",
|
|
109543
|
-
path: "/expenses",
|
|
109544
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109545
|
-
query: {
|
|
109546
|
-
user_id: "{user_id}",
|
|
109547
|
-
client_id: "{client_id}",
|
|
109548
|
-
project_id: "{project_id}",
|
|
109549
|
-
is_billed: "{is_billed}",
|
|
109550
|
-
updated_since: "{updated_since}",
|
|
109551
|
-
from: "{from}",
|
|
109552
|
-
to: "{to}",
|
|
109553
|
-
page: "{page}",
|
|
109554
|
-
per_page: "{per_page}"
|
|
109555
|
-
}
|
|
109556
|
-
},
|
|
109557
|
-
requiredScopes: ["harvest:all"]
|
|
109558
|
-
},
|
|
109559
|
-
{
|
|
109560
|
-
name: "time.entries.get",
|
|
109561
|
-
class: "read",
|
|
109562
|
-
description: "List time entries with optional user/client/project/task/billed/running/date filters.",
|
|
109563
|
-
parameters: {
|
|
109564
|
-
type: "object",
|
|
109565
|
-
properties: {
|
|
109566
|
-
accountId: { type: "string" },
|
|
109567
|
-
user_id: { type: "string" },
|
|
109568
|
-
client_id: { type: "string" },
|
|
109569
|
-
project_id: { type: "string" },
|
|
109570
|
-
task_id: { type: "string" },
|
|
109571
|
-
is_billed: { type: "boolean" },
|
|
109572
|
-
is_running: { type: "boolean" },
|
|
109573
|
-
updated_since: { type: "string" },
|
|
109574
|
-
from: { type: "string" },
|
|
109575
|
-
to: { type: "string" },
|
|
109576
|
-
page: { type: "integer", minimum: 1 },
|
|
109577
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109578
|
-
},
|
|
109579
|
-
required: ["accountId"]
|
|
109580
|
-
},
|
|
109581
|
-
request: {
|
|
109582
|
-
method: "GET",
|
|
109583
|
-
path: "/time_entries",
|
|
109584
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109585
|
-
query: {
|
|
109586
|
-
user_id: "{user_id}",
|
|
109587
|
-
client_id: "{client_id}",
|
|
109588
|
-
project_id: "{project_id}",
|
|
109589
|
-
task_id: "{task_id}",
|
|
109590
|
-
is_billed: "{is_billed}",
|
|
109591
|
-
is_running: "{is_running}",
|
|
109592
|
-
updated_since: "{updated_since}",
|
|
109593
|
-
from: "{from}",
|
|
109594
|
-
to: "{to}",
|
|
109595
|
-
page: "{page}",
|
|
109596
|
-
per_page: "{per_page}"
|
|
109597
|
-
}
|
|
109598
|
-
},
|
|
109599
|
-
requiredScopes: ["harvest:all"]
|
|
109600
|
-
},
|
|
109601
|
-
{
|
|
109602
|
-
name: "roles.get",
|
|
109603
|
-
class: "read",
|
|
109604
|
-
description: "List user roles defined in the Harvest account.",
|
|
109605
|
-
parameters: {
|
|
109606
|
-
type: "object",
|
|
109607
|
-
properties: {
|
|
109608
|
-
accountId: { type: "string" },
|
|
109609
|
-
page: { type: "integer", minimum: 1 },
|
|
109610
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109611
|
-
},
|
|
109612
|
-
required: ["accountId"]
|
|
109613
|
-
},
|
|
109614
|
-
request: {
|
|
109615
|
-
method: "GET",
|
|
109616
|
-
path: "/roles",
|
|
109617
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109618
|
-
query: { page: "{page}", per_page: "{per_page}" }
|
|
109619
|
-
},
|
|
109620
|
-
requiredScopes: ["harvest:all"]
|
|
109621
|
-
},
|
|
109622
|
-
{
|
|
109623
|
-
name: "users.get",
|
|
109624
|
-
class: "read",
|
|
109625
|
-
description: "List Harvest users in the account.",
|
|
109626
|
-
parameters: {
|
|
109627
|
-
type: "object",
|
|
109628
|
-
properties: {
|
|
109629
|
-
accountId: { type: "string" },
|
|
109630
|
-
is_active: { type: "boolean" },
|
|
109631
|
-
updated_since: { type: "string" },
|
|
109632
|
-
page: { type: "integer", minimum: 1 },
|
|
109633
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109634
|
-
},
|
|
109635
|
-
required: ["accountId"]
|
|
109636
|
-
},
|
|
109637
|
-
request: {
|
|
109638
|
-
method: "GET",
|
|
109639
|
-
path: "/users",
|
|
109640
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109641
|
-
query: {
|
|
109642
|
-
is_active: "{is_active}",
|
|
109643
|
-
updated_since: "{updated_since}",
|
|
109644
|
-
page: "{page}",
|
|
109645
|
-
per_page: "{per_page}"
|
|
109646
|
-
}
|
|
109647
|
-
},
|
|
109648
|
-
requiredScopes: ["harvest:all"]
|
|
109649
|
-
},
|
|
109650
|
-
{
|
|
109651
|
-
name: "reports.uninvoiced",
|
|
109652
|
-
class: "read",
|
|
109653
|
-
description: "Pull the uninvoiced report for a date window \u2014 totals of uninvoiced hours/expenses per project.",
|
|
109654
|
-
parameters: {
|
|
109655
|
-
type: "object",
|
|
109656
|
-
properties: {
|
|
109657
|
-
accountId: { type: "string" },
|
|
109658
|
-
from: { type: "string", description: "Window start date (YYYY-MM-DD)." },
|
|
109659
|
-
to: { type: "string", description: "Window end date (YYYY-MM-DD)." },
|
|
109660
|
-
page: { type: "integer", minimum: 1 },
|
|
109661
|
-
per_page: { type: "integer", minimum: 1, maximum: 2e3 }
|
|
109662
|
-
},
|
|
109663
|
-
required: ["accountId", "from", "to"]
|
|
109664
|
-
},
|
|
109665
|
-
request: {
|
|
109666
|
-
method: "GET",
|
|
109667
|
-
path: "/reports/uninvoiced",
|
|
109668
|
-
headers: { "Harvest-Account-Id": "{accountId}" },
|
|
109669
|
-
query: {
|
|
109670
|
-
from: "{from}",
|
|
109671
|
-
to: "{to}",
|
|
109672
|
-
page: "{page}",
|
|
109673
|
-
per_page: "{per_page}"
|
|
109674
|
-
}
|
|
109675
|
-
},
|
|
109676
|
-
requiredScopes: ["harvest:all"]
|
|
109677
|
-
}
|
|
109678
|
-
]
|
|
109679
|
-
});
|
|
109680
|
-
|
|
109681
109949
|
// src/connectors/adapters/heymarket-sms.ts
|
|
109682
109950
|
var heymarketSmsConnector = declarativeRestConnector({
|
|
109683
109951
|
kind: "heymarket-sms",
|
|
@@ -134848,255 +135116,6 @@ var talkableConnector = declarativeRestConnector({
|
|
|
134848
135116
|
]
|
|
134849
135117
|
});
|
|
134850
135118
|
|
|
134851
|
-
// src/connectors/adapters/ticktick.ts
|
|
134852
|
-
var ticktickConnector = declarativeRestConnector({
|
|
134853
|
-
kind: "ticktick",
|
|
134854
|
-
displayName: "TickTick",
|
|
134855
|
-
description: "Create, update, complete, and delete tasks in TickTick.",
|
|
134856
|
-
auth: {
|
|
134857
|
-
kind: "oauth2",
|
|
134858
|
-
authorizationUrl: "https://ticktick.com/oauth/authorize",
|
|
134859
|
-
tokenUrl: "https://ticktick.com/oauth/token",
|
|
134860
|
-
scopes: ["tasks:read", "tasks:write"],
|
|
134861
|
-
clientIdEnv: "TICKTICK_OAUTH_CLIENT_ID",
|
|
134862
|
-
clientSecretEnv: "TICKTICK_OAUTH_CLIENT_SECRET"
|
|
134863
|
-
},
|
|
134864
|
-
category: "other",
|
|
134865
|
-
defaultConsistencyModel: "authoritative",
|
|
134866
|
-
baseUrl: "https://api.ticktick.com/v2",
|
|
134867
|
-
test: { method: "GET", path: "/user" },
|
|
134868
|
-
capabilities: [
|
|
134869
|
-
{
|
|
134870
|
-
name: "tasks.create",
|
|
134871
|
-
class: "mutation",
|
|
134872
|
-
description: "Create a new task in TickTick.",
|
|
134873
|
-
parameters: {
|
|
134874
|
-
type: "object",
|
|
134875
|
-
properties: {
|
|
134876
|
-
title: { type: "string" },
|
|
134877
|
-
projectId: { type: "string" },
|
|
134878
|
-
description: { type: "string" },
|
|
134879
|
-
priority: { type: "integer" },
|
|
134880
|
-
dueDate: { type: "string" }
|
|
134881
|
-
},
|
|
134882
|
-
required: ["title", "projectId"]
|
|
134883
|
-
},
|
|
134884
|
-
request: {
|
|
134885
|
-
method: "POST",
|
|
134886
|
-
path: "/task",
|
|
134887
|
-
body: {
|
|
134888
|
-
title: "{title}",
|
|
134889
|
-
projectId: "{projectId}",
|
|
134890
|
-
description: "{description}",
|
|
134891
|
-
priority: "{priority}",
|
|
134892
|
-
dueDate: "{dueDate}"
|
|
134893
|
-
}
|
|
134894
|
-
},
|
|
134895
|
-
cas: "native-idempotency"
|
|
134896
|
-
},
|
|
134897
|
-
{
|
|
134898
|
-
name: "tasks.update",
|
|
134899
|
-
class: "mutation",
|
|
134900
|
-
description: "Update an existing task in TickTick.",
|
|
134901
|
-
parameters: {
|
|
134902
|
-
type: "object",
|
|
134903
|
-
properties: {
|
|
134904
|
-
taskId: { type: "string" },
|
|
134905
|
-
title: { type: "string" },
|
|
134906
|
-
description: { type: "string" },
|
|
134907
|
-
priority: { type: "integer" },
|
|
134908
|
-
dueDate: { type: "string" }
|
|
134909
|
-
},
|
|
134910
|
-
required: ["taskId"]
|
|
134911
|
-
},
|
|
134912
|
-
request: {
|
|
134913
|
-
method: "POST",
|
|
134914
|
-
path: "/task/{taskId}",
|
|
134915
|
-
body: {
|
|
134916
|
-
title: "{title}",
|
|
134917
|
-
description: "{description}",
|
|
134918
|
-
priority: "{priority}",
|
|
134919
|
-
dueDate: "{dueDate}"
|
|
134920
|
-
}
|
|
134921
|
-
},
|
|
134922
|
-
cas: "optimistic-read-verify"
|
|
134923
|
-
},
|
|
134924
|
-
{
|
|
134925
|
-
name: "tasks.get",
|
|
134926
|
-
class: "read",
|
|
134927
|
-
description: "Retrieve a specific task from TickTick.",
|
|
134928
|
-
parameters: {
|
|
134929
|
-
type: "object",
|
|
134930
|
-
properties: {
|
|
134931
|
-
taskId: { type: "string" }
|
|
134932
|
-
},
|
|
134933
|
-
required: ["taskId"]
|
|
134934
|
-
},
|
|
134935
|
-
request: {
|
|
134936
|
-
method: "GET",
|
|
134937
|
-
path: "/task/{taskId}"
|
|
134938
|
-
}
|
|
134939
|
-
},
|
|
134940
|
-
{
|
|
134941
|
-
name: "tasks.find",
|
|
134942
|
-
class: "read",
|
|
134943
|
-
description: "Find tasks in a TickTick project by query.",
|
|
134944
|
-
parameters: {
|
|
134945
|
-
type: "object",
|
|
134946
|
-
properties: {
|
|
134947
|
-
projectId: { type: "string" },
|
|
134948
|
-
query: { type: "string" },
|
|
134949
|
-
limit: { type: "integer" }
|
|
134950
|
-
},
|
|
134951
|
-
required: ["projectId"]
|
|
134952
|
-
},
|
|
134953
|
-
request: {
|
|
134954
|
-
method: "GET",
|
|
134955
|
-
path: "/project/{projectId}/tasks",
|
|
134956
|
-
query: {
|
|
134957
|
-
q: "{query}",
|
|
134958
|
-
limit: "{limit}"
|
|
134959
|
-
}
|
|
134960
|
-
}
|
|
134961
|
-
},
|
|
134962
|
-
{
|
|
134963
|
-
name: "tasks.complete",
|
|
134964
|
-
class: "mutation",
|
|
134965
|
-
description: "Mark a task as complete in TickTick.",
|
|
134966
|
-
parameters: {
|
|
134967
|
-
type: "object",
|
|
134968
|
-
properties: {
|
|
134969
|
-
taskId: { type: "string" }
|
|
134970
|
-
},
|
|
134971
|
-
required: ["taskId"]
|
|
134972
|
-
},
|
|
134973
|
-
request: {
|
|
134974
|
-
method: "POST",
|
|
134975
|
-
path: "/task/{taskId}/complete"
|
|
134976
|
-
},
|
|
134977
|
-
cas: "optimistic-read-verify"
|
|
134978
|
-
},
|
|
134979
|
-
{
|
|
134980
|
-
name: "tasks.delete",
|
|
134981
|
-
class: "mutation",
|
|
134982
|
-
description: "Delete a task from TickTick.",
|
|
134983
|
-
parameters: {
|
|
134984
|
-
type: "object",
|
|
134985
|
-
properties: {
|
|
134986
|
-
taskId: { type: "string" }
|
|
134987
|
-
},
|
|
134988
|
-
required: ["taskId"]
|
|
134989
|
-
},
|
|
134990
|
-
request: {
|
|
134991
|
-
method: "DELETE",
|
|
134992
|
-
path: "/task/{taskId}"
|
|
134993
|
-
},
|
|
134994
|
-
cas: "optimistic-read-verify"
|
|
134995
|
-
},
|
|
134996
|
-
{
|
|
134997
|
-
name: "projects.get",
|
|
134998
|
-
class: "read",
|
|
134999
|
-
description: "Retrieve a specific project from TickTick.",
|
|
135000
|
-
parameters: {
|
|
135001
|
-
type: "object",
|
|
135002
|
-
properties: {
|
|
135003
|
-
projectId: { type: "string" }
|
|
135004
|
-
},
|
|
135005
|
-
required: ["projectId"]
|
|
135006
|
-
},
|
|
135007
|
-
request: {
|
|
135008
|
-
method: "GET",
|
|
135009
|
-
path: "/project/{projectId}"
|
|
135010
|
-
}
|
|
135011
|
-
},
|
|
135012
|
-
{
|
|
135013
|
-
name: "projects.create",
|
|
135014
|
-
class: "mutation",
|
|
135015
|
-
description: "Create a new project (list) in TickTick.",
|
|
135016
|
-
parameters: {
|
|
135017
|
-
type: "object",
|
|
135018
|
-
properties: {
|
|
135019
|
-
name: { type: "string" },
|
|
135020
|
-
color: { type: "string", description: "Hex color code for the project (optional)." },
|
|
135021
|
-
viewMode: { type: "string", description: "View mode, e.g. 'list', 'kanban', 'timeline' (optional)." },
|
|
135022
|
-
kind: { type: "string", description: "Project kind, e.g. 'TASK' or 'NOTE' (optional)." }
|
|
135023
|
-
},
|
|
135024
|
-
required: ["name"]
|
|
135025
|
-
},
|
|
135026
|
-
request: {
|
|
135027
|
-
method: "POST",
|
|
135028
|
-
path: "/project",
|
|
135029
|
-
body: "args"
|
|
135030
|
-
},
|
|
135031
|
-
cas: "native-idempotency",
|
|
135032
|
-
externalEffect: true
|
|
135033
|
-
},
|
|
135034
|
-
{
|
|
135035
|
-
name: "projects.update",
|
|
135036
|
-
class: "mutation",
|
|
135037
|
-
description: "Update an existing project in TickTick.",
|
|
135038
|
-
parameters: {
|
|
135039
|
-
type: "object",
|
|
135040
|
-
properties: {
|
|
135041
|
-
projectId: { type: "string" },
|
|
135042
|
-
name: { type: "string", description: "New project name (optional)." },
|
|
135043
|
-
color: { type: "string", description: "Hex color code for the project (optional)." },
|
|
135044
|
-
viewMode: { type: "string", description: "View mode (optional)." },
|
|
135045
|
-
kind: { type: "string", description: "Project kind (optional)." }
|
|
135046
|
-
},
|
|
135047
|
-
required: ["projectId"]
|
|
135048
|
-
},
|
|
135049
|
-
request: {
|
|
135050
|
-
method: "POST",
|
|
135051
|
-
path: "/project/{projectId}",
|
|
135052
|
-
body: "args"
|
|
135053
|
-
},
|
|
135054
|
-
cas: "native-idempotency",
|
|
135055
|
-
externalEffect: true
|
|
135056
|
-
},
|
|
135057
|
-
{
|
|
135058
|
-
name: "projects.delete",
|
|
135059
|
-
class: "mutation",
|
|
135060
|
-
description: "Delete a project from TickTick.",
|
|
135061
|
-
parameters: {
|
|
135062
|
-
type: "object",
|
|
135063
|
-
properties: {
|
|
135064
|
-
projectId: { type: "string" }
|
|
135065
|
-
},
|
|
135066
|
-
required: ["projectId"]
|
|
135067
|
-
},
|
|
135068
|
-
request: {
|
|
135069
|
-
method: "DELETE",
|
|
135070
|
-
path: "/project/{projectId}"
|
|
135071
|
-
},
|
|
135072
|
-
cas: "native-idempotency",
|
|
135073
|
-
externalEffect: true
|
|
135074
|
-
},
|
|
135075
|
-
{
|
|
135076
|
-
name: "tasks.move",
|
|
135077
|
-
class: "mutation",
|
|
135078
|
-
description: "Move a task to another project.",
|
|
135079
|
-
parameters: {
|
|
135080
|
-
type: "object",
|
|
135081
|
-
properties: {
|
|
135082
|
-
taskId: { type: "string" },
|
|
135083
|
-
projectId: { type: "string", description: "Destination project ID." }
|
|
135084
|
-
},
|
|
135085
|
-
required: ["taskId", "projectId"]
|
|
135086
|
-
},
|
|
135087
|
-
request: {
|
|
135088
|
-
method: "POST",
|
|
135089
|
-
path: "/task/{taskId}/move",
|
|
135090
|
-
body: {
|
|
135091
|
-
projectId: "{projectId}"
|
|
135092
|
-
}
|
|
135093
|
-
},
|
|
135094
|
-
cas: "native-idempotency",
|
|
135095
|
-
externalEffect: true
|
|
135096
|
-
}
|
|
135097
|
-
]
|
|
135098
|
-
});
|
|
135099
|
-
|
|
135100
135119
|
// src/connectors/adapters/teable.ts
|
|
135101
135120
|
var teableConnector = declarativeRestConnector({
|
|
135102
135121
|
kind: "teable",
|
|
@@ -146165,6 +146184,7 @@ export {
|
|
|
146165
146184
|
docusignConnector,
|
|
146166
146185
|
dialpadConnector,
|
|
146167
146186
|
dropboxConnector,
|
|
146187
|
+
ebayConnector,
|
|
146168
146188
|
etsyConnector,
|
|
146169
146189
|
fathomConnector,
|
|
146170
146190
|
fireberryConnector,
|
|
@@ -146200,6 +146220,7 @@ export {
|
|
|
146200
146220
|
googleDrive,
|
|
146201
146221
|
googleForms,
|
|
146202
146222
|
googleMeetConnector,
|
|
146223
|
+
googleMyBusinessConnector,
|
|
146203
146224
|
googleSearchConsoleConnector,
|
|
146204
146225
|
googleSheets,
|
|
146205
146226
|
googleSlidesConnector,
|
|
@@ -146207,6 +146228,7 @@ export {
|
|
|
146207
146228
|
googlechatConnector,
|
|
146208
146229
|
granolaConnector,
|
|
146209
146230
|
hellosign,
|
|
146231
|
+
harvestConnector,
|
|
146210
146232
|
helpscoutConnector,
|
|
146211
146233
|
hubspot,
|
|
146212
146234
|
httpConnector,
|
|
@@ -146287,6 +146309,7 @@ export {
|
|
|
146287
146309
|
squareConnector,
|
|
146288
146310
|
stripePackConnector,
|
|
146289
146311
|
tallyConnector,
|
|
146312
|
+
ticktickConnector,
|
|
146290
146313
|
tlDvConnector,
|
|
146291
146314
|
todoistConnector,
|
|
146292
146315
|
trelloConnector,
|
|
@@ -146360,7 +146383,6 @@ export {
|
|
|
146360
146383
|
facebookPagesConnector,
|
|
146361
146384
|
gustoConnector,
|
|
146362
146385
|
bigcommerceConnector,
|
|
146363
|
-
ebayConnector,
|
|
146364
146386
|
quickzuConnector,
|
|
146365
146387
|
zagomailConnector,
|
|
146366
146388
|
zendeskSellConnector,
|
|
@@ -146504,14 +146526,12 @@ export {
|
|
|
146504
146526
|
ghostcmsConnector,
|
|
146505
146527
|
gistlyConnector,
|
|
146506
146528
|
googleSearchConnector,
|
|
146507
|
-
googleMyBusinessConnector,
|
|
146508
146529
|
greenptConnector,
|
|
146509
146530
|
greipConnector,
|
|
146510
146531
|
guideliteConnector,
|
|
146511
146532
|
hastewireConnector,
|
|
146512
146533
|
heygenConnector,
|
|
146513
146534
|
hashiCorpVaultConnector,
|
|
146514
|
-
harvestConnector,
|
|
146515
146535
|
heymarketSmsConnector,
|
|
146516
146536
|
housecallProConnector,
|
|
146517
146537
|
influencersClubConnector,
|
|
@@ -146653,7 +146673,6 @@ export {
|
|
|
146653
146673
|
systemeIoConnector,
|
|
146654
146674
|
tableauConnector,
|
|
146655
146675
|
talkableConnector,
|
|
146656
|
-
ticktickConnector,
|
|
146657
146676
|
teableConnector,
|
|
146658
146677
|
telnyxConnector,
|
|
146659
146678
|
tenzoConnector,
|
|
@@ -146722,4 +146741,4 @@ export {
|
|
|
146722
146741
|
demandbaseConnector,
|
|
146723
146742
|
adapters_exports
|
|
146724
146743
|
};
|
|
146725
|
-
//# sourceMappingURL=chunk-
|
|
146744
|
+
//# sourceMappingURL=chunk-GLOAH446.js.map
|