hostinger-api-mcp 1.45.5 → 1.46.1
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/README.md +58 -3
- package/gemini-extension.json +1 -1
- package/package.json +1 -1
- package/server.json +2 -2
- package/src/core/runtime.js +1 -1
- package/src/core/runtime.ts +1 -1
- package/src/core/tools/all.js +193 -1
- package/src/core/tools/all.ts +193 -1
- package/src/core/tools/ecommerce.js +1 -1
- package/src/core/tools/ecommerce.ts +1 -1
- package/src/core/tools/reach.js +192 -0
- package/src/core/tools/reach.ts +192 -0
- package/src/servers/agency-hosting.js +1 -1
- package/src/servers/agency-hosting.ts +1 -1
- package/src/servers/all.js +1 -1
- package/src/servers/all.ts +1 -1
- package/src/servers/billing.js +1 -1
- package/src/servers/billing.ts +1 -1
- package/src/servers/dns.js +1 -1
- package/src/servers/dns.ts +1 -1
- package/src/servers/domains.js +1 -1
- package/src/servers/domains.ts +1 -1
- package/src/servers/ecommerce.js +1 -1
- package/src/servers/ecommerce.ts +1 -1
- package/src/servers/horizons.js +1 -1
- package/src/servers/horizons.ts +1 -1
- package/src/servers/hosting.js +1 -1
- package/src/servers/hosting.ts +1 -1
- package/src/servers/mail.js +1 -1
- package/src/servers/mail.ts +1 -1
- package/src/servers/reach.js +1 -1
- package/src/servers/reach.ts +1 -1
- package/src/servers/vps.js +1 -1
- package/src/servers/vps.ts +1 -1
- package/src/servers/wordpress.js +1 -1
- package/src/servers/wordpress.ts +1 -1
- package/types.d.ts +108 -1
package/README.md
CHANGED
|
@@ -69,7 +69,7 @@ pnpm update -g hostinger-api-mcp
|
|
|
69
69
|
|
|
70
70
|
This package installs the following MCP server commands:
|
|
71
71
|
|
|
72
|
-
- `hostinger-api-mcp` — unified server with every tool (
|
|
72
|
+
- `hostinger-api-mcp` — unified server with every tool (369 total)
|
|
73
73
|
- `hostinger-agency-hosting-mcp` — 38 tools for agency-hosting
|
|
74
74
|
- `hostinger-billing-mcp` — 9 tools for billing
|
|
75
75
|
- `hostinger-dns-mcp` — 8 tools for dns
|
|
@@ -78,7 +78,7 @@ This package installs the following MCP server commands:
|
|
|
78
78
|
- `hostinger-horizons-mcp` — 2 tools for horizons
|
|
79
79
|
- `hostinger-hosting-mcp` — 56 tools for hosting
|
|
80
80
|
- `hostinger-mail-mcp` — 38 tools for mail
|
|
81
|
-
- `hostinger-reach-mcp` —
|
|
81
|
+
- `hostinger-reach-mcp` — 49 tools for reach
|
|
82
82
|
- `hostinger-vps-mcp` — 62 tools for vps
|
|
83
83
|
- `hostinger-wordpress-mcp` — 38 tools for wordpress
|
|
84
84
|
|
|
@@ -1329,7 +1329,7 @@ every remaining unfulfilled item. Returns the updated order summary.
|
|
|
1329
1329
|
- **Method**: `POST`
|
|
1330
1330
|
- **Path**: `/api/ecommerce/v1/stores/{store_id}/orders/{order_id}/fulfill`
|
|
1331
1331
|
|
|
1332
|
-
####
|
|
1332
|
+
#### ecommerce_listStoreOrdersV1
|
|
1333
1333
|
|
|
1334
1334
|
List a store's orders newest first as summaries. Filter by status, payment or fulfilment
|
|
1335
1335
|
status, customer email, order number or a free-text query. Amounts are in the smallest
|
|
@@ -2872,6 +2872,34 @@ Only the segment definition is removed. The contacts that matched it are left un
|
|
|
2872
2872
|
- **Method**: `DELETE`
|
|
2873
2873
|
- **Path**: `/api/reach/v1/profiles/{profileUuid}/segmentation/segments/{segmentUuid}`
|
|
2874
2874
|
|
|
2875
|
+
#### reach_listSegmentFilterAttributesV1
|
|
2876
|
+
|
|
2877
|
+
List every attribute a segment condition can filter on, with the operators each attribute
|
|
2878
|
+
accepts, the value format they expect and, where the value is constrained, the allowed
|
|
2879
|
+
values.
|
|
2880
|
+
|
|
2881
|
+
The list is profile specific: it includes the profile's custom contact fields, its tags and
|
|
2882
|
+
its 20 most recently published campaigns, so the valid attributes cannot be hardcoded. Read
|
|
2883
|
+
it before creating or updating a segment to discover the valid `attribute`, `operator` and
|
|
2884
|
+
`value` combinations.
|
|
2885
|
+
|
|
2886
|
+
- **Method**: `GET`
|
|
2887
|
+
- **Path**: `/api/reach/v1/profiles/{profileUuid}/segmentation/filters/attributes`
|
|
2888
|
+
|
|
2889
|
+
#### reach_previewContactsMatchingConditionsV1
|
|
2890
|
+
|
|
2891
|
+
Preview the contacts matching a set of conditions without saving a segment.
|
|
2892
|
+
|
|
2893
|
+
The body is the same set of conditions accepted when creating or updating a segment, so this
|
|
2894
|
+
is how to check who a filter reaches, and how many, before persisting it. Nothing is stored
|
|
2895
|
+
and no contact is modified.
|
|
2896
|
+
|
|
2897
|
+
Call the segment filter attributes endpoint first to discover the valid `attribute`,
|
|
2898
|
+
`operator` and `value` combinations.
|
|
2899
|
+
|
|
2900
|
+
- **Method**: `POST`
|
|
2901
|
+
- **Path**: `/api/reach/v1/profiles/{profileUuid}/segmentation/filters/contacts`
|
|
2902
|
+
|
|
2875
2903
|
#### reach_listProfileSegmentsV1
|
|
2876
2904
|
|
|
2877
2905
|
Get a paginated list of the segments defined in a profile.
|
|
@@ -3046,6 +3074,33 @@ actual records found and the suggested records required for correct email delive
|
|
|
3046
3074
|
- **Method**: `GET`
|
|
3047
3075
|
- **Path**: `/api/reach/v1/profiles/{profileUuid}/domains/dns-status`
|
|
3048
3076
|
|
|
3077
|
+
#### reach_getConnectedSendingDomainV1
|
|
3078
|
+
|
|
3079
|
+
Get the sending domain connected to the profile, its verification status and any suspended
|
|
3080
|
+
sender addresses.
|
|
3081
|
+
|
|
3082
|
+
Campaigns only go out once a domain is connected and active, so this is the cheapest way to
|
|
3083
|
+
check that precondition before building one. A profile with no domain connected returns the
|
|
3084
|
+
same shape with every field set to `null`. For the individual MX, SPF, DKIM and DMARC records
|
|
3085
|
+
behind the status, use the DNS status endpoint.
|
|
3086
|
+
|
|
3087
|
+
- **Method**: `GET`
|
|
3088
|
+
- **Path**: `/api/reach/v1/profiles/{profileUuid}/domains`
|
|
3089
|
+
|
|
3090
|
+
#### reach_listPlanFeatureAccessV1
|
|
3091
|
+
|
|
3092
|
+
List which plan features the profile can use.
|
|
3093
|
+
|
|
3094
|
+
This is the feature lock matrix, not a usage quota. `available` means the feature can be
|
|
3095
|
+
used right now and `locked` means it is not part of the base plan, so an upgrade is needed.
|
|
3096
|
+
For remaining emails, recipients and AI credits use the limits endpoint instead.
|
|
3097
|
+
|
|
3098
|
+
Worth checking before building something that cannot be activated afterwards, such as an
|
|
3099
|
+
automation on a plan without automation activation.
|
|
3100
|
+
|
|
3101
|
+
- **Method**: `GET`
|
|
3102
|
+
- **Path**: `/api/reach/v1/profiles/{profileUuid}/features`
|
|
3103
|
+
|
|
3049
3104
|
#### reach_getRemainingPlanLimitsV1
|
|
3050
3105
|
|
|
3051
3106
|
Get how much of the plan is left for the current period.
|
package/gemini-extension.json
CHANGED
package/package.json
CHANGED
package/server.json
CHANGED
|
@@ -6,12 +6,12 @@
|
|
|
6
6
|
"url": "https://github.com/hostinger/api-mcp-server",
|
|
7
7
|
"source": "github"
|
|
8
8
|
},
|
|
9
|
-
"version": "1.
|
|
9
|
+
"version": "1.46.1",
|
|
10
10
|
"packages": [
|
|
11
11
|
{
|
|
12
12
|
"registryType": "npm",
|
|
13
13
|
"identifier": "hostinger-api-mcp",
|
|
14
|
-
"version": "1.
|
|
14
|
+
"version": "1.46.1",
|
|
15
15
|
"transport": {
|
|
16
16
|
"type": "stdio"
|
|
17
17
|
},
|
package/src/core/runtime.js
CHANGED
package/src/core/runtime.ts
CHANGED
package/src/core/tools/all.js
CHANGED
|
@@ -3547,7 +3547,7 @@ export default [
|
|
|
3547
3547
|
"group": "ecommerce"
|
|
3548
3548
|
},
|
|
3549
3549
|
{
|
|
3550
|
-
"name": "
|
|
3550
|
+
"name": "ecommerce_listStoreOrdersV1",
|
|
3551
3551
|
"description": "List a store's orders newest first as summaries. Filter by status, payment or fulfilment\nstatus, customer email, order number or a free-text query. Amounts are in the smallest\ncurrency unit. Retrieve a single order for its line items, addresses and fulfilments.",
|
|
3552
3552
|
"method": "GET",
|
|
3553
3553
|
"path": "/api/ecommerce/v1/stores/{store_id}/orders",
|
|
@@ -8967,6 +8967,150 @@ export default [
|
|
|
8967
8967
|
],
|
|
8968
8968
|
"group": "reach"
|
|
8969
8969
|
},
|
|
8970
|
+
{
|
|
8971
|
+
"name": "reach_listSegmentFilterAttributesV1",
|
|
8972
|
+
"description": "List every attribute a segment condition can filter on, with the operators each attribute\naccepts, the value format they expect and, where the value is constrained, the allowed\nvalues.\n\nThe list is profile specific: it includes the profile's custom contact fields, its tags and\nits 20 most recently published campaigns, so the valid attributes cannot be hardcoded. Read\nit before creating or updating a segment to discover the valid `attribute`, `operator` and\n`value` combinations.",
|
|
8973
|
+
"method": "GET",
|
|
8974
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/segmentation/filters/attributes",
|
|
8975
|
+
"inputSchema": {
|
|
8976
|
+
"type": "object",
|
|
8977
|
+
"properties": {
|
|
8978
|
+
"profileUuid": {
|
|
8979
|
+
"type": "string",
|
|
8980
|
+
"description": "Profile uuid parameter"
|
|
8981
|
+
}
|
|
8982
|
+
},
|
|
8983
|
+
"required": [
|
|
8984
|
+
"profileUuid"
|
|
8985
|
+
]
|
|
8986
|
+
},
|
|
8987
|
+
"security": [
|
|
8988
|
+
{
|
|
8989
|
+
"apiToken": []
|
|
8990
|
+
}
|
|
8991
|
+
],
|
|
8992
|
+
"group": "reach"
|
|
8993
|
+
},
|
|
8994
|
+
{
|
|
8995
|
+
"name": "reach_previewContactsMatchingConditionsV1",
|
|
8996
|
+
"description": "Preview the contacts matching a set of conditions without saving a segment.\n\nThe body is the same set of conditions accepted when creating or updating a segment, so this\nis how to check who a filter reaches, and how many, before persisting it. Nothing is stored\nand no contact is modified.\n\nCall the segment filter attributes endpoint first to discover the valid `attribute`,\n`operator` and `value` combinations.",
|
|
8997
|
+
"method": "POST",
|
|
8998
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/segmentation/filters/contacts",
|
|
8999
|
+
"inputSchema": {
|
|
9000
|
+
"type": "object",
|
|
9001
|
+
"properties": {
|
|
9002
|
+
"profileUuid": {
|
|
9003
|
+
"type": "string",
|
|
9004
|
+
"description": "Profile uuid parameter"
|
|
9005
|
+
},
|
|
9006
|
+
"conditions": {
|
|
9007
|
+
"type": "array",
|
|
9008
|
+
"description": "Conditions a contact must satisfy to appear in the preview",
|
|
9009
|
+
"items": {
|
|
9010
|
+
"type": "object",
|
|
9011
|
+
"description": "conditions parameter",
|
|
9012
|
+
"properties": {
|
|
9013
|
+
"attribute": {
|
|
9014
|
+
"type": "string",
|
|
9015
|
+
"description": "A built-in contact attribute, or `cf:{fieldUuid}` to target a custom\ncontact field. Which operators are accepted depends on the attribute,\nso read the segment filter attributes endpoint for the authoritative\nlist."
|
|
9016
|
+
},
|
|
9017
|
+
"operator": {
|
|
9018
|
+
"type": "string",
|
|
9019
|
+
"description": "operator parameter",
|
|
9020
|
+
"enum": [
|
|
9021
|
+
"equals",
|
|
9022
|
+
"not_equals",
|
|
9023
|
+
"contains",
|
|
9024
|
+
"not_contains",
|
|
9025
|
+
"gte",
|
|
9026
|
+
"lte",
|
|
9027
|
+
"exists",
|
|
9028
|
+
"within_last_days",
|
|
9029
|
+
"not_within_last_days",
|
|
9030
|
+
"older_than_days",
|
|
9031
|
+
"processed",
|
|
9032
|
+
"not_processed",
|
|
9033
|
+
"delivered",
|
|
9034
|
+
"not_delivered",
|
|
9035
|
+
"dropped",
|
|
9036
|
+
"not_dropped",
|
|
9037
|
+
"bounced",
|
|
9038
|
+
"not_bounced",
|
|
9039
|
+
"soft_bounced",
|
|
9040
|
+
"not_soft_bounced",
|
|
9041
|
+
"opened",
|
|
9042
|
+
"not_opened",
|
|
9043
|
+
"clicked",
|
|
9044
|
+
"not_clicked",
|
|
9045
|
+
"unsubscribed",
|
|
9046
|
+
"not_unsubscribed"
|
|
9047
|
+
]
|
|
9048
|
+
},
|
|
9049
|
+
"value": {
|
|
9050
|
+
"type": "string",
|
|
9051
|
+
"description": "Always a string, including for numeric and date comparisons"
|
|
9052
|
+
}
|
|
9053
|
+
},
|
|
9054
|
+
"required": [
|
|
9055
|
+
"attribute",
|
|
9056
|
+
"operator",
|
|
9057
|
+
"value"
|
|
9058
|
+
]
|
|
9059
|
+
}
|
|
9060
|
+
},
|
|
9061
|
+
"logic": {
|
|
9062
|
+
"type": "string",
|
|
9063
|
+
"description": "How to combine multiple conditions",
|
|
9064
|
+
"enum": [
|
|
9065
|
+
"AND",
|
|
9066
|
+
"OR"
|
|
9067
|
+
]
|
|
9068
|
+
},
|
|
9069
|
+
"page": {
|
|
9070
|
+
"type": "integer",
|
|
9071
|
+
"description": "Page number"
|
|
9072
|
+
},
|
|
9073
|
+
"per_page": {
|
|
9074
|
+
"type": "integer",
|
|
9075
|
+
"description": "Number of items per page"
|
|
9076
|
+
},
|
|
9077
|
+
"search": {
|
|
9078
|
+
"type": "string",
|
|
9079
|
+
"description": "Narrow the preview to contacts whose email matches"
|
|
9080
|
+
},
|
|
9081
|
+
"sort_by": {
|
|
9082
|
+
"type": "string",
|
|
9083
|
+
"description": "sort_by parameter",
|
|
9084
|
+
"enum": [
|
|
9085
|
+
"email",
|
|
9086
|
+
"name",
|
|
9087
|
+
"surname",
|
|
9088
|
+
"phone",
|
|
9089
|
+
"subscription_status"
|
|
9090
|
+
]
|
|
9091
|
+
},
|
|
9092
|
+
"sort_direction": {
|
|
9093
|
+
"type": "string",
|
|
9094
|
+
"description": "sort_direction parameter",
|
|
9095
|
+
"enum": [
|
|
9096
|
+
"asc",
|
|
9097
|
+
"desc"
|
|
9098
|
+
]
|
|
9099
|
+
}
|
|
9100
|
+
},
|
|
9101
|
+
"required": [
|
|
9102
|
+
"profileUuid",
|
|
9103
|
+
"conditions",
|
|
9104
|
+
"logic"
|
|
9105
|
+
]
|
|
9106
|
+
},
|
|
9107
|
+
"security": [
|
|
9108
|
+
{
|
|
9109
|
+
"apiToken": []
|
|
9110
|
+
}
|
|
9111
|
+
],
|
|
9112
|
+
"group": "reach"
|
|
9113
|
+
},
|
|
8970
9114
|
{
|
|
8971
9115
|
"name": "reach_listProfileSegmentsV1",
|
|
8972
9116
|
"description": "Get a paginated list of the segments defined in a profile.\n\nEach entry carries the number of contacts currently matching it, which is recalculated on\nread rather than stored. Use `count_type` to count either every matching contact or only\nthe subscribed ones.",
|
|
@@ -9529,6 +9673,54 @@ export default [
|
|
|
9529
9673
|
],
|
|
9530
9674
|
"group": "reach"
|
|
9531
9675
|
},
|
|
9676
|
+
{
|
|
9677
|
+
"name": "reach_getConnectedSendingDomainV1",
|
|
9678
|
+
"description": "Get the sending domain connected to the profile, its verification status and any suspended\nsender addresses.\n\nCampaigns only go out once a domain is connected and active, so this is the cheapest way to\ncheck that precondition before building one. A profile with no domain connected returns the\nsame shape with every field set to `null`. For the individual MX, SPF, DKIM and DMARC records\nbehind the status, use the DNS status endpoint.",
|
|
9679
|
+
"method": "GET",
|
|
9680
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/domains",
|
|
9681
|
+
"inputSchema": {
|
|
9682
|
+
"type": "object",
|
|
9683
|
+
"properties": {
|
|
9684
|
+
"profileUuid": {
|
|
9685
|
+
"type": "string",
|
|
9686
|
+
"description": "Profile uuid parameter"
|
|
9687
|
+
}
|
|
9688
|
+
},
|
|
9689
|
+
"required": [
|
|
9690
|
+
"profileUuid"
|
|
9691
|
+
]
|
|
9692
|
+
},
|
|
9693
|
+
"security": [
|
|
9694
|
+
{
|
|
9695
|
+
"apiToken": []
|
|
9696
|
+
}
|
|
9697
|
+
],
|
|
9698
|
+
"group": "reach"
|
|
9699
|
+
},
|
|
9700
|
+
{
|
|
9701
|
+
"name": "reach_listPlanFeatureAccessV1",
|
|
9702
|
+
"description": "List which plan features the profile can use.\n\nThis is the feature lock matrix, not a usage quota. `available` means the feature can be\nused right now and `locked` means it is not part of the base plan, so an upgrade is needed.\nFor remaining emails, recipients and AI credits use the limits endpoint instead.\n\nWorth checking before building something that cannot be activated afterwards, such as an\nautomation on a plan without automation activation.",
|
|
9703
|
+
"method": "GET",
|
|
9704
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/features",
|
|
9705
|
+
"inputSchema": {
|
|
9706
|
+
"type": "object",
|
|
9707
|
+
"properties": {
|
|
9708
|
+
"profileUuid": {
|
|
9709
|
+
"type": "string",
|
|
9710
|
+
"description": "Profile uuid parameter"
|
|
9711
|
+
}
|
|
9712
|
+
},
|
|
9713
|
+
"required": [
|
|
9714
|
+
"profileUuid"
|
|
9715
|
+
]
|
|
9716
|
+
},
|
|
9717
|
+
"security": [
|
|
9718
|
+
{
|
|
9719
|
+
"apiToken": []
|
|
9720
|
+
}
|
|
9721
|
+
],
|
|
9722
|
+
"group": "reach"
|
|
9723
|
+
},
|
|
9532
9724
|
{
|
|
9533
9725
|
"name": "reach_getRemainingPlanLimitsV1",
|
|
9534
9726
|
"description": "Get how much of the plan is left for the current period.\n\nTwo things to keep in mind before you build alerting on this. The period is a calendar month\nrather than a billing anniversary, so the counters reset on the 1st no matter when the\nsubscription started. And usage is tracked per order, so every profile on the same order shares\none pool and reports the same numbers here. Only the current period is available, past usage is\nnot kept.",
|
package/src/core/tools/all.ts
CHANGED
|
@@ -3561,7 +3561,7 @@ const tools: OpenApiTool[] = [
|
|
|
3561
3561
|
"group": "ecommerce"
|
|
3562
3562
|
},
|
|
3563
3563
|
{
|
|
3564
|
-
"name": "
|
|
3564
|
+
"name": "ecommerce_listStoreOrdersV1",
|
|
3565
3565
|
"description": "List a store's orders newest first as summaries. Filter by status, payment or fulfilment\nstatus, customer email, order number or a free-text query. Amounts are in the smallest\ncurrency unit. Retrieve a single order for its line items, addresses and fulfilments.",
|
|
3566
3566
|
"method": "GET",
|
|
3567
3567
|
"path": "/api/ecommerce/v1/stores/{store_id}/orders",
|
|
@@ -8981,6 +8981,150 @@ const tools: OpenApiTool[] = [
|
|
|
8981
8981
|
],
|
|
8982
8982
|
"group": "reach"
|
|
8983
8983
|
},
|
|
8984
|
+
{
|
|
8985
|
+
"name": "reach_listSegmentFilterAttributesV1",
|
|
8986
|
+
"description": "List every attribute a segment condition can filter on, with the operators each attribute\naccepts, the value format they expect and, where the value is constrained, the allowed\nvalues.\n\nThe list is profile specific: it includes the profile's custom contact fields, its tags and\nits 20 most recently published campaigns, so the valid attributes cannot be hardcoded. Read\nit before creating or updating a segment to discover the valid `attribute`, `operator` and\n`value` combinations.",
|
|
8987
|
+
"method": "GET",
|
|
8988
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/segmentation/filters/attributes",
|
|
8989
|
+
"inputSchema": {
|
|
8990
|
+
"type": "object",
|
|
8991
|
+
"properties": {
|
|
8992
|
+
"profileUuid": {
|
|
8993
|
+
"type": "string",
|
|
8994
|
+
"description": "Profile uuid parameter"
|
|
8995
|
+
}
|
|
8996
|
+
},
|
|
8997
|
+
"required": [
|
|
8998
|
+
"profileUuid"
|
|
8999
|
+
]
|
|
9000
|
+
},
|
|
9001
|
+
"security": [
|
|
9002
|
+
{
|
|
9003
|
+
"apiToken": []
|
|
9004
|
+
}
|
|
9005
|
+
],
|
|
9006
|
+
"group": "reach"
|
|
9007
|
+
},
|
|
9008
|
+
{
|
|
9009
|
+
"name": "reach_previewContactsMatchingConditionsV1",
|
|
9010
|
+
"description": "Preview the contacts matching a set of conditions without saving a segment.\n\nThe body is the same set of conditions accepted when creating or updating a segment, so this\nis how to check who a filter reaches, and how many, before persisting it. Nothing is stored\nand no contact is modified.\n\nCall the segment filter attributes endpoint first to discover the valid `attribute`,\n`operator` and `value` combinations.",
|
|
9011
|
+
"method": "POST",
|
|
9012
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/segmentation/filters/contacts",
|
|
9013
|
+
"inputSchema": {
|
|
9014
|
+
"type": "object",
|
|
9015
|
+
"properties": {
|
|
9016
|
+
"profileUuid": {
|
|
9017
|
+
"type": "string",
|
|
9018
|
+
"description": "Profile uuid parameter"
|
|
9019
|
+
},
|
|
9020
|
+
"conditions": {
|
|
9021
|
+
"type": "array",
|
|
9022
|
+
"description": "Conditions a contact must satisfy to appear in the preview",
|
|
9023
|
+
"items": {
|
|
9024
|
+
"type": "object",
|
|
9025
|
+
"description": "conditions parameter",
|
|
9026
|
+
"properties": {
|
|
9027
|
+
"attribute": {
|
|
9028
|
+
"type": "string",
|
|
9029
|
+
"description": "A built-in contact attribute, or `cf:{fieldUuid}` to target a custom\ncontact field. Which operators are accepted depends on the attribute,\nso read the segment filter attributes endpoint for the authoritative\nlist."
|
|
9030
|
+
},
|
|
9031
|
+
"operator": {
|
|
9032
|
+
"type": "string",
|
|
9033
|
+
"description": "operator parameter",
|
|
9034
|
+
"enum": [
|
|
9035
|
+
"equals",
|
|
9036
|
+
"not_equals",
|
|
9037
|
+
"contains",
|
|
9038
|
+
"not_contains",
|
|
9039
|
+
"gte",
|
|
9040
|
+
"lte",
|
|
9041
|
+
"exists",
|
|
9042
|
+
"within_last_days",
|
|
9043
|
+
"not_within_last_days",
|
|
9044
|
+
"older_than_days",
|
|
9045
|
+
"processed",
|
|
9046
|
+
"not_processed",
|
|
9047
|
+
"delivered",
|
|
9048
|
+
"not_delivered",
|
|
9049
|
+
"dropped",
|
|
9050
|
+
"not_dropped",
|
|
9051
|
+
"bounced",
|
|
9052
|
+
"not_bounced",
|
|
9053
|
+
"soft_bounced",
|
|
9054
|
+
"not_soft_bounced",
|
|
9055
|
+
"opened",
|
|
9056
|
+
"not_opened",
|
|
9057
|
+
"clicked",
|
|
9058
|
+
"not_clicked",
|
|
9059
|
+
"unsubscribed",
|
|
9060
|
+
"not_unsubscribed"
|
|
9061
|
+
]
|
|
9062
|
+
},
|
|
9063
|
+
"value": {
|
|
9064
|
+
"type": "string",
|
|
9065
|
+
"description": "Always a string, including for numeric and date comparisons"
|
|
9066
|
+
}
|
|
9067
|
+
},
|
|
9068
|
+
"required": [
|
|
9069
|
+
"attribute",
|
|
9070
|
+
"operator",
|
|
9071
|
+
"value"
|
|
9072
|
+
]
|
|
9073
|
+
}
|
|
9074
|
+
},
|
|
9075
|
+
"logic": {
|
|
9076
|
+
"type": "string",
|
|
9077
|
+
"description": "How to combine multiple conditions",
|
|
9078
|
+
"enum": [
|
|
9079
|
+
"AND",
|
|
9080
|
+
"OR"
|
|
9081
|
+
]
|
|
9082
|
+
},
|
|
9083
|
+
"page": {
|
|
9084
|
+
"type": "integer",
|
|
9085
|
+
"description": "Page number"
|
|
9086
|
+
},
|
|
9087
|
+
"per_page": {
|
|
9088
|
+
"type": "integer",
|
|
9089
|
+
"description": "Number of items per page"
|
|
9090
|
+
},
|
|
9091
|
+
"search": {
|
|
9092
|
+
"type": "string",
|
|
9093
|
+
"description": "Narrow the preview to contacts whose email matches"
|
|
9094
|
+
},
|
|
9095
|
+
"sort_by": {
|
|
9096
|
+
"type": "string",
|
|
9097
|
+
"description": "sort_by parameter",
|
|
9098
|
+
"enum": [
|
|
9099
|
+
"email",
|
|
9100
|
+
"name",
|
|
9101
|
+
"surname",
|
|
9102
|
+
"phone",
|
|
9103
|
+
"subscription_status"
|
|
9104
|
+
]
|
|
9105
|
+
},
|
|
9106
|
+
"sort_direction": {
|
|
9107
|
+
"type": "string",
|
|
9108
|
+
"description": "sort_direction parameter",
|
|
9109
|
+
"enum": [
|
|
9110
|
+
"asc",
|
|
9111
|
+
"desc"
|
|
9112
|
+
]
|
|
9113
|
+
}
|
|
9114
|
+
},
|
|
9115
|
+
"required": [
|
|
9116
|
+
"profileUuid",
|
|
9117
|
+
"conditions",
|
|
9118
|
+
"logic"
|
|
9119
|
+
]
|
|
9120
|
+
},
|
|
9121
|
+
"security": [
|
|
9122
|
+
{
|
|
9123
|
+
"apiToken": []
|
|
9124
|
+
}
|
|
9125
|
+
],
|
|
9126
|
+
"group": "reach"
|
|
9127
|
+
},
|
|
8984
9128
|
{
|
|
8985
9129
|
"name": "reach_listProfileSegmentsV1",
|
|
8986
9130
|
"description": "Get a paginated list of the segments defined in a profile.\n\nEach entry carries the number of contacts currently matching it, which is recalculated on\nread rather than stored. Use `count_type` to count either every matching contact or only\nthe subscribed ones.",
|
|
@@ -9543,6 +9687,54 @@ const tools: OpenApiTool[] = [
|
|
|
9543
9687
|
],
|
|
9544
9688
|
"group": "reach"
|
|
9545
9689
|
},
|
|
9690
|
+
{
|
|
9691
|
+
"name": "reach_getConnectedSendingDomainV1",
|
|
9692
|
+
"description": "Get the sending domain connected to the profile, its verification status and any suspended\nsender addresses.\n\nCampaigns only go out once a domain is connected and active, so this is the cheapest way to\ncheck that precondition before building one. A profile with no domain connected returns the\nsame shape with every field set to `null`. For the individual MX, SPF, DKIM and DMARC records\nbehind the status, use the DNS status endpoint.",
|
|
9693
|
+
"method": "GET",
|
|
9694
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/domains",
|
|
9695
|
+
"inputSchema": {
|
|
9696
|
+
"type": "object",
|
|
9697
|
+
"properties": {
|
|
9698
|
+
"profileUuid": {
|
|
9699
|
+
"type": "string",
|
|
9700
|
+
"description": "Profile uuid parameter"
|
|
9701
|
+
}
|
|
9702
|
+
},
|
|
9703
|
+
"required": [
|
|
9704
|
+
"profileUuid"
|
|
9705
|
+
]
|
|
9706
|
+
},
|
|
9707
|
+
"security": [
|
|
9708
|
+
{
|
|
9709
|
+
"apiToken": []
|
|
9710
|
+
}
|
|
9711
|
+
],
|
|
9712
|
+
"group": "reach"
|
|
9713
|
+
},
|
|
9714
|
+
{
|
|
9715
|
+
"name": "reach_listPlanFeatureAccessV1",
|
|
9716
|
+
"description": "List which plan features the profile can use.\n\nThis is the feature lock matrix, not a usage quota. `available` means the feature can be\nused right now and `locked` means it is not part of the base plan, so an upgrade is needed.\nFor remaining emails, recipients and AI credits use the limits endpoint instead.\n\nWorth checking before building something that cannot be activated afterwards, such as an\nautomation on a plan without automation activation.",
|
|
9717
|
+
"method": "GET",
|
|
9718
|
+
"path": "/api/reach/v1/profiles/{profileUuid}/features",
|
|
9719
|
+
"inputSchema": {
|
|
9720
|
+
"type": "object",
|
|
9721
|
+
"properties": {
|
|
9722
|
+
"profileUuid": {
|
|
9723
|
+
"type": "string",
|
|
9724
|
+
"description": "Profile uuid parameter"
|
|
9725
|
+
}
|
|
9726
|
+
},
|
|
9727
|
+
"required": [
|
|
9728
|
+
"profileUuid"
|
|
9729
|
+
]
|
|
9730
|
+
},
|
|
9731
|
+
"security": [
|
|
9732
|
+
{
|
|
9733
|
+
"apiToken": []
|
|
9734
|
+
}
|
|
9735
|
+
],
|
|
9736
|
+
"group": "reach"
|
|
9737
|
+
},
|
|
9546
9738
|
{
|
|
9547
9739
|
"name": "reach_getRemainingPlanLimitsV1",
|
|
9548
9740
|
"description": "Get how much of the plan is left for the current period.\n\nTwo things to keep in mind before you build alerting on this. The period is a calendar month\nrather than a billing anniversary, so the counters reset on the 1st no matter when the\nsubscription started. And usage is tracked per order, so every profile on the same order shares\none pool and reports the same numbers here. Only the current period is available, past usage is\nnot kept.",
|
|
@@ -230,7 +230,7 @@ export default [
|
|
|
230
230
|
"group": "ecommerce"
|
|
231
231
|
},
|
|
232
232
|
{
|
|
233
|
-
"name": "
|
|
233
|
+
"name": "ecommerce_listStoreOrdersV1",
|
|
234
234
|
"description": "List a store's orders newest first as summaries. Filter by status, payment or fulfilment\nstatus, customer email, order number or a free-text query. Amounts are in the smallest\ncurrency unit. Retrieve a single order for its line items, addresses and fulfilments.",
|
|
235
235
|
"method": "GET",
|
|
236
236
|
"path": "/api/ecommerce/v1/stores/{store_id}/orders",
|
|
@@ -244,7 +244,7 @@ const tools: OpenApiTool[] = [
|
|
|
244
244
|
"group": "ecommerce"
|
|
245
245
|
},
|
|
246
246
|
{
|
|
247
|
-
"name": "
|
|
247
|
+
"name": "ecommerce_listStoreOrdersV1",
|
|
248
248
|
"description": "List a store's orders newest first as summaries. Filter by status, payment or fulfilment\nstatus, customer email, order number or a free-text query. Amounts are in the smallest\ncurrency unit. Retrieve a single order for its line items, addresses and fulfilments.",
|
|
249
249
|
"method": "GET",
|
|
250
250
|
"path": "/api/ecommerce/v1/stores/{store_id}/orders",
|