pulumi-webflow 0.0.0__py3-none-any.whl
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.
- pulumi_webflow/__init__.py +76 -0
- pulumi_webflow/_inputs.py +254 -0
- pulumi_webflow/_utilities.py +331 -0
- pulumi_webflow/asset.py +334 -0
- pulumi_webflow/asset_folder.py +225 -0
- pulumi_webflow/collection.py +235 -0
- pulumi_webflow/collection_field.py +322 -0
- pulumi_webflow/collection_item.py +283 -0
- pulumi_webflow/config/__init__.py +9 -0
- pulumi_webflow/config/__init__.pyi +21 -0
- pulumi_webflow/config/vars.py +29 -0
- pulumi_webflow/ecommerce_settings.py +146 -0
- pulumi_webflow/get_authorized_user.py +109 -0
- pulumi_webflow/get_token_info.py +82 -0
- pulumi_webflow/outputs.py +455 -0
- pulumi_webflow/page_content.py +172 -0
- pulumi_webflow/page_custom_code.py +178 -0
- pulumi_webflow/page_data.py +256 -0
- pulumi_webflow/provider.py +106 -0
- pulumi_webflow/pulumi-plugin.json +4 -0
- pulumi_webflow/py.typed +0 -0
- pulumi_webflow/redirect.py +226 -0
- pulumi_webflow/registered_script.py +295 -0
- pulumi_webflow/robots_txt.py +166 -0
- pulumi_webflow/site.py +361 -0
- pulumi_webflow/site_custom_code.py +178 -0
- pulumi_webflow/user.py +284 -0
- pulumi_webflow/webhook.py +235 -0
- pulumi_webflow-0.0.0.dist-info/METADATA +602 -0
- pulumi_webflow-0.0.0.dist-info/RECORD +32 -0
- pulumi_webflow-0.0.0.dist-info/WHEEL +5 -0
- pulumi_webflow-0.0.0.dist-info/top_level.txt +1 -0
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from . import _utilities
|
|
16
|
+
from . import outputs
|
|
17
|
+
from ._inputs import *
|
|
18
|
+
|
|
19
|
+
__all__ = ['PageContentArgs', 'PageContent']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class PageContentArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
nodes: pulumi.Input[Sequence[pulumi.Input['NodeContentUpdateArgs']]],
|
|
25
|
+
page_id: pulumi.Input[_builtins.str]):
|
|
26
|
+
"""
|
|
27
|
+
The set of arguments for constructing a PageContent resource.
|
|
28
|
+
:param pulumi.Input[Sequence[pulumi.Input['NodeContentUpdateArgs']]] nodes: List of node content updates to apply. Each update specifies the nodeId (from the page's DOM structure) and the new text content. Node IDs can be retrieved by fetching the page DOM using GET /pages/{page_id}/dom. Only text content in existing nodes can be updated via this resource.
|
|
29
|
+
:param pulumi.Input[_builtins.str] page_id: The Webflow page ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Pages API list endpoint or in the Webflow designer. This field will be validated before making any API calls.
|
|
30
|
+
"""
|
|
31
|
+
pulumi.set(__self__, "nodes", nodes)
|
|
32
|
+
pulumi.set(__self__, "page_id", page_id)
|
|
33
|
+
|
|
34
|
+
@_builtins.property
|
|
35
|
+
@pulumi.getter
|
|
36
|
+
def nodes(self) -> pulumi.Input[Sequence[pulumi.Input['NodeContentUpdateArgs']]]:
|
|
37
|
+
"""
|
|
38
|
+
List of node content updates to apply. Each update specifies the nodeId (from the page's DOM structure) and the new text content. Node IDs can be retrieved by fetching the page DOM using GET /pages/{page_id}/dom. Only text content in existing nodes can be updated via this resource.
|
|
39
|
+
"""
|
|
40
|
+
return pulumi.get(self, "nodes")
|
|
41
|
+
|
|
42
|
+
@nodes.setter
|
|
43
|
+
def nodes(self, value: pulumi.Input[Sequence[pulumi.Input['NodeContentUpdateArgs']]]):
|
|
44
|
+
pulumi.set(self, "nodes", value)
|
|
45
|
+
|
|
46
|
+
@_builtins.property
|
|
47
|
+
@pulumi.getter(name="pageId")
|
|
48
|
+
def page_id(self) -> pulumi.Input[_builtins.str]:
|
|
49
|
+
"""
|
|
50
|
+
The Webflow page ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Pages API list endpoint or in the Webflow designer. This field will be validated before making any API calls.
|
|
51
|
+
"""
|
|
52
|
+
return pulumi.get(self, "page_id")
|
|
53
|
+
|
|
54
|
+
@page_id.setter
|
|
55
|
+
def page_id(self, value: pulumi.Input[_builtins.str]):
|
|
56
|
+
pulumi.set(self, "page_id", value)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
@pulumi.type_token("webflow:index:PageContent")
|
|
60
|
+
class PageContent(pulumi.CustomResource):
|
|
61
|
+
@overload
|
|
62
|
+
def __init__(__self__,
|
|
63
|
+
resource_name: str,
|
|
64
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
65
|
+
nodes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeContentUpdateArgs', 'NodeContentUpdateArgsDict']]]]] = None,
|
|
66
|
+
page_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
67
|
+
__props__=None):
|
|
68
|
+
"""
|
|
69
|
+
Manages static content (text) for a Webflow page. This resource allows you to update text content within existing DOM nodes on a page. It does NOT manage page structure or layout - only content within existing nodes. To find node IDs, you must first retrieve the page DOM structure using the Webflow API.
|
|
70
|
+
|
|
71
|
+
**IMPORTANT LIMITATION:** This resource does NOT support drift detection for content changes. If content is modified outside of Pulumi (via Webflow UI or API), those changes will NOT be detected during 'pulumi refresh' or 'pulumi up'. The resource only verifies that the page still exists. This is due to the complexity of extracting and comparing specific node text from the full DOM structure.
|
|
72
|
+
|
|
73
|
+
:param str resource_name: The name of the resource.
|
|
74
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
75
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['NodeContentUpdateArgs', 'NodeContentUpdateArgsDict']]]] nodes: List of node content updates to apply. Each update specifies the nodeId (from the page's DOM structure) and the new text content. Node IDs can be retrieved by fetching the page DOM using GET /pages/{page_id}/dom. Only text content in existing nodes can be updated via this resource.
|
|
76
|
+
:param pulumi.Input[_builtins.str] page_id: The Webflow page ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Pages API list endpoint or in the Webflow designer. This field will be validated before making any API calls.
|
|
77
|
+
"""
|
|
78
|
+
...
|
|
79
|
+
@overload
|
|
80
|
+
def __init__(__self__,
|
|
81
|
+
resource_name: str,
|
|
82
|
+
args: PageContentArgs,
|
|
83
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
84
|
+
"""
|
|
85
|
+
Manages static content (text) for a Webflow page. This resource allows you to update text content within existing DOM nodes on a page. It does NOT manage page structure or layout - only content within existing nodes. To find node IDs, you must first retrieve the page DOM structure using the Webflow API.
|
|
86
|
+
|
|
87
|
+
**IMPORTANT LIMITATION:** This resource does NOT support drift detection for content changes. If content is modified outside of Pulumi (via Webflow UI or API), those changes will NOT be detected during 'pulumi refresh' or 'pulumi up'. The resource only verifies that the page still exists. This is due to the complexity of extracting and comparing specific node text from the full DOM structure.
|
|
88
|
+
|
|
89
|
+
:param str resource_name: The name of the resource.
|
|
90
|
+
:param PageContentArgs args: The arguments to use to populate this resource's properties.
|
|
91
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
92
|
+
"""
|
|
93
|
+
...
|
|
94
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
95
|
+
resource_args, opts = _utilities.get_resource_args_opts(PageContentArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
96
|
+
if resource_args is not None:
|
|
97
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
98
|
+
else:
|
|
99
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
100
|
+
|
|
101
|
+
def _internal_init(__self__,
|
|
102
|
+
resource_name: str,
|
|
103
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
104
|
+
nodes: Optional[pulumi.Input[Sequence[pulumi.Input[Union['NodeContentUpdateArgs', 'NodeContentUpdateArgsDict']]]]] = None,
|
|
105
|
+
page_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
106
|
+
__props__=None):
|
|
107
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
108
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
109
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
110
|
+
if opts.id is None:
|
|
111
|
+
if __props__ is not None:
|
|
112
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
113
|
+
__props__ = PageContentArgs.__new__(PageContentArgs)
|
|
114
|
+
|
|
115
|
+
if nodes is None and not opts.urn:
|
|
116
|
+
raise TypeError("Missing required property 'nodes'")
|
|
117
|
+
__props__.__dict__["nodes"] = nodes
|
|
118
|
+
if page_id is None and not opts.urn:
|
|
119
|
+
raise TypeError("Missing required property 'page_id'")
|
|
120
|
+
__props__.__dict__["page_id"] = page_id
|
|
121
|
+
__props__.__dict__["last_updated"] = None
|
|
122
|
+
super(PageContent, __self__).__init__(
|
|
123
|
+
'webflow:index:PageContent',
|
|
124
|
+
resource_name,
|
|
125
|
+
__props__,
|
|
126
|
+
opts)
|
|
127
|
+
|
|
128
|
+
@staticmethod
|
|
129
|
+
def get(resource_name: str,
|
|
130
|
+
id: pulumi.Input[str],
|
|
131
|
+
opts: Optional[pulumi.ResourceOptions] = None) -> 'PageContent':
|
|
132
|
+
"""
|
|
133
|
+
Get an existing PageContent resource's state with the given name, id, and optional extra
|
|
134
|
+
properties used to qualify the lookup.
|
|
135
|
+
|
|
136
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
137
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
138
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
139
|
+
"""
|
|
140
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
141
|
+
|
|
142
|
+
__props__ = PageContentArgs.__new__(PageContentArgs)
|
|
143
|
+
|
|
144
|
+
__props__.__dict__["last_updated"] = None
|
|
145
|
+
__props__.__dict__["nodes"] = None
|
|
146
|
+
__props__.__dict__["page_id"] = None
|
|
147
|
+
return PageContent(resource_name, opts=opts, __props__=__props__)
|
|
148
|
+
|
|
149
|
+
@_builtins.property
|
|
150
|
+
@pulumi.getter(name="lastUpdated")
|
|
151
|
+
def last_updated(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
152
|
+
"""
|
|
153
|
+
The timestamp when the page content was last updated (RFC3339 format). This is automatically set when content is updated and is read-only.
|
|
154
|
+
"""
|
|
155
|
+
return pulumi.get(self, "last_updated")
|
|
156
|
+
|
|
157
|
+
@_builtins.property
|
|
158
|
+
@pulumi.getter
|
|
159
|
+
def nodes(self) -> pulumi.Output[Sequence['outputs.NodeContentUpdate']]:
|
|
160
|
+
"""
|
|
161
|
+
List of node content updates to apply. Each update specifies the nodeId (from the page's DOM structure) and the new text content. Node IDs can be retrieved by fetching the page DOM using GET /pages/{page_id}/dom. Only text content in existing nodes can be updated via this resource.
|
|
162
|
+
"""
|
|
163
|
+
return pulumi.get(self, "nodes")
|
|
164
|
+
|
|
165
|
+
@_builtins.property
|
|
166
|
+
@pulumi.getter(name="pageId")
|
|
167
|
+
def page_id(self) -> pulumi.Output[_builtins.str]:
|
|
168
|
+
"""
|
|
169
|
+
The Webflow page ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Pages API list endpoint or in the Webflow designer. This field will be validated before making any API calls.
|
|
170
|
+
"""
|
|
171
|
+
return pulumi.get(self, "page_id")
|
|
172
|
+
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from . import _utilities
|
|
16
|
+
from . import outputs
|
|
17
|
+
from ._inputs import *
|
|
18
|
+
|
|
19
|
+
__all__ = ['PageCustomCodeArgs', 'PageCustomCode']
|
|
20
|
+
|
|
21
|
+
@pulumi.input_type
|
|
22
|
+
class PageCustomCodeArgs:
|
|
23
|
+
def __init__(__self__, *,
|
|
24
|
+
page_id: pulumi.Input[_builtins.str],
|
|
25
|
+
scripts: pulumi.Input[Sequence[pulumi.Input['PageCustomCodeScriptArgs']]]):
|
|
26
|
+
"""
|
|
27
|
+
The set of arguments for constructing a PageCustomCode resource.
|
|
28
|
+
:param pulumi.Input[_builtins.str] page_id: The Webflow page ID (24-character hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Webflow Pages API or in the Webflow designer. This field will be validated before making any API calls.
|
|
29
|
+
:param pulumi.Input[Sequence[pulumi.Input['PageCustomCodeScriptArgs']]] scripts: List of custom code scripts to apply to the page. Each script must reference a script ID and version that have been previously registered. All scripts in this list will be applied to the page; any scripts not listed will be removed from the page.
|
|
30
|
+
"""
|
|
31
|
+
pulumi.set(__self__, "page_id", page_id)
|
|
32
|
+
pulumi.set(__self__, "scripts", scripts)
|
|
33
|
+
|
|
34
|
+
@_builtins.property
|
|
35
|
+
@pulumi.getter(name="pageId")
|
|
36
|
+
def page_id(self) -> pulumi.Input[_builtins.str]:
|
|
37
|
+
"""
|
|
38
|
+
The Webflow page ID (24-character hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Webflow Pages API or in the Webflow designer. This field will be validated before making any API calls.
|
|
39
|
+
"""
|
|
40
|
+
return pulumi.get(self, "page_id")
|
|
41
|
+
|
|
42
|
+
@page_id.setter
|
|
43
|
+
def page_id(self, value: pulumi.Input[_builtins.str]):
|
|
44
|
+
pulumi.set(self, "page_id", value)
|
|
45
|
+
|
|
46
|
+
@_builtins.property
|
|
47
|
+
@pulumi.getter
|
|
48
|
+
def scripts(self) -> pulumi.Input[Sequence[pulumi.Input['PageCustomCodeScriptArgs']]]:
|
|
49
|
+
"""
|
|
50
|
+
List of custom code scripts to apply to the page. Each script must reference a script ID and version that have been previously registered. All scripts in this list will be applied to the page; any scripts not listed will be removed from the page.
|
|
51
|
+
"""
|
|
52
|
+
return pulumi.get(self, "scripts")
|
|
53
|
+
|
|
54
|
+
@scripts.setter
|
|
55
|
+
def scripts(self, value: pulumi.Input[Sequence[pulumi.Input['PageCustomCodeScriptArgs']]]):
|
|
56
|
+
pulumi.set(self, "scripts", value)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
@pulumi.type_token("webflow:index:PageCustomCode")
|
|
60
|
+
class PageCustomCode(pulumi.CustomResource):
|
|
61
|
+
@overload
|
|
62
|
+
def __init__(__self__,
|
|
63
|
+
resource_name: str,
|
|
64
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
65
|
+
page_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
66
|
+
scripts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PageCustomCodeScriptArgs', 'PageCustomCodeScriptArgsDict']]]]] = None,
|
|
67
|
+
__props__=None):
|
|
68
|
+
"""
|
|
69
|
+
Manages custom code (JavaScript) scripts applied to a Webflow page. This resource allows you to apply registered custom code scripts to specific pages. Scripts must first be registered using the RegisteredScript resource before they can be applied. All scripts in the configuration will be applied to the page; scripts not listed will be removed.
|
|
70
|
+
|
|
71
|
+
:param str resource_name: The name of the resource.
|
|
72
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
73
|
+
:param pulumi.Input[_builtins.str] page_id: The Webflow page ID (24-character hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Webflow Pages API or in the Webflow designer. This field will be validated before making any API calls.
|
|
74
|
+
:param pulumi.Input[Sequence[pulumi.Input[Union['PageCustomCodeScriptArgs', 'PageCustomCodeScriptArgsDict']]]] scripts: List of custom code scripts to apply to the page. Each script must reference a script ID and version that have been previously registered. All scripts in this list will be applied to the page; any scripts not listed will be removed from the page.
|
|
75
|
+
"""
|
|
76
|
+
...
|
|
77
|
+
@overload
|
|
78
|
+
def __init__(__self__,
|
|
79
|
+
resource_name: str,
|
|
80
|
+
args: PageCustomCodeArgs,
|
|
81
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
82
|
+
"""
|
|
83
|
+
Manages custom code (JavaScript) scripts applied to a Webflow page. This resource allows you to apply registered custom code scripts to specific pages. Scripts must first be registered using the RegisteredScript resource before they can be applied. All scripts in the configuration will be applied to the page; scripts not listed will be removed.
|
|
84
|
+
|
|
85
|
+
:param str resource_name: The name of the resource.
|
|
86
|
+
:param PageCustomCodeArgs args: The arguments to use to populate this resource's properties.
|
|
87
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
88
|
+
"""
|
|
89
|
+
...
|
|
90
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
91
|
+
resource_args, opts = _utilities.get_resource_args_opts(PageCustomCodeArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
92
|
+
if resource_args is not None:
|
|
93
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
94
|
+
else:
|
|
95
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
96
|
+
|
|
97
|
+
def _internal_init(__self__,
|
|
98
|
+
resource_name: str,
|
|
99
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
100
|
+
page_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
101
|
+
scripts: Optional[pulumi.Input[Sequence[pulumi.Input[Union['PageCustomCodeScriptArgs', 'PageCustomCodeScriptArgsDict']]]]] = None,
|
|
102
|
+
__props__=None):
|
|
103
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
104
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
105
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
106
|
+
if opts.id is None:
|
|
107
|
+
if __props__ is not None:
|
|
108
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
109
|
+
__props__ = PageCustomCodeArgs.__new__(PageCustomCodeArgs)
|
|
110
|
+
|
|
111
|
+
if page_id is None and not opts.urn:
|
|
112
|
+
raise TypeError("Missing required property 'page_id'")
|
|
113
|
+
__props__.__dict__["page_id"] = page_id
|
|
114
|
+
if scripts is None and not opts.urn:
|
|
115
|
+
raise TypeError("Missing required property 'scripts'")
|
|
116
|
+
__props__.__dict__["scripts"] = scripts
|
|
117
|
+
__props__.__dict__["created_on"] = None
|
|
118
|
+
__props__.__dict__["last_updated"] = None
|
|
119
|
+
super(PageCustomCode, __self__).__init__(
|
|
120
|
+
'webflow:index:PageCustomCode',
|
|
121
|
+
resource_name,
|
|
122
|
+
__props__,
|
|
123
|
+
opts)
|
|
124
|
+
|
|
125
|
+
@staticmethod
|
|
126
|
+
def get(resource_name: str,
|
|
127
|
+
id: pulumi.Input[str],
|
|
128
|
+
opts: Optional[pulumi.ResourceOptions] = None) -> 'PageCustomCode':
|
|
129
|
+
"""
|
|
130
|
+
Get an existing PageCustomCode resource's state with the given name, id, and optional extra
|
|
131
|
+
properties used to qualify the lookup.
|
|
132
|
+
|
|
133
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
134
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
135
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
136
|
+
"""
|
|
137
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
138
|
+
|
|
139
|
+
__props__ = PageCustomCodeArgs.__new__(PageCustomCodeArgs)
|
|
140
|
+
|
|
141
|
+
__props__.__dict__["created_on"] = None
|
|
142
|
+
__props__.__dict__["last_updated"] = None
|
|
143
|
+
__props__.__dict__["page_id"] = None
|
|
144
|
+
__props__.__dict__["scripts"] = None
|
|
145
|
+
return PageCustomCode(resource_name, opts=opts, __props__=__props__)
|
|
146
|
+
|
|
147
|
+
@_builtins.property
|
|
148
|
+
@pulumi.getter(name="createdOn")
|
|
149
|
+
def created_on(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
150
|
+
"""
|
|
151
|
+
The timestamp when the page custom code was first created (RFC3339 format). This is automatically set when the configuration is first created and is read-only.
|
|
152
|
+
"""
|
|
153
|
+
return pulumi.get(self, "created_on")
|
|
154
|
+
|
|
155
|
+
@_builtins.property
|
|
156
|
+
@pulumi.getter(name="lastUpdated")
|
|
157
|
+
def last_updated(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
158
|
+
"""
|
|
159
|
+
The timestamp when the page custom code was last updated (RFC3339 format). This is automatically set when the configuration is updated and is read-only.
|
|
160
|
+
"""
|
|
161
|
+
return pulumi.get(self, "last_updated")
|
|
162
|
+
|
|
163
|
+
@_builtins.property
|
|
164
|
+
@pulumi.getter(name="pageId")
|
|
165
|
+
def page_id(self) -> pulumi.Output[_builtins.str]:
|
|
166
|
+
"""
|
|
167
|
+
The Webflow page ID (24-character hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). You can find page IDs using the Webflow Pages API or in the Webflow designer. This field will be validated before making any API calls.
|
|
168
|
+
"""
|
|
169
|
+
return pulumi.get(self, "page_id")
|
|
170
|
+
|
|
171
|
+
@_builtins.property
|
|
172
|
+
@pulumi.getter
|
|
173
|
+
def scripts(self) -> pulumi.Output[Sequence['outputs.PageCustomCodeScript']]:
|
|
174
|
+
"""
|
|
175
|
+
List of custom code scripts to apply to the page. Each script must reference a script ID and version that have been previously registered. All scripts in this list will be applied to the page; any scripts not listed will be removed from the page.
|
|
176
|
+
"""
|
|
177
|
+
return pulumi.get(self, "scripts")
|
|
178
|
+
|
|
@@ -0,0 +1,256 @@
|
|
|
1
|
+
# coding=utf-8
|
|
2
|
+
# *** WARNING: this file was generated by pulumi-language-python. ***
|
|
3
|
+
# *** Do not edit by hand unless you're certain you know what you are doing! ***
|
|
4
|
+
|
|
5
|
+
import builtins as _builtins
|
|
6
|
+
import warnings
|
|
7
|
+
import sys
|
|
8
|
+
import pulumi
|
|
9
|
+
import pulumi.runtime
|
|
10
|
+
from typing import Any, Mapping, Optional, Sequence, Union, overload
|
|
11
|
+
if sys.version_info >= (3, 11):
|
|
12
|
+
from typing import NotRequired, TypedDict, TypeAlias
|
|
13
|
+
else:
|
|
14
|
+
from typing_extensions import NotRequired, TypedDict, TypeAlias
|
|
15
|
+
from . import _utilities
|
|
16
|
+
from . import outputs
|
|
17
|
+
|
|
18
|
+
__all__ = ['PageDataArgs', 'PageData']
|
|
19
|
+
|
|
20
|
+
@pulumi.input_type
|
|
21
|
+
class PageDataArgs:
|
|
22
|
+
def __init__(__self__, *,
|
|
23
|
+
site_id: pulumi.Input[_builtins.str],
|
|
24
|
+
page_id: Optional[pulumi.Input[_builtins.str]] = None):
|
|
25
|
+
"""
|
|
26
|
+
The set of arguments for constructing a PageData resource.
|
|
27
|
+
:param pulumi.Input[_builtins.str] site_id: The Webflow site ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c3'). You can find your site ID in the Webflow dashboard under Site Settings. This field will be validated before making any API calls.
|
|
28
|
+
:param pulumi.Input[_builtins.str] page_id: The specific page ID to retrieve (optional, 24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). If specified, only this page's data will be returned. If omitted, all pages for the site will be returned in the 'pages' output.
|
|
29
|
+
"""
|
|
30
|
+
pulumi.set(__self__, "site_id", site_id)
|
|
31
|
+
if page_id is not None:
|
|
32
|
+
pulumi.set(__self__, "page_id", page_id)
|
|
33
|
+
|
|
34
|
+
@_builtins.property
|
|
35
|
+
@pulumi.getter(name="siteId")
|
|
36
|
+
def site_id(self) -> pulumi.Input[_builtins.str]:
|
|
37
|
+
"""
|
|
38
|
+
The Webflow site ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c3'). You can find your site ID in the Webflow dashboard under Site Settings. This field will be validated before making any API calls.
|
|
39
|
+
"""
|
|
40
|
+
return pulumi.get(self, "site_id")
|
|
41
|
+
|
|
42
|
+
@site_id.setter
|
|
43
|
+
def site_id(self, value: pulumi.Input[_builtins.str]):
|
|
44
|
+
pulumi.set(self, "site_id", value)
|
|
45
|
+
|
|
46
|
+
@_builtins.property
|
|
47
|
+
@pulumi.getter(name="pageId")
|
|
48
|
+
def page_id(self) -> Optional[pulumi.Input[_builtins.str]]:
|
|
49
|
+
"""
|
|
50
|
+
The specific page ID to retrieve (optional, 24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). If specified, only this page's data will be returned. If omitted, all pages for the site will be returned in the 'pages' output.
|
|
51
|
+
"""
|
|
52
|
+
return pulumi.get(self, "page_id")
|
|
53
|
+
|
|
54
|
+
@page_id.setter
|
|
55
|
+
def page_id(self, value: Optional[pulumi.Input[_builtins.str]]):
|
|
56
|
+
pulumi.set(self, "page_id", value)
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
@pulumi.type_token("webflow:index:PageData")
|
|
60
|
+
class PageData(pulumi.CustomResource):
|
|
61
|
+
@overload
|
|
62
|
+
def __init__(__self__,
|
|
63
|
+
resource_name: str,
|
|
64
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
65
|
+
page_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
66
|
+
site_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
67
|
+
__props__=None):
|
|
68
|
+
"""
|
|
69
|
+
Reads page information from a Webflow site. Pages cannot be created via the API - they must be created in the Webflow designer. Use this data source to retrieve page metadata for use in your infrastructure code. Specify pageId to get a single page, or omit it to list all pages in the site.
|
|
70
|
+
|
|
71
|
+
:param str resource_name: The name of the resource.
|
|
72
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
73
|
+
:param pulumi.Input[_builtins.str] page_id: The specific page ID to retrieve (optional, 24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). If specified, only this page's data will be returned. If omitted, all pages for the site will be returned in the 'pages' output.
|
|
74
|
+
:param pulumi.Input[_builtins.str] site_id: The Webflow site ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c3'). You can find your site ID in the Webflow dashboard under Site Settings. This field will be validated before making any API calls.
|
|
75
|
+
"""
|
|
76
|
+
...
|
|
77
|
+
@overload
|
|
78
|
+
def __init__(__self__,
|
|
79
|
+
resource_name: str,
|
|
80
|
+
args: PageDataArgs,
|
|
81
|
+
opts: Optional[pulumi.ResourceOptions] = None):
|
|
82
|
+
"""
|
|
83
|
+
Reads page information from a Webflow site. Pages cannot be created via the API - they must be created in the Webflow designer. Use this data source to retrieve page metadata for use in your infrastructure code. Specify pageId to get a single page, or omit it to list all pages in the site.
|
|
84
|
+
|
|
85
|
+
:param str resource_name: The name of the resource.
|
|
86
|
+
:param PageDataArgs args: The arguments to use to populate this resource's properties.
|
|
87
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
88
|
+
"""
|
|
89
|
+
...
|
|
90
|
+
def __init__(__self__, resource_name: str, *args, **kwargs):
|
|
91
|
+
resource_args, opts = _utilities.get_resource_args_opts(PageDataArgs, pulumi.ResourceOptions, *args, **kwargs)
|
|
92
|
+
if resource_args is not None:
|
|
93
|
+
__self__._internal_init(resource_name, opts, **resource_args.__dict__)
|
|
94
|
+
else:
|
|
95
|
+
__self__._internal_init(resource_name, *args, **kwargs)
|
|
96
|
+
|
|
97
|
+
def _internal_init(__self__,
|
|
98
|
+
resource_name: str,
|
|
99
|
+
opts: Optional[pulumi.ResourceOptions] = None,
|
|
100
|
+
page_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
101
|
+
site_id: Optional[pulumi.Input[_builtins.str]] = None,
|
|
102
|
+
__props__=None):
|
|
103
|
+
opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
|
|
104
|
+
if not isinstance(opts, pulumi.ResourceOptions):
|
|
105
|
+
raise TypeError('Expected resource options to be a ResourceOptions instance')
|
|
106
|
+
if opts.id is None:
|
|
107
|
+
if __props__ is not None:
|
|
108
|
+
raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
|
|
109
|
+
__props__ = PageDataArgs.__new__(PageDataArgs)
|
|
110
|
+
|
|
111
|
+
__props__.__dict__["page_id"] = page_id
|
|
112
|
+
if site_id is None and not opts.urn:
|
|
113
|
+
raise TypeError("Missing required property 'site_id'")
|
|
114
|
+
__props__.__dict__["site_id"] = site_id
|
|
115
|
+
__props__.__dict__["archived"] = None
|
|
116
|
+
__props__.__dict__["collection_id"] = None
|
|
117
|
+
__props__.__dict__["created_on"] = None
|
|
118
|
+
__props__.__dict__["draft"] = None
|
|
119
|
+
__props__.__dict__["last_updated"] = None
|
|
120
|
+
__props__.__dict__["pages"] = None
|
|
121
|
+
__props__.__dict__["parent_id"] = None
|
|
122
|
+
__props__.__dict__["slug"] = None
|
|
123
|
+
__props__.__dict__["title"] = None
|
|
124
|
+
__props__.__dict__["webflow_page_id"] = None
|
|
125
|
+
super(PageData, __self__).__init__(
|
|
126
|
+
'webflow:index:PageData',
|
|
127
|
+
resource_name,
|
|
128
|
+
__props__,
|
|
129
|
+
opts)
|
|
130
|
+
|
|
131
|
+
@staticmethod
|
|
132
|
+
def get(resource_name: str,
|
|
133
|
+
id: pulumi.Input[str],
|
|
134
|
+
opts: Optional[pulumi.ResourceOptions] = None) -> 'PageData':
|
|
135
|
+
"""
|
|
136
|
+
Get an existing PageData resource's state with the given name, id, and optional extra
|
|
137
|
+
properties used to qualify the lookup.
|
|
138
|
+
|
|
139
|
+
:param str resource_name: The unique name of the resulting resource.
|
|
140
|
+
:param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
|
|
141
|
+
:param pulumi.ResourceOptions opts: Options for the resource.
|
|
142
|
+
"""
|
|
143
|
+
opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))
|
|
144
|
+
|
|
145
|
+
__props__ = PageDataArgs.__new__(PageDataArgs)
|
|
146
|
+
|
|
147
|
+
__props__.__dict__["archived"] = None
|
|
148
|
+
__props__.__dict__["collection_id"] = None
|
|
149
|
+
__props__.__dict__["created_on"] = None
|
|
150
|
+
__props__.__dict__["draft"] = None
|
|
151
|
+
__props__.__dict__["last_updated"] = None
|
|
152
|
+
__props__.__dict__["page_id"] = None
|
|
153
|
+
__props__.__dict__["pages"] = None
|
|
154
|
+
__props__.__dict__["parent_id"] = None
|
|
155
|
+
__props__.__dict__["site_id"] = None
|
|
156
|
+
__props__.__dict__["slug"] = None
|
|
157
|
+
__props__.__dict__["title"] = None
|
|
158
|
+
__props__.__dict__["webflow_page_id"] = None
|
|
159
|
+
return PageData(resource_name, opts=opts, __props__=__props__)
|
|
160
|
+
|
|
161
|
+
@_builtins.property
|
|
162
|
+
@pulumi.getter
|
|
163
|
+
def archived(self) -> pulumi.Output[Optional[_builtins.bool]]:
|
|
164
|
+
"""
|
|
165
|
+
Indicates if the page is archived (read-only). Only populated when pageId input is specified.
|
|
166
|
+
"""
|
|
167
|
+
return pulumi.get(self, "archived")
|
|
168
|
+
|
|
169
|
+
@_builtins.property
|
|
170
|
+
@pulumi.getter(name="collectionId")
|
|
171
|
+
def collection_id(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
172
|
+
"""
|
|
173
|
+
The ID of the CMS collection (read-only, optional). Only present for collection pages. Only populated when pageId input is specified.
|
|
174
|
+
"""
|
|
175
|
+
return pulumi.get(self, "collection_id")
|
|
176
|
+
|
|
177
|
+
@_builtins.property
|
|
178
|
+
@pulumi.getter(name="createdOn")
|
|
179
|
+
def created_on(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
180
|
+
"""
|
|
181
|
+
The timestamp when the page was created (read-only, RFC3339 format). Only populated when pageId input is specified.
|
|
182
|
+
"""
|
|
183
|
+
return pulumi.get(self, "created_on")
|
|
184
|
+
|
|
185
|
+
@_builtins.property
|
|
186
|
+
@pulumi.getter
|
|
187
|
+
def draft(self) -> pulumi.Output[Optional[_builtins.bool]]:
|
|
188
|
+
"""
|
|
189
|
+
Indicates if the page is in draft mode (read-only). Only populated when pageId input is specified.
|
|
190
|
+
"""
|
|
191
|
+
return pulumi.get(self, "draft")
|
|
192
|
+
|
|
193
|
+
@_builtins.property
|
|
194
|
+
@pulumi.getter(name="lastUpdated")
|
|
195
|
+
def last_updated(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
196
|
+
"""
|
|
197
|
+
The timestamp when the page was last updated (read-only, RFC3339 format). Only populated when pageId input is specified.
|
|
198
|
+
"""
|
|
199
|
+
return pulumi.get(self, "last_updated")
|
|
200
|
+
|
|
201
|
+
@_builtins.property
|
|
202
|
+
@pulumi.getter(name="pageId")
|
|
203
|
+
def page_id(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
204
|
+
"""
|
|
205
|
+
The specific page ID to retrieve (optional, 24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c4'). If specified, only this page's data will be returned. If omitted, all pages for the site will be returned in the 'pages' output.
|
|
206
|
+
"""
|
|
207
|
+
return pulumi.get(self, "page_id")
|
|
208
|
+
|
|
209
|
+
@_builtins.property
|
|
210
|
+
@pulumi.getter
|
|
211
|
+
def pages(self) -> pulumi.Output[Optional[Sequence['outputs.PageInfo']]]:
|
|
212
|
+
"""
|
|
213
|
+
List of all pages in the site (read-only). Only populated when pageId input is NOT specified. Each page includes all metadata fields: id, siteId, title, slug, createdOn, lastUpdated, archived, draft, and optional parentId/collectionId.
|
|
214
|
+
"""
|
|
215
|
+
return pulumi.get(self, "pages")
|
|
216
|
+
|
|
217
|
+
@_builtins.property
|
|
218
|
+
@pulumi.getter(name="parentId")
|
|
219
|
+
def parent_id(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
220
|
+
"""
|
|
221
|
+
The ID of the parent page (read-only, optional). Only present for nested pages. Only populated when pageId input is specified.
|
|
222
|
+
"""
|
|
223
|
+
return pulumi.get(self, "parent_id")
|
|
224
|
+
|
|
225
|
+
@_builtins.property
|
|
226
|
+
@pulumi.getter(name="siteId")
|
|
227
|
+
def site_id(self) -> pulumi.Output[_builtins.str]:
|
|
228
|
+
"""
|
|
229
|
+
The Webflow site ID (24-character lowercase hexadecimal string, e.g., '5f0c8c9e1c9d440000e8d8c3'). You can find your site ID in the Webflow dashboard under Site Settings. This field will be validated before making any API calls.
|
|
230
|
+
"""
|
|
231
|
+
return pulumi.get(self, "site_id")
|
|
232
|
+
|
|
233
|
+
@_builtins.property
|
|
234
|
+
@pulumi.getter
|
|
235
|
+
def slug(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
236
|
+
"""
|
|
237
|
+
The URL slug for the page (read-only, e.g., 'about' for '/about'). Only populated when pageId input is specified.
|
|
238
|
+
"""
|
|
239
|
+
return pulumi.get(self, "slug")
|
|
240
|
+
|
|
241
|
+
@_builtins.property
|
|
242
|
+
@pulumi.getter
|
|
243
|
+
def title(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
244
|
+
"""
|
|
245
|
+
The page title (read-only). This is the title shown in browser tabs and search results. Only populated when pageId input is specified.
|
|
246
|
+
"""
|
|
247
|
+
return pulumi.get(self, "title")
|
|
248
|
+
|
|
249
|
+
@_builtins.property
|
|
250
|
+
@pulumi.getter(name="webflowPageId")
|
|
251
|
+
def webflow_page_id(self) -> pulumi.Output[Optional[_builtins.str]]:
|
|
252
|
+
"""
|
|
253
|
+
The Webflow page ID (read-only). Only populated when pageId input is specified.
|
|
254
|
+
"""
|
|
255
|
+
return pulumi.get(self, "webflow_page_id")
|
|
256
|
+
|