scaleway.IotRoute
Explore with Pulumi AI
Example Usage
Database Route
import * as pulumi from "@pulumi/pulumi";
import * as scaleway from "@pulumiverse/scaleway";
const mainIotHub = new scaleway.IotHub("main", {
name: "main",
productPlan: "plan_shared",
});
const iot = new scaleway.DatabaseInstance("iot", {
name: "iot",
nodeType: "db-dev-s",
engine: "PostgreSQL-12",
userName: "root",
password: "T3stP4ssw0rdD0N0tUs3!",
});
const main = new scaleway.IotRoute("main", {
name: "default",
hubId: mainIotHub.id,
topic: "#",
database: {
query: `INSERT INTO measurements(
\x09push_time,
\x09report_time,
\x09station_id,
\x09temperature,
\x09humidity
) VALUES (
\x09NOW(),
\x09TIMESTAMP 'epoch' + ((PAYLOAD::jsonb->'last_reported')::integer * INTERVAL '1 second'),
\x09(PAYLOAD::jsonb->'station_id')::uuid,
\x09(PAYLOAD::jsonb->'temperature')::decimal,
\x09(PAYLOAD::jsonb->'humidity'):decimal:
);
`,
host: iot.endpointIp,
port: iot.endpointPort,
dbname: "rdb",
username: iot.userName,
password: iot.password,
},
});
import pulumi
import pulumiverse_scaleway as scaleway
main_iot_hub = scaleway.IotHub("main",
name="main",
product_plan="plan_shared")
iot = scaleway.DatabaseInstance("iot",
name="iot",
node_type="db-dev-s",
engine="PostgreSQL-12",
user_name="root",
password="T3stP4ssw0rdD0N0tUs3!")
main = scaleway.IotRoute("main",
name="default",
hub_id=main_iot_hub.id,
topic="#",
database={
"query": """INSERT INTO measurements(
\x09push_time,
\x09report_time,
\x09station_id,
\x09temperature,
\x09humidity
) VALUES (
\x09NOW(),
\x09TIMESTAMP 'epoch' + (($PAYLOAD::jsonb->'last_reported')::integer * INTERVAL '1 second'),
\x09($PAYLOAD::jsonb->'station_id')::uuid,
\x09($PAYLOAD::jsonb->'temperature')::decimal,
\x09($PAYLOAD::jsonb->'humidity'):decimal:
);
""",
"host": iot.endpoint_ip,
"port": iot.endpoint_port,
"dbname": "rdb",
"username": iot.user_name,
"password": iot.password,
})
package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
mainIotHub, err := scaleway.NewIotHub(ctx, "main", &scaleway.IotHubArgs{
Name: pulumi.String("main"),
ProductPlan: pulumi.String("plan_shared"),
})
if err != nil {
return err
}
iot, err := scaleway.NewDatabaseInstance(ctx, "iot", &scaleway.DatabaseInstanceArgs{
Name: pulumi.String("iot"),
NodeType: pulumi.String("db-dev-s"),
Engine: pulumi.String("PostgreSQL-12"),
UserName: pulumi.String("root"),
Password: pulumi.String("T3stP4ssw0rdD0N0tUs3!"),
})
if err != nil {
return err
}
_, err = scaleway.NewIotRoute(ctx, "main", &scaleway.IotRouteArgs{
Name: pulumi.String("default"),
HubId: mainIotHub.ID(),
Topic: pulumi.String("#"),
Database: &scaleway.IotRouteDatabaseArgs{
Query: pulumi.String(`INSERT INTO measurements(
push_time,
report_time,
station_id,
temperature,
humidity
) VALUES (
NOW(),
TIMESTAMP 'epoch' + (($PAYLOAD::jsonb->'last_reported')::integer * INTERVAL '1 second'),
($PAYLOAD::jsonb->'station_id')::uuid,
($PAYLOAD::jsonb->'temperature')::decimal,
($PAYLOAD::jsonb->'humidity'):decimal:
);
`),
Host: iot.EndpointIp,
Port: iot.EndpointPort,
Dbname: pulumi.String("rdb"),
Username: iot.UserName,
Password: iot.Password,
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Scaleway = Pulumiverse.Scaleway;
return await Deployment.RunAsync(() =>
{
var mainIotHub = new Scaleway.IotHub("main", new()
{
Name = "main",
ProductPlan = "plan_shared",
});
var iot = new Scaleway.DatabaseInstance("iot", new()
{
Name = "iot",
NodeType = "db-dev-s",
Engine = "PostgreSQL-12",
UserName = "root",
Password = "T3stP4ssw0rdD0N0tUs3!",
});
var main = new Scaleway.IotRoute("main", new()
{
Name = "default",
HubId = mainIotHub.Id,
Topic = "#",
Database = new Scaleway.Inputs.IotRouteDatabaseArgs
{
Query = @"INSERT INTO measurements(
push_time,
report_time,
station_id,
temperature,
humidity
) VALUES (
NOW(),
TIMESTAMP 'epoch' + (($PAYLOAD::jsonb->'last_reported')::integer * INTERVAL '1 second'),
($PAYLOAD::jsonb->'station_id')::uuid,
($PAYLOAD::jsonb->'temperature')::decimal,
($PAYLOAD::jsonb->'humidity'):decimal:
);
",
Host = iot.EndpointIp,
Port = iot.EndpointPort,
Dbname = "rdb",
Username = iot.UserName,
Password = iot.Password,
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.scaleway.IotHub;
import com.pulumi.scaleway.IotHubArgs;
import com.pulumi.scaleway.DatabaseInstance;
import com.pulumi.scaleway.DatabaseInstanceArgs;
import com.pulumi.scaleway.IotRoute;
import com.pulumi.scaleway.IotRouteArgs;
import com.pulumi.scaleway.inputs.IotRouteDatabaseArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var mainIotHub = new IotHub("mainIotHub", IotHubArgs.builder()
.name("main")
.productPlan("plan_shared")
.build());
var iot = new DatabaseInstance("iot", DatabaseInstanceArgs.builder()
.name("iot")
.nodeType("db-dev-s")
.engine("PostgreSQL-12")
.userName("root")
.password("T3stP4ssw0rdD0N0tUs3!")
.build());
var main = new IotRoute("main", IotRouteArgs.builder()
.name("default")
.hubId(mainIotHub.id())
.topic("#")
.database(IotRouteDatabaseArgs.builder()
.query("""
INSERT INTO measurements(
push_time,
report_time,
station_id,
temperature,
humidity
) VALUES (
NOW(),
TIMESTAMP 'epoch' + (($PAYLOAD::jsonb->'last_reported')::integer * INTERVAL '1 second'),
($PAYLOAD::jsonb->'station_id')::uuid,
($PAYLOAD::jsonb->'temperature')::decimal,
($PAYLOAD::jsonb->'humidity'):decimal:
);
""")
.host(iot.endpointIp())
.port(iot.endpointPort())
.dbname("rdb")
.username(iot.userName())
.password(iot.password())
.build())
.build());
}
}
resources:
main:
type: scaleway:IotRoute
properties:
name: default
hubId: ${mainIotHub.id}
topic: '#'
database:
query: |
INSERT INTO measurements(
push_time,
report_time,
station_id,
temperature,
humidity
) VALUES (
NOW(),
TIMESTAMP 'epoch' + (($PAYLOAD::jsonb->'last_reported')::integer * INTERVAL '1 second'),
($PAYLOAD::jsonb->'station_id')::uuid,
($PAYLOAD::jsonb->'temperature')::decimal,
($PAYLOAD::jsonb->'humidity'):decimal:
);
host: ${iot.endpointIp}
port: ${iot.endpointPort}
dbname: rdb
username: ${iot.userName}
password: ${iot.password}
mainIotHub:
type: scaleway:IotHub
name: main
properties:
name: main
productPlan: plan_shared
iot:
type: scaleway:DatabaseInstance
properties:
name: iot
nodeType: db-dev-s
engine: PostgreSQL-12
userName: root
password: T3stP4ssw0rdD0N0tUs3!
S3 Route
import * as pulumi from "@pulumi/pulumi";
import * as scaleway from "@pulumiverse/scaleway";
const mainIotHub = new scaleway.IotHub("main", {
name: "main",
productPlan: "plan_shared",
});
const mainObjectBucket = new scaleway.ObjectBucket("main", {
region: "fr-par",
name: "my_awesome-bucket",
});
const main = new scaleway.IotRoute("main", {
name: "main",
hubId: mainIotHub.id,
topic: "#",
s3: {
bucketRegion: mainObjectBucket.region,
bucketName: mainObjectBucket.name,
objectPrefix: "foo",
strategy: "per_topic",
},
});
import pulumi
import pulumiverse_scaleway as scaleway
main_iot_hub = scaleway.IotHub("main",
name="main",
product_plan="plan_shared")
main_object_bucket = scaleway.ObjectBucket("main",
region="fr-par",
name="my_awesome-bucket")
main = scaleway.IotRoute("main",
name="main",
hub_id=main_iot_hub.id,
topic="#",
s3={
"bucket_region": main_object_bucket.region,
"bucket_name": main_object_bucket.name,
"object_prefix": "foo",
"strategy": "per_topic",
})
package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
mainIotHub, err := scaleway.NewIotHub(ctx, "main", &scaleway.IotHubArgs{
Name: pulumi.String("main"),
ProductPlan: pulumi.String("plan_shared"),
})
if err != nil {
return err
}
mainObjectBucket, err := scaleway.NewObjectBucket(ctx, "main", &scaleway.ObjectBucketArgs{
Region: pulumi.String("fr-par"),
Name: pulumi.String("my_awesome-bucket"),
})
if err != nil {
return err
}
_, err = scaleway.NewIotRoute(ctx, "main", &scaleway.IotRouteArgs{
Name: pulumi.String("main"),
HubId: mainIotHub.ID(),
Topic: pulumi.String("#"),
S3: &scaleway.IotRouteS3Args{
BucketRegion: mainObjectBucket.Region,
BucketName: mainObjectBucket.Name,
ObjectPrefix: pulumi.String("foo"),
Strategy: pulumi.String("per_topic"),
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Scaleway = Pulumiverse.Scaleway;
return await Deployment.RunAsync(() =>
{
var mainIotHub = new Scaleway.IotHub("main", new()
{
Name = "main",
ProductPlan = "plan_shared",
});
var mainObjectBucket = new Scaleway.ObjectBucket("main", new()
{
Region = "fr-par",
Name = "my_awesome-bucket",
});
var main = new Scaleway.IotRoute("main", new()
{
Name = "main",
HubId = mainIotHub.Id,
Topic = "#",
S3 = new Scaleway.Inputs.IotRouteS3Args
{
BucketRegion = mainObjectBucket.Region,
BucketName = mainObjectBucket.Name,
ObjectPrefix = "foo",
Strategy = "per_topic",
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.scaleway.IotHub;
import com.pulumi.scaleway.IotHubArgs;
import com.pulumi.scaleway.ObjectBucket;
import com.pulumi.scaleway.ObjectBucketArgs;
import com.pulumi.scaleway.IotRoute;
import com.pulumi.scaleway.IotRouteArgs;
import com.pulumi.scaleway.inputs.IotRouteS3Args;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var mainIotHub = new IotHub("mainIotHub", IotHubArgs.builder()
.name("main")
.productPlan("plan_shared")
.build());
var mainObjectBucket = new ObjectBucket("mainObjectBucket", ObjectBucketArgs.builder()
.region("fr-par")
.name("my_awesome-bucket")
.build());
var main = new IotRoute("main", IotRouteArgs.builder()
.name("main")
.hubId(mainIotHub.id())
.topic("#")
.s3(IotRouteS3Args.builder()
.bucketRegion(mainObjectBucket.region())
.bucketName(mainObjectBucket.name())
.objectPrefix("foo")
.strategy("per_topic")
.build())
.build());
}
}
resources:
main:
type: scaleway:IotRoute
properties:
name: main
hubId: ${mainIotHub.id}
topic: '#'
s3:
bucketRegion: ${mainObjectBucket.region}
bucketName: ${mainObjectBucket.name}
objectPrefix: foo
strategy: per_topic
mainIotHub:
type: scaleway:IotHub
name: main
properties:
name: main
productPlan: plan_shared
mainObjectBucket:
type: scaleway:ObjectBucket
name: main
properties:
region: fr-par
name: my_awesome-bucket
Rest Route
import * as pulumi from "@pulumi/pulumi";
import * as scaleway from "@pulumiverse/scaleway";
const mainIotHub = new scaleway.IotHub("main", {
name: "main",
productPlan: "plan_shared",
});
const main = new scaleway.IotRoute("main", {
name: "main",
hubId: mainIotHub.id,
topic: "#",
rest: {
verb: "get",
uri: "http://scaleway.com",
headers: {
"X-awesome-header": "my-awesome-value",
},
},
});
import pulumi
import pulumiverse_scaleway as scaleway
main_iot_hub = scaleway.IotHub("main",
name="main",
product_plan="plan_shared")
main = scaleway.IotRoute("main",
name="main",
hub_id=main_iot_hub.id,
topic="#",
rest={
"verb": "get",
"uri": "http://scaleway.com",
"headers": {
"X-awesome-header": "my-awesome-value",
},
})
package main
import (
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
"github.com/pulumiverse/pulumi-scaleway/sdk/go/scaleway"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
mainIotHub, err := scaleway.NewIotHub(ctx, "main", &scaleway.IotHubArgs{
Name: pulumi.String("main"),
ProductPlan: pulumi.String("plan_shared"),
})
if err != nil {
return err
}
_, err = scaleway.NewIotRoute(ctx, "main", &scaleway.IotRouteArgs{
Name: pulumi.String("main"),
HubId: mainIotHub.ID(),
Topic: pulumi.String("#"),
Rest: &scaleway.IotRouteRestArgs{
Verb: pulumi.String("get"),
Uri: pulumi.String("http://scaleway.com"),
Headers: pulumi.StringMap{
"X-awesome-header": pulumi.String("my-awesome-value"),
},
},
})
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Scaleway = Pulumiverse.Scaleway;
return await Deployment.RunAsync(() =>
{
var mainIotHub = new Scaleway.IotHub("main", new()
{
Name = "main",
ProductPlan = "plan_shared",
});
var main = new Scaleway.IotRoute("main", new()
{
Name = "main",
HubId = mainIotHub.Id,
Topic = "#",
Rest = new Scaleway.Inputs.IotRouteRestArgs
{
Verb = "get",
Uri = "http://scaleway.com",
Headers =
{
{ "X-awesome-header", "my-awesome-value" },
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.scaleway.IotHub;
import com.pulumi.scaleway.IotHubArgs;
import com.pulumi.scaleway.IotRoute;
import com.pulumi.scaleway.IotRouteArgs;
import com.pulumi.scaleway.inputs.IotRouteRestArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var mainIotHub = new IotHub("mainIotHub", IotHubArgs.builder()
.name("main")
.productPlan("plan_shared")
.build());
var main = new IotRoute("main", IotRouteArgs.builder()
.name("main")
.hubId(mainIotHub.id())
.topic("#")
.rest(IotRouteRestArgs.builder()
.verb("get")
.uri("http://scaleway.com")
.headers(Map.of("X-awesome-header", "my-awesome-value"))
.build())
.build());
}
}
resources:
main:
type: scaleway:IotRoute
properties:
name: main
hubId: ${mainIotHub.id}
topic: '#'
rest:
verb: get
uri: http://scaleway.com
headers:
X-awesome-header: my-awesome-value
mainIotHub:
type: scaleway:IotHub
name: main
properties:
name: main
productPlan: plan_shared
Create IotRoute Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new IotRoute(name: string, args: IotRouteArgs, opts?: CustomResourceOptions);
@overload
def IotRoute(resource_name: str,
args: IotRouteArgs,
opts: Optional[ResourceOptions] = None)
@overload
def IotRoute(resource_name: str,
opts: Optional[ResourceOptions] = None,
hub_id: Optional[str] = None,
topic: Optional[str] = None,
database: Optional[IotRouteDatabaseArgs] = None,
name: Optional[str] = None,
region: Optional[str] = None,
rest: Optional[IotRouteRestArgs] = None,
s3: Optional[IotRouteS3Args] = None)
func NewIotRoute(ctx *Context, name string, args IotRouteArgs, opts ...ResourceOption) (*IotRoute, error)
public IotRoute(string name, IotRouteArgs args, CustomResourceOptions? opts = null)
public IotRoute(String name, IotRouteArgs args)
public IotRoute(String name, IotRouteArgs args, CustomResourceOptions options)
type: scaleway:IotRoute
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args IotRouteArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args IotRouteArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args IotRouteArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args IotRouteArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args IotRouteArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var iotRouteResource = new Scaleway.IotRoute("iotRouteResource", new()
{
HubId = "string",
Topic = "string",
Database = new Scaleway.Inputs.IotRouteDatabaseArgs
{
Dbname = "string",
Host = "string",
Password = "string",
Port = 0,
Query = "string",
Username = "string",
},
Name = "string",
Region = "string",
Rest = new Scaleway.Inputs.IotRouteRestArgs
{
Headers =
{
{ "string", "string" },
},
Uri = "string",
Verb = "string",
},
S3 = new Scaleway.Inputs.IotRouteS3Args
{
BucketName = "string",
BucketRegion = "string",
Strategy = "string",
ObjectPrefix = "string",
},
});
example, err := scaleway.NewIotRoute(ctx, "iotRouteResource", &scaleway.IotRouteArgs{
HubId: pulumi.String("string"),
Topic: pulumi.String("string"),
Database: &scaleway.IotRouteDatabaseArgs{
Dbname: pulumi.String("string"),
Host: pulumi.String("string"),
Password: pulumi.String("string"),
Port: pulumi.Int(0),
Query: pulumi.String("string"),
Username: pulumi.String("string"),
},
Name: pulumi.String("string"),
Region: pulumi.String("string"),
Rest: &scaleway.IotRouteRestArgs{
Headers: pulumi.StringMap{
"string": pulumi.String("string"),
},
Uri: pulumi.String("string"),
Verb: pulumi.String("string"),
},
S3: &scaleway.IotRouteS3Args{
BucketName: pulumi.String("string"),
BucketRegion: pulumi.String("string"),
Strategy: pulumi.String("string"),
ObjectPrefix: pulumi.String("string"),
},
})
var iotRouteResource = new IotRoute("iotRouteResource", IotRouteArgs.builder()
.hubId("string")
.topic("string")
.database(IotRouteDatabaseArgs.builder()
.dbname("string")
.host("string")
.password("string")
.port(0)
.query("string")
.username("string")
.build())
.name("string")
.region("string")
.rest(IotRouteRestArgs.builder()
.headers(Map.of("string", "string"))
.uri("string")
.verb("string")
.build())
.s3(IotRouteS3Args.builder()
.bucketName("string")
.bucketRegion("string")
.strategy("string")
.objectPrefix("string")
.build())
.build());
iot_route_resource = scaleway.IotRoute("iotRouteResource",
hub_id="string",
topic="string",
database={
"dbname": "string",
"host": "string",
"password": "string",
"port": 0,
"query": "string",
"username": "string",
},
name="string",
region="string",
rest={
"headers": {
"string": "string",
},
"uri": "string",
"verb": "string",
},
s3={
"bucket_name": "string",
"bucket_region": "string",
"strategy": "string",
"object_prefix": "string",
})
const iotRouteResource = new scaleway.IotRoute("iotRouteResource", {
hubId: "string",
topic: "string",
database: {
dbname: "string",
host: "string",
password: "string",
port: 0,
query: "string",
username: "string",
},
name: "string",
region: "string",
rest: {
headers: {
string: "string",
},
uri: "string",
verb: "string",
},
s3: {
bucketName: "string",
bucketRegion: "string",
strategy: "string",
objectPrefix: "string",
},
});
type: scaleway:IotRoute
properties:
database:
dbname: string
host: string
password: string
port: 0
query: string
username: string
hubId: string
name: string
region: string
rest:
headers:
string: string
uri: string
verb: string
s3:
bucketName: string
bucketRegion: string
objectPrefix: string
strategy: string
topic: string
IotRoute Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The IotRoute resource accepts the following input properties:
- Hub
Id string - The hub ID to which the Route will be attached to.
- Topic string
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
). - Database
Pulumiverse.
Scaleway. Inputs. Iot Route Database - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- Name string
- The name of the IoT Route you want to create (e.g.
my-route
). - Region string
- (Defaults to provider
region
) The region in which the Route is attached to. - Rest
Pulumiverse.
Scaleway. Inputs. Iot Route Rest - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- S3
Pulumiverse.
Scaleway. Inputs. Iot Route S3 - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- Hub
Id string - The hub ID to which the Route will be attached to.
- Topic string
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
). - Database
Iot
Route Database Args - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- Name string
- The name of the IoT Route you want to create (e.g.
my-route
). - Region string
- (Defaults to provider
region
) The region in which the Route is attached to. - Rest
Iot
Route Rest Args - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- S3
Iot
Route S3Args - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- hub
Id String - The hub ID to which the Route will be attached to.
- topic String
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
). - database
Iot
Route Database - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- name String
- The name of the IoT Route you want to create (e.g.
my-route
). - region String
- (Defaults to provider
region
) The region in which the Route is attached to. - rest
Iot
Route Rest - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3
Iot
Route S3 - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- hub
Id string - The hub ID to which the Route will be attached to.
- topic string
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
). - database
Iot
Route Database - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- name string
- The name of the IoT Route you want to create (e.g.
my-route
). - region string
- (Defaults to provider
region
) The region in which the Route is attached to. - rest
Iot
Route Rest - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3
Iot
Route S3 - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- hub_
id str - The hub ID to which the Route will be attached to.
- topic str
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
). - database
Iot
Route Database Args - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- name str
- The name of the IoT Route you want to create (e.g.
my-route
). - region str
- (Defaults to provider
region
) The region in which the Route is attached to. - rest
Iot
Route Rest Args - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3
Iot
Route S3Args - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- hub
Id String - The hub ID to which the Route will be attached to.
- topic String
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
). - database Property Map
- Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- name String
- The name of the IoT Route you want to create (e.g.
my-route
). - region String
- (Defaults to provider
region
) The region in which the Route is attached to. - rest Property Map
- Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3 Property Map
- Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
Outputs
All input properties are implicitly available as output properties. Additionally, the IotRoute resource produces the following output properties:
- created_
at str - The date and time the Route was created.
- id str
- The provider-assigned unique ID for this managed resource.
Look up Existing IotRoute Resource
Get an existing IotRoute resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: IotRouteState, opts?: CustomResourceOptions): IotRoute
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
created_at: Optional[str] = None,
database: Optional[IotRouteDatabaseArgs] = None,
hub_id: Optional[str] = None,
name: Optional[str] = None,
region: Optional[str] = None,
rest: Optional[IotRouteRestArgs] = None,
s3: Optional[IotRouteS3Args] = None,
topic: Optional[str] = None) -> IotRoute
func GetIotRoute(ctx *Context, name string, id IDInput, state *IotRouteState, opts ...ResourceOption) (*IotRoute, error)
public static IotRoute Get(string name, Input<string> id, IotRouteState? state, CustomResourceOptions? opts = null)
public static IotRoute get(String name, Output<String> id, IotRouteState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Created
At string - The date and time the Route was created.
- Database
Pulumiverse.
Scaleway. Inputs. Iot Route Database - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- Hub
Id string - The hub ID to which the Route will be attached to.
- Name string
- The name of the IoT Route you want to create (e.g.
my-route
). - Region string
- (Defaults to provider
region
) The region in which the Route is attached to. - Rest
Pulumiverse.
Scaleway. Inputs. Iot Route Rest - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- S3
Pulumiverse.
Scaleway. Inputs. Iot Route S3 - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- Topic string
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
).
- Created
At string - The date and time the Route was created.
- Database
Iot
Route Database Args - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- Hub
Id string - The hub ID to which the Route will be attached to.
- Name string
- The name of the IoT Route you want to create (e.g.
my-route
). - Region string
- (Defaults to provider
region
) The region in which the Route is attached to. - Rest
Iot
Route Rest Args - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- S3
Iot
Route S3Args - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- Topic string
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
).
- created
At String - The date and time the Route was created.
- database
Iot
Route Database - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- hub
Id String - The hub ID to which the Route will be attached to.
- name String
- The name of the IoT Route you want to create (e.g.
my-route
). - region String
- (Defaults to provider
region
) The region in which the Route is attached to. - rest
Iot
Route Rest - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3
Iot
Route S3 - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- topic String
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
).
- created
At string - The date and time the Route was created.
- database
Iot
Route Database - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- hub
Id string - The hub ID to which the Route will be attached to.
- name string
- The name of the IoT Route you want to create (e.g.
my-route
). - region string
- (Defaults to provider
region
) The region in which the Route is attached to. - rest
Iot
Route Rest - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3
Iot
Route S3 - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- topic string
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
).
- created_
at str - The date and time the Route was created.
- database
Iot
Route Database Args - Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- hub_
id str - The hub ID to which the Route will be attached to.
- name str
- The name of the IoT Route you want to create (e.g.
my-route
). - region str
- (Defaults to provider
region
) The region in which the Route is attached to. - rest
Iot
Route Rest Args - Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3
Iot
Route S3Args - Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- topic str
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
).
- created
At String - The date and time the Route was created.
- database Property Map
- Configuration block for the database routes. See product documentation for a better understanding of the parameters.
- hub
Id String - The hub ID to which the Route will be attached to.
- name String
- The name of the IoT Route you want to create (e.g.
my-route
). - region String
- (Defaults to provider
region
) The region in which the Route is attached to. - rest Property Map
- Configuration block for the rest routes. See product documentation for a better understanding of the parameters.
- s3 Property Map
- Configuration block for the S3 routes. See product documentation for a better understanding of the parameters.
- topic String
- The topic the Route subscribes to, wildcards allowed (e.g.
thelab/+/temperature/#
).
Supporting Types
IotRouteDatabase, IotRouteDatabaseArgs
- Dbname string
- The database name (e.g.
measurements
). - Host string
- The database hostname. Can be an IP or a FQDN.
- Password string
- The database password.
- Port int
- The database port (e.g.
5432
) - Query string
- The SQL query that will be executed when receiving a message ($TOPIC and $PAYLOAD variables are available, see documentation, e.g.
INSERT INTO mytable(date, topic, value) VALUES (NOW(), $TOPIC, $PAYLOAD)
). - Username string
- The database username.
- Dbname string
- The database name (e.g.
measurements
). - Host string
- The database hostname. Can be an IP or a FQDN.
- Password string
- The database password.
- Port int
- The database port (e.g.
5432
) - Query string
- The SQL query that will be executed when receiving a message ($TOPIC and $PAYLOAD variables are available, see documentation, e.g.
INSERT INTO mytable(date, topic, value) VALUES (NOW(), $TOPIC, $PAYLOAD)
). - Username string
- The database username.
- dbname String
- The database name (e.g.
measurements
). - host String
- The database hostname. Can be an IP or a FQDN.
- password String
- The database password.
- port Integer
- The database port (e.g.
5432
) - query String
- The SQL query that will be executed when receiving a message ($TOPIC and $PAYLOAD variables are available, see documentation, e.g.
INSERT INTO mytable(date, topic, value) VALUES (NOW(), $TOPIC, $PAYLOAD)
). - username String
- The database username.
- dbname string
- The database name (e.g.
measurements
). - host string
- The database hostname. Can be an IP or a FQDN.
- password string
- The database password.
- port number
- The database port (e.g.
5432
) - query string
- The SQL query that will be executed when receiving a message ($TOPIC and $PAYLOAD variables are available, see documentation, e.g.
INSERT INTO mytable(date, topic, value) VALUES (NOW(), $TOPIC, $PAYLOAD)
). - username string
- The database username.
- dbname str
- The database name (e.g.
measurements
). - host str
- The database hostname. Can be an IP or a FQDN.
- password str
- The database password.
- port int
- The database port (e.g.
5432
) - query str
- The SQL query that will be executed when receiving a message ($TOPIC and $PAYLOAD variables are available, see documentation, e.g.
INSERT INTO mytable(date, topic, value) VALUES (NOW(), $TOPIC, $PAYLOAD)
). - username str
- The database username.
- dbname String
- The database name (e.g.
measurements
). - host String
- The database hostname. Can be an IP or a FQDN.
- password String
- The database password.
- port Number
- The database port (e.g.
5432
) - query String
- The SQL query that will be executed when receiving a message ($TOPIC and $PAYLOAD variables are available, see documentation, e.g.
INSERT INTO mytable(date, topic, value) VALUES (NOW(), $TOPIC, $PAYLOAD)
). - username String
- The database username.
IotRouteRest, IotRouteRestArgs
IotRouteS3, IotRouteS3Args
- Bucket
Name string - The name of the S3 route's destination bucket (e.g.
my-object-storage
). - Bucket
Region string - The region of the S3 route's destination bucket (e.g.
fr-par
). - Strategy string
- How the S3 route's objects will be created (e.g.
per_topic
). See documentation for behaviour details. - Object
Prefix string - The string to prefix object names with (e.g.
mykeyprefix-
).
- Bucket
Name string - The name of the S3 route's destination bucket (e.g.
my-object-storage
). - Bucket
Region string - The region of the S3 route's destination bucket (e.g.
fr-par
). - Strategy string
- How the S3 route's objects will be created (e.g.
per_topic
). See documentation for behaviour details. - Object
Prefix string - The string to prefix object names with (e.g.
mykeyprefix-
).
- bucket
Name String - The name of the S3 route's destination bucket (e.g.
my-object-storage
). - bucket
Region String - The region of the S3 route's destination bucket (e.g.
fr-par
). - strategy String
- How the S3 route's objects will be created (e.g.
per_topic
). See documentation for behaviour details. - object
Prefix String - The string to prefix object names with (e.g.
mykeyprefix-
).
- bucket
Name string - The name of the S3 route's destination bucket (e.g.
my-object-storage
). - bucket
Region string - The region of the S3 route's destination bucket (e.g.
fr-par
). - strategy string
- How the S3 route's objects will be created (e.g.
per_topic
). See documentation for behaviour details. - object
Prefix string - The string to prefix object names with (e.g.
mykeyprefix-
).
- bucket_
name str - The name of the S3 route's destination bucket (e.g.
my-object-storage
). - bucket_
region str - The region of the S3 route's destination bucket (e.g.
fr-par
). - strategy str
- How the S3 route's objects will be created (e.g.
per_topic
). See documentation for behaviour details. - object_
prefix str - The string to prefix object names with (e.g.
mykeyprefix-
).
- bucket
Name String - The name of the S3 route's destination bucket (e.g.
my-object-storage
). - bucket
Region String - The region of the S3 route's destination bucket (e.g.
fr-par
). - strategy String
- How the S3 route's objects will be created (e.g.
per_topic
). See documentation for behaviour details. - object
Prefix String - The string to prefix object names with (e.g.
mykeyprefix-
).
Import
IoT Routes can be imported using the {region}/{id}
, e.g.
bash
$ pulumi import scaleway:index/iotRoute:IotRoute route01 fr-par/11111111-1111-1111-1111-111111111111
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- scaleway pulumiverse/pulumi-scaleway
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
scaleway
Terraform Provider.