@tangle-network/agent-integrations 0.53.35 → 0.53.37
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-N4KK3J7U.js → chunk-E3CAVV2V.js} +1280 -1260
- package/dist/{chunk-N4KK3J7U.js.map → chunk-E3CAVV2V.js.map} +1 -1
- package/dist/{chunk-ANWNXGVV.js → chunk-EKSAOR2I.js} +2 -2
- package/dist/{chunk-XGL345YX.js → chunk-JR2RWYQO.js} +2 -2
- package/dist/{chunk-BVHX2E5X.js → chunk-LAD6KGK4.js} +53 -22
- package/dist/chunk-LAD6KGK4.js.map +1 -0
- package/dist/{chunk-FK4ENHCP.js → chunk-TP4MD4PD.js} +2 -2
- package/dist/{chunk-JXFPIZ3O.js → chunk-WE7SQ7PB.js} +18 -4
- package/dist/chunk-WE7SQ7PB.js.map +1 -0
- package/dist/{chunk-2IU335WP.js → chunk-YEZEIQ6U.js} +23 -4
- package/dist/chunk-YEZEIQ6U.js.map +1 -0
- package/dist/{chunk-GGKD2W6H.js → chunk-Z3GB2P2B.js} +4 -2
- package/dist/chunk-Z3GB2P2B.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 +6 -3
- package/dist/connectors/adapters/index.js +2 -2
- package/dist/connectors/index.d.ts +14 -4
- package/dist/connectors/index.js +6 -4
- package/dist/{consumer-DV3XEumb.d.ts → consumer-UnsjK9iM.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-Cx53j2Xp.d.ts} +1 -1
- package/dist/coverage-catalog.d.ts +2 -2
- package/dist/{importers-B7sdp2Ke.d.ts → importers-YLXwPCz_.d.ts} +1 -1
- package/dist/index.d.ts +9 -9
- package/dist/index.js +11 -9
- 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--7mgjNkq.d.ts} +1 -1
- package/dist/{types-C1rgdXiP.d.ts → types-qFsboS2G.d.ts} +16 -1
- package/docs/adapter-triage.md +6 -4
- package/package.json +1 -1
- package/dist/chunk-2IU335WP.js.map +0 -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-ANWNXGVV.js.map → chunk-EKSAOR2I.js.map} +0 -0
- /package/dist/{chunk-XGL345YX.js.map → chunk-JR2RWYQO.js.map} +0 -0
- /package/dist/{chunk-FK4ENHCP.js.map → chunk-TP4MD4PD.js.map} +0 -0
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
TangleIdentityUnreachableError,
|
|
15
15
|
createTangleIdentityClient,
|
|
16
16
|
tangleIdentity
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-WE7SQ7PB.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, {}),
|
|
@@ -70196,6 +71463,7 @@ function signHeaders(creds, body, idempotencyKey) {
|
|
|
70196
71463
|
|
|
70197
71464
|
// src/connectors/adapters/stripe-webhook-receiver.ts
|
|
70198
71465
|
var stripeWebhookReceiverConnector = {
|
|
71466
|
+
inboundOnly: true,
|
|
70199
71467
|
manifest: {
|
|
70200
71468
|
kind: "stripe",
|
|
70201
71469
|
displayName: "Stripe (inbound events)",
|
|
@@ -72426,353 +73694,6 @@ var bigcommerceConnector = declarativeRestConnector({
|
|
|
72426
73694
|
]
|
|
72427
73695
|
});
|
|
72428
73696
|
|
|
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
73697
|
// src/connectors/adapters/quickzu.ts
|
|
72777
73698
|
var quickzuConnector = declarativeRestConnector({
|
|
72778
73699
|
kind: "quickzu",
|
|
@@ -108073,320 +108994,6 @@ var googleSearchConnector = declarativeRestConnector({
|
|
|
108073
108994
|
]
|
|
108074
108995
|
});
|
|
108075
108996
|
|
|
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
108997
|
// src/connectors/adapters/greenpt.ts
|
|
108391
108998
|
var greenptConnector = declarativeRestConnector({
|
|
108392
108999
|
kind: "greenpt",
|
|
@@ -109340,344 +109947,6 @@ var hashiCorpVaultConnector = declarativeRestConnector({
|
|
|
109340
109947
|
]
|
|
109341
109948
|
});
|
|
109342
109949
|
|
|
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
109950
|
// src/connectors/adapters/heymarket-sms.ts
|
|
109682
109951
|
var heymarketSmsConnector = declarativeRestConnector({
|
|
109683
109952
|
kind: "heymarket-sms",
|
|
@@ -134848,255 +135117,6 @@ var talkableConnector = declarativeRestConnector({
|
|
|
134848
135117
|
]
|
|
134849
135118
|
});
|
|
134850
135119
|
|
|
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
135120
|
// src/connectors/adapters/teable.ts
|
|
135101
135121
|
var teableConnector = declarativeRestConnector({
|
|
135102
135122
|
kind: "teable",
|
|
@@ -146069,6 +146089,12 @@ var demandbaseConnector = declarativeRestConnector({
|
|
|
146069
146089
|
});
|
|
146070
146090
|
|
|
146071
146091
|
export {
|
|
146092
|
+
InMemoryOAuthFlowStore,
|
|
146093
|
+
startOAuthFlow,
|
|
146094
|
+
consumePendingFlow,
|
|
146095
|
+
exchangeAuthorizationCode,
|
|
146096
|
+
refreshAccessToken,
|
|
146097
|
+
_resetPendingFlowsForTests,
|
|
146072
146098
|
declarativeRestConnector,
|
|
146073
146099
|
oktaConnector,
|
|
146074
146100
|
clientCredentialsRestConnector,
|
|
@@ -146165,6 +146191,7 @@ export {
|
|
|
146165
146191
|
docusignConnector,
|
|
146166
146192
|
dialpadConnector,
|
|
146167
146193
|
dropboxConnector,
|
|
146194
|
+
ebayConnector,
|
|
146168
146195
|
etsyConnector,
|
|
146169
146196
|
fathomConnector,
|
|
146170
146197
|
fireberryConnector,
|
|
@@ -146177,12 +146204,6 @@ export {
|
|
|
146177
146204
|
freshdeskConnector,
|
|
146178
146205
|
freshsalesConnector,
|
|
146179
146206
|
frontConnector,
|
|
146180
|
-
InMemoryOAuthFlowStore,
|
|
146181
|
-
startOAuthFlow,
|
|
146182
|
-
consumePendingFlow,
|
|
146183
|
-
exchangeAuthorizationCode,
|
|
146184
|
-
refreshAccessToken,
|
|
146185
|
-
_resetPendingFlowsForTests,
|
|
146186
146207
|
googleErrorReason,
|
|
146187
146208
|
classifyGoogleReason,
|
|
146188
146209
|
classifyGoogleError,
|
|
@@ -146200,6 +146221,7 @@ export {
|
|
|
146200
146221
|
googleDrive,
|
|
146201
146222
|
googleForms,
|
|
146202
146223
|
googleMeetConnector,
|
|
146224
|
+
googleMyBusinessConnector,
|
|
146203
146225
|
googleSearchConsoleConnector,
|
|
146204
146226
|
googleSheets,
|
|
146205
146227
|
googleSlidesConnector,
|
|
@@ -146207,6 +146229,7 @@ export {
|
|
|
146207
146229
|
googlechatConnector,
|
|
146208
146230
|
granolaConnector,
|
|
146209
146231
|
hellosign,
|
|
146232
|
+
harvestConnector,
|
|
146210
146233
|
helpscoutConnector,
|
|
146211
146234
|
hubspot,
|
|
146212
146235
|
httpConnector,
|
|
@@ -146287,6 +146310,7 @@ export {
|
|
|
146287
146310
|
squareConnector,
|
|
146288
146311
|
stripePackConnector,
|
|
146289
146312
|
tallyConnector,
|
|
146313
|
+
ticktickConnector,
|
|
146290
146314
|
tlDvConnector,
|
|
146291
146315
|
todoistConnector,
|
|
146292
146316
|
trelloConnector,
|
|
@@ -146360,7 +146384,6 @@ export {
|
|
|
146360
146384
|
facebookPagesConnector,
|
|
146361
146385
|
gustoConnector,
|
|
146362
146386
|
bigcommerceConnector,
|
|
146363
|
-
ebayConnector,
|
|
146364
146387
|
quickzuConnector,
|
|
146365
146388
|
zagomailConnector,
|
|
146366
146389
|
zendeskSellConnector,
|
|
@@ -146504,14 +146527,12 @@ export {
|
|
|
146504
146527
|
ghostcmsConnector,
|
|
146505
146528
|
gistlyConnector,
|
|
146506
146529
|
googleSearchConnector,
|
|
146507
|
-
googleMyBusinessConnector,
|
|
146508
146530
|
greenptConnector,
|
|
146509
146531
|
greipConnector,
|
|
146510
146532
|
guideliteConnector,
|
|
146511
146533
|
hastewireConnector,
|
|
146512
146534
|
heygenConnector,
|
|
146513
146535
|
hashiCorpVaultConnector,
|
|
146514
|
-
harvestConnector,
|
|
146515
146536
|
heymarketSmsConnector,
|
|
146516
146537
|
housecallProConnector,
|
|
146517
146538
|
influencersClubConnector,
|
|
@@ -146653,7 +146674,6 @@ export {
|
|
|
146653
146674
|
systemeIoConnector,
|
|
146654
146675
|
tableauConnector,
|
|
146655
146676
|
talkableConnector,
|
|
146656
|
-
ticktickConnector,
|
|
146657
146677
|
teableConnector,
|
|
146658
146678
|
telnyxConnector,
|
|
146659
146679
|
tenzoConnector,
|
|
@@ -146722,4 +146742,4 @@ export {
|
|
|
146722
146742
|
demandbaseConnector,
|
|
146723
146743
|
adapters_exports
|
|
146724
146744
|
};
|
|
146725
|
-
//# sourceMappingURL=chunk-
|
|
146745
|
+
//# sourceMappingURL=chunk-E3CAVV2V.js.map
|