Documentation
¶
Overview ¶
Package iot provides methods and message types of the iot v1 API.
Index ¶
- Constants
- type API
- func (s *API) CreateDevice(req *CreateDeviceRequest, opts ...scw.RequestOption) (*CreateDeviceResponse, error)
- func (s *API) CreateHub(req *CreateHubRequest, opts ...scw.RequestOption) (*Hub, error)
- func (s *API) CreateNetwork(req *CreateNetworkRequest, opts ...scw.RequestOption) (*CreateNetworkResponse, error)
- func (s *API) CreateRoute(req *CreateRouteRequest, opts ...scw.RequestOption) (*Route, error)
- func (s *API) DeleteDevice(req *DeleteDeviceRequest, opts ...scw.RequestOption) error
- func (s *API) DeleteHub(req *DeleteHubRequest, opts ...scw.RequestOption) error
- func (s *API) DeleteNetwork(req *DeleteNetworkRequest, opts ...scw.RequestOption) error
- func (s *API) DeleteRoute(req *DeleteRouteRequest, opts ...scw.RequestOption) error
- func (s *API) DeleteTwinDocument(req *DeleteTwinDocumentRequest, opts ...scw.RequestOption) error
- func (s *API) DeleteTwinDocuments(req *DeleteTwinDocumentsRequest, opts ...scw.RequestOption) error
- func (s *API) DisableDevice(req *DisableDeviceRequest, opts ...scw.RequestOption) (*Device, error)
- func (s *API) DisableHub(req *DisableHubRequest, opts ...scw.RequestOption) (*Hub, error)
- func (s *API) EnableDevice(req *EnableDeviceRequest, opts ...scw.RequestOption) (*Device, error)
- func (s *API) EnableHub(req *EnableHubRequest, opts ...scw.RequestOption) (*Hub, error)
- func (s *API) GetDevice(req *GetDeviceRequest, opts ...scw.RequestOption) (*Device, error)
- func (s *API) GetDeviceCertificate(req *GetDeviceCertificateRequest, opts ...scw.RequestOption) (*GetDeviceCertificateResponse, error)
- func (s *API) GetDeviceMetrics(req *GetDeviceMetricsRequest, opts ...scw.RequestOption) (*GetDeviceMetricsResponse, error)deprecated
- func (s *API) GetHub(req *GetHubRequest, opts ...scw.RequestOption) (*Hub, error)
- func (s *API) GetHubCA(req *GetHubCARequest, opts ...scw.RequestOption) (*GetHubCAResponse, error)
- func (s *API) GetHubMetrics(req *GetHubMetricsRequest, opts ...scw.RequestOption) (*GetHubMetricsResponse, error)deprecated
- func (s *API) GetNetwork(req *GetNetworkRequest, opts ...scw.RequestOption) (*Network, error)
- func (s *API) GetRoute(req *GetRouteRequest, opts ...scw.RequestOption) (*Route, error)
- func (s *API) GetTwinDocument(req *GetTwinDocumentRequest, opts ...scw.RequestOption) (*TwinDocument, error)
- func (s *API) ListDevices(req *ListDevicesRequest, opts ...scw.RequestOption) (*ListDevicesResponse, error)
- func (s *API) ListHubs(req *ListHubsRequest, opts ...scw.RequestOption) (*ListHubsResponse, error)
- func (s *API) ListNetworks(req *ListNetworksRequest, opts ...scw.RequestOption) (*ListNetworksResponse, error)
- func (s *API) ListRoutes(req *ListRoutesRequest, opts ...scw.RequestOption) (*ListRoutesResponse, error)
- func (s *API) ListTwinDocuments(req *ListTwinDocumentsRequest, opts ...scw.RequestOption) (*ListTwinDocumentsResponse, error)
- func (s *API) PatchTwinDocument(req *PatchTwinDocumentRequest, opts ...scw.RequestOption) (*TwinDocument, error)
- func (s *API) PutTwinDocument(req *PutTwinDocumentRequest, opts ...scw.RequestOption) (*TwinDocument, error)
- func (s *API) Regions() []scw.Region
- func (s *API) RenewDeviceCertificate(req *RenewDeviceCertificateRequest, opts ...scw.RequestOption) (*RenewDeviceCertificateResponse, error)
- func (s *API) SetDeviceCertificate(req *SetDeviceCertificateRequest, opts ...scw.RequestOption) (*SetDeviceCertificateResponse, error)
- func (s *API) SetHubCA(req *SetHubCARequest, opts ...scw.RequestOption) (*Hub, error)
- func (s *API) UpdateDevice(req *UpdateDeviceRequest, opts ...scw.RequestOption) (*Device, error)
- func (s *API) UpdateHub(req *UpdateHubRequest, opts ...scw.RequestOption) (*Hub, error)
- func (s *API) UpdateRoute(req *UpdateRouteRequest, opts ...scw.RequestOption) (*Route, error)
- func (s *API) WaitForHub(req *WaitForHubRequest, opts ...scw.RequestOption) (*Hub, error)
- type Certificate
- type CreateDeviceRequest
- type CreateDeviceResponse
- type CreateHubRequest
- type CreateNetworkRequest
- type CreateNetworkResponse
- type CreateRouteRequest
- type CreateRouteRequestDatabaseConfig
- type CreateRouteRequestRestConfig
- type CreateRouteRequestS3Config
- type DeleteDeviceRequest
- type DeleteHubRequest
- type DeleteNetworkRequest
- type DeleteRouteRequest
- type DeleteTwinDocumentRequest
- type DeleteTwinDocumentsRequest
- type Device
- type DeviceMessageFilters
- type DeviceMessageFiltersRule
- type DeviceMessageFiltersRulePolicy
- type DeviceStatus
- type DisableDeviceRequest
- type DisableHubRequest
- type EnableDeviceRequest
- type EnableHubRequest
- type GetDeviceCertificateRequest
- type GetDeviceCertificateResponse
- type GetDeviceMetricsRequest
- type GetDeviceMetricsResponse
- type GetDeviceRequest
- type GetHubCARequest
- type GetHubCAResponse
- type GetHubMetricsRequest
- type GetHubMetricsResponse
- type GetHubRequest
- type GetNetworkRequest
- type GetRouteRequest
- type GetTwinDocumentRequest
- type Hub
- type HubProductPlan
- type HubStatus
- type HubTwinsGraphiteConfig
- type ListDevicesRequest
- type ListDevicesRequestOrderBy
- type ListDevicesResponse
- type ListHubsRequest
- type ListHubsRequestOrderBy
- type ListHubsResponse
- type ListNetworksRequest
- type ListNetworksRequestOrderBy
- type ListNetworksResponse
- type ListRoutesRequest
- type ListRoutesRequestOrderBy
- type ListRoutesResponse
- type ListTwinDocumentsRequest
- type ListTwinDocumentsResponse
- type ListTwinDocumentsResponseDocumentSummary
- type Network
- type NetworkNetworkType
- type PatchTwinDocumentRequest
- type PutTwinDocumentRequest
- type RenewDeviceCertificateRequest
- type RenewDeviceCertificateResponse
- type Route
- type RouteDatabaseConfig
- type RouteDatabaseConfigEngine
- type RouteRestConfig
- type RouteRestConfigHTTPVerb
- type RouteRouteType
- type RouteS3Config
- type RouteS3ConfigS3Strategy
- type RouteSummary
- type SetDeviceCertificateRequest
- type SetDeviceCertificateResponse
- type SetHubCARequest
- type TwinDocument
- type UpdateDeviceRequest
- type UpdateHubRequest
- type UpdateRouteRequest
- type UpdateRouteRequestDatabaseConfig
- type UpdateRouteRequestRestConfig
- type UpdateRouteRequestS3Config
- type WaitForHubRequest
Constants ¶
const ( DeviceMessageFiltersRulePolicyUnknown = DeviceMessageFiltersRulePolicy("unknown") DeviceMessageFiltersRulePolicyAccept = DeviceMessageFiltersRulePolicy("accept") DeviceMessageFiltersRulePolicyReject = DeviceMessageFiltersRulePolicy("reject") )
const ( DeviceStatusUnknown = DeviceStatus("unknown") DeviceStatusError = DeviceStatus("error") DeviceStatusEnabled = DeviceStatus("enabled") DeviceStatusDisabled = DeviceStatus("disabled") )
const ( HubProductPlanPlanUnknown = HubProductPlan("plan_unknown") HubProductPlanPlanDedicated = HubProductPlan("plan_dedicated") HubProductPlanPlanHa = HubProductPlan("plan_ha") )
const ( HubStatusUnknown = HubStatus("unknown") HubStatusError = HubStatus("error") HubStatusEnabling = HubStatus("enabling") HubStatusReady = HubStatus("ready") HubStatusDisabling = HubStatus("disabling") HubStatusDisabled = HubStatus("disabled") )
const ( ListDevicesRequestOrderByNameAsc = ListDevicesRequestOrderBy("name_asc") ListDevicesRequestOrderByNameDesc = ListDevicesRequestOrderBy("name_desc") ListDevicesRequestOrderByStatusAsc = ListDevicesRequestOrderBy("status_asc") ListDevicesRequestOrderByStatusDesc = ListDevicesRequestOrderBy("status_desc") ListDevicesRequestOrderByHubIDAsc = ListDevicesRequestOrderBy("hub_id_asc") ListDevicesRequestOrderByHubIDDesc = ListDevicesRequestOrderBy("hub_id_desc") ListDevicesRequestOrderByCreatedAtAsc = ListDevicesRequestOrderBy("created_at_asc") ListDevicesRequestOrderByCreatedAtDesc = ListDevicesRequestOrderBy("created_at_desc") ListDevicesRequestOrderByUpdatedAtAsc = ListDevicesRequestOrderBy("updated_at_asc") ListDevicesRequestOrderByUpdatedAtDesc = ListDevicesRequestOrderBy("updated_at_desc") ListDevicesRequestOrderByAllowInsecureAsc = ListDevicesRequestOrderBy("allow_insecure_asc") ListDevicesRequestOrderByAllowInsecureDesc = ListDevicesRequestOrderBy("allow_insecure_desc") )
const ( ListHubsRequestOrderByNameAsc = ListHubsRequestOrderBy("name_asc") ListHubsRequestOrderByNameDesc = ListHubsRequestOrderBy("name_desc") ListHubsRequestOrderByStatusAsc = ListHubsRequestOrderBy("status_asc") ListHubsRequestOrderByStatusDesc = ListHubsRequestOrderBy("status_desc") ListHubsRequestOrderByProductPlanAsc = ListHubsRequestOrderBy("product_plan_asc") ListHubsRequestOrderByProductPlanDesc = ListHubsRequestOrderBy("product_plan_desc") ListHubsRequestOrderByCreatedAtAsc = ListHubsRequestOrderBy("created_at_asc") ListHubsRequestOrderByCreatedAtDesc = ListHubsRequestOrderBy("created_at_desc") ListHubsRequestOrderByUpdatedAtAsc = ListHubsRequestOrderBy("updated_at_asc") ListHubsRequestOrderByUpdatedAtDesc = ListHubsRequestOrderBy("updated_at_desc") )
const ( ListNetworksRequestOrderByNameAsc = ListNetworksRequestOrderBy("name_asc") ListNetworksRequestOrderByNameDesc = ListNetworksRequestOrderBy("name_desc") ListNetworksRequestOrderByTypeAsc = ListNetworksRequestOrderBy("type_asc") ListNetworksRequestOrderByTypeDesc = ListNetworksRequestOrderBy("type_desc") ListNetworksRequestOrderByCreatedAtAsc = ListNetworksRequestOrderBy("created_at_asc") ListNetworksRequestOrderByCreatedAtDesc = ListNetworksRequestOrderBy("created_at_desc") )
const ( ListRoutesRequestOrderByNameAsc = ListRoutesRequestOrderBy("name_asc") ListRoutesRequestOrderByNameDesc = ListRoutesRequestOrderBy("name_desc") ListRoutesRequestOrderByHubIDAsc = ListRoutesRequestOrderBy("hub_id_asc") ListRoutesRequestOrderByHubIDDesc = ListRoutesRequestOrderBy("hub_id_desc") ListRoutesRequestOrderByTypeAsc = ListRoutesRequestOrderBy("type_asc") ListRoutesRequestOrderByTypeDesc = ListRoutesRequestOrderBy("type_desc") ListRoutesRequestOrderByCreatedAtAsc = ListRoutesRequestOrderBy("created_at_asc") ListRoutesRequestOrderByCreatedAtDesc = ListRoutesRequestOrderBy("created_at_desc") )
const ( NetworkNetworkTypeUnknown = NetworkNetworkType("unknown") NetworkNetworkTypeSigfox = NetworkNetworkType("sigfox") NetworkNetworkTypeRest = NetworkNetworkType("rest") )
const ( RouteDatabaseConfigEngineUnknown = RouteDatabaseConfigEngine("unknown") RouteDatabaseConfigEnginePostgresql = RouteDatabaseConfigEngine("postgresql") RouteDatabaseConfigEngineMysql = RouteDatabaseConfigEngine("mysql") )
const ( RouteRestConfigHTTPVerbUnknown = RouteRestConfigHTTPVerb("unknown") RouteRestConfigHTTPVerbGet = RouteRestConfigHTTPVerb("get") RouteRestConfigHTTPVerbPost = RouteRestConfigHTTPVerb("post") RouteRestConfigHTTPVerbPut = RouteRestConfigHTTPVerb("put") RouteRestConfigHTTPVerbPatch = RouteRestConfigHTTPVerb("patch") RouteRestConfigHTTPVerbDelete = RouteRestConfigHTTPVerb("delete") )
const ( RouteRouteTypeUnknown = RouteRouteType("unknown") RouteRouteTypeS3 = RouteRouteType("s3") RouteRouteTypeDatabase = RouteRouteType("database") RouteRouteTypeRest = RouteRouteType("rest") )
const ( RouteS3ConfigS3StrategyUnknown = RouteS3ConfigS3Strategy("unknown") RouteS3ConfigS3StrategyPerTopic = RouteS3ConfigS3Strategy("per_topic") RouteS3ConfigS3StrategyPerMessage = RouteS3ConfigS3Strategy("per_message") )
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type API ¶
type API struct {
// contains filtered or unexported fields
}
This API allows you to manage your IoT hubs and devices.
func (*API) CreateDevice ¶
func (s *API) CreateDevice(req *CreateDeviceRequest, opts ...scw.RequestOption) (*CreateDeviceResponse, error)
CreateDevice: Attach a device to a given Hub.
func (*API) CreateHub ¶
func (s *API) CreateHub(req *CreateHubRequest, opts ...scw.RequestOption) (*Hub, error)
CreateHub: Create a new Hub in the targeted region, specifying its configuration including name and product plan.
func (*API) CreateNetwork ¶
func (s *API) CreateNetwork(req *CreateNetworkRequest, opts ...scw.RequestOption) (*CreateNetworkResponse, error)
CreateNetwork: Create a new network for an existing hub. Beside the default network, you can add networks for different data providers. Possible network types are Sigfox and REST.
func (*API) CreateRoute ¶
func (s *API) CreateRoute(req *CreateRouteRequest, opts ...scw.RequestOption) (*Route, error)
CreateRoute: Multiple kinds of routes can be created, such as:
- Database Route Create a route that will record subscribed MQTT messages into your database. <b>You need to manage the database by yourself</b>.
- REST Route. Create a route that will call a REST API on received subscribed MQTT messages.
- Amazon S3 Routes. Create a route that will put subscribed MQTT messages into an Object Storage bucket. You need to create the bucket yourself and grant write access. Granting can be done with s3cmd (`s3cmd setacl s3://<my-bucket> --acl-grant=write:555c69c3-87d0-4bf8-80f1-99a2f757d031:555c69c3-87d0-4bf8-80f1-99a2f757d031`).
func (*API) DeleteDevice ¶
func (s *API) DeleteDevice(req *DeleteDeviceRequest, opts ...scw.RequestOption) error
DeleteDevice: Remove a specific device from the specific Hub it is attached to.
func (*API) DeleteHub ¶
func (s *API) DeleteHub(req *DeleteHubRequest, opts ...scw.RequestOption) error
DeleteHub: Delete an existing IoT Hub, specified by its Hub ID. Deleting a Hub is permanent, and cannot be undone.
func (*API) DeleteNetwork ¶
func (s *API) DeleteNetwork(req *DeleteNetworkRequest, opts ...scw.RequestOption) error
DeleteNetwork: Delete an existing network, specified by its network ID. Deleting a network is permanent, and cannot be undone.
func (*API) DeleteRoute ¶
func (s *API) DeleteRoute(req *DeleteRouteRequest, opts ...scw.RequestOption) error
DeleteRoute: Delete an existing route, specified by its route ID. Deleting a route is permanent, and cannot be undone.
func (*API) DeleteTwinDocument ¶
func (s *API) DeleteTwinDocument(req *DeleteTwinDocumentRequest, opts ...scw.RequestOption) error
DeleteTwinDocument: BETA - Delete a Cloud Twin Document.
func (*API) DeleteTwinDocuments ¶
func (s *API) DeleteTwinDocuments(req *DeleteTwinDocumentsRequest, opts ...scw.RequestOption) error
DeleteTwinDocuments: BETA - Delete all the documents of a Cloud Twin.
func (*API) DisableDevice ¶
func (s *API) DisableDevice(req *DisableDeviceRequest, opts ...scw.RequestOption) (*Device, error)
DisableDevice: Disable an existing device, specified by its device ID.
func (*API) DisableHub ¶
func (s *API) DisableHub(req *DisableHubRequest, opts ...scw.RequestOption) (*Hub, error)
DisableHub: Disable an existing IoT Hub, specified by its Hub ID.
func (*API) EnableDevice ¶
func (s *API) EnableDevice(req *EnableDeviceRequest, opts ...scw.RequestOption) (*Device, error)
EnableDevice: Enable a specific device, specified by its device ID.
func (*API) EnableHub ¶
func (s *API) EnableHub(req *EnableHubRequest, opts ...scw.RequestOption) (*Hub, error)
EnableHub: Enable an existing IoT Hub, specified by its Hub ID.
func (*API) GetDevice ¶
func (s *API) GetDevice(req *GetDeviceRequest, opts ...scw.RequestOption) (*Device, error)
GetDevice: Retrieve information about an existing device, specified by its device ID. Its full details, including name, status and ID, are returned in the response object.
func (*API) GetDeviceCertificate ¶
func (s *API) GetDeviceCertificate(req *GetDeviceCertificateRequest, opts ...scw.RequestOption) (*GetDeviceCertificateResponse, error)
GetDeviceCertificate: Get information for a particular PEM-encoded certificate, specified by the device ID. The response returns full details of the device, including its type of certificate.
func (*API) GetDeviceMetrics
deprecated
func (s *API) GetDeviceMetrics(req *GetDeviceMetricsRequest, opts ...scw.RequestOption) (*GetDeviceMetricsResponse, error)
Deprecated: GetDeviceMetrics: Get the metrics of an existing device, specified by its device ID.
func (*API) GetHub ¶
func (s *API) GetHub(req *GetHubRequest, opts ...scw.RequestOption) (*Hub, error)
GetHub: Retrieve information about an existing IoT Hub, specified by its Hub ID. Its full details, including name, status and endpoint, are returned in the response object.
func (*API) GetHubCA ¶
func (s *API) GetHubCA(req *GetHubCARequest, opts ...scw.RequestOption) (*GetHubCAResponse, error)
GetHubCA: Get information for a particular PEM-encoded certificate, specified by the Hub ID.
func (*API) GetHubMetrics
deprecated
func (s *API) GetHubMetrics(req *GetHubMetricsRequest, opts ...scw.RequestOption) (*GetHubMetricsResponse, error)
Deprecated: GetHubMetrics: Get the metrics of an existing IoT Hub, specified by its Hub ID.
func (*API) GetNetwork ¶
func (s *API) GetNetwork(req *GetNetworkRequest, opts ...scw.RequestOption) (*Network, error)
GetNetwork: Retrieve an existing network, specified by its network ID. The response returns full details of the network, including its type, the topic prefix and its endpoint.
func (*API) GetRoute ¶
func (s *API) GetRoute(req *GetRouteRequest, opts ...scw.RequestOption) (*Route, error)
GetRoute: Get information for a particular route, specified by the route ID. The response returns full details of the route, including its type, the topic it subscribes to and its configuration.
func (*API) GetTwinDocument ¶
func (s *API) GetTwinDocument(req *GetTwinDocumentRequest, opts ...scw.RequestOption) (*TwinDocument, error)
GetTwinDocument: BETA - Get a Cloud Twin Document.
func (*API) ListDevices ¶
func (s *API) ListDevices(req *ListDevicesRequest, opts ...scw.RequestOption) (*ListDevicesResponse, error)
ListDevices: List all devices in the specified region. By default, returned devices are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
func (*API) ListHubs ¶
func (s *API) ListHubs(req *ListHubsRequest, opts ...scw.RequestOption) (*ListHubsResponse, error)
ListHubs: List all Hubs in the specified zone. By default, returned Hubs are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
func (*API) ListNetworks ¶
func (s *API) ListNetworks(req *ListNetworksRequest, opts ...scw.RequestOption) (*ListNetworksResponse, error)
ListNetworks: List the networks.
func (*API) ListRoutes ¶
func (s *API) ListRoutes(req *ListRoutesRequest, opts ...scw.RequestOption) (*ListRoutesResponse, error)
ListRoutes: List all routes in the specified region. By default, returned routes are ordered by creation date in ascending order, though this can be modified via the `order_by` field.
func (*API) ListTwinDocuments ¶
func (s *API) ListTwinDocuments(req *ListTwinDocumentsRequest, opts ...scw.RequestOption) (*ListTwinDocumentsResponse, error)
ListTwinDocuments: BETA - List the documents of a Cloud Twin.
func (*API) PatchTwinDocument ¶
func (s *API) PatchTwinDocument(req *PatchTwinDocumentRequest, opts ...scw.RequestOption) (*TwinDocument, error)
PatchTwinDocument: BETA - Patch a Cloud Twin Document.
func (*API) PutTwinDocument ¶
func (s *API) PutTwinDocument(req *PutTwinDocumentRequest, opts ...scw.RequestOption) (*TwinDocument, error)
PutTwinDocument: BETA - Update a Cloud Twin Document.
func (*API) RenewDeviceCertificate ¶
func (s *API) RenewDeviceCertificate(req *RenewDeviceCertificateRequest, opts ...scw.RequestOption) (*RenewDeviceCertificateResponse, error)
RenewDeviceCertificate: Renew the certificate of an existing device, specified by its device ID.
func (*API) SetDeviceCertificate ¶
func (s *API) SetDeviceCertificate(req *SetDeviceCertificateRequest, opts ...scw.RequestOption) (*SetDeviceCertificateResponse, error)
SetDeviceCertificate: Switch the existing certificate of a given device with an EM-encoded custom certificate.
func (*API) SetHubCA ¶
func (s *API) SetHubCA(req *SetHubCARequest, opts ...scw.RequestOption) (*Hub, error)
SetHubCA: Set a particular PEM-encoded certificate, specified by the Hub ID.
func (*API) UpdateDevice ¶
func (s *API) UpdateDevice(req *UpdateDeviceRequest, opts ...scw.RequestOption) (*Device, error)
UpdateDevice: Update the parameters of an existing device, specified by its device ID.
func (*API) UpdateHub ¶
func (s *API) UpdateHub(req *UpdateHubRequest, opts ...scw.RequestOption) (*Hub, error)
UpdateHub: Update the parameters of an existing IoT Hub, specified by its Hub ID.
func (*API) UpdateRoute ¶
func (s *API) UpdateRoute(req *UpdateRouteRequest, opts ...scw.RequestOption) (*Route, error)
UpdateRoute: Update the parameters of an existing route, specified by its route ID.
func (*API) WaitForHub ¶
func (s *API) WaitForHub(req *WaitForHubRequest, opts ...scw.RequestOption) (*Hub, error)
WaitForHub waits for the hub to be in a ready state before returning.
type Certificate ¶
Certificate: certificate.
type CreateDeviceRequest ¶
type CreateDeviceRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Name: device name.
Name string `json:"name"`
// HubID: hub ID of the device.
HubID string `json:"hub_id"`
// AllowInsecure: defines whether to allow plain and server-authenticated SSL connections in addition to mutually-authenticated ones.
AllowInsecure bool `json:"allow_insecure"`
// AllowMultipleConnections: defines whether to allow multiple physical devices to connect with this device's credentials.
AllowMultipleConnections bool `json:"allow_multiple_connections"`
// MessageFilters: filter-sets to authorize or deny the device to publish/subscribe to specific topics.
MessageFilters *DeviceMessageFilters `json:"message_filters,omitempty"`
// Description: device description.
Description *string `json:"description,omitempty"`
}
CreateDeviceRequest: create device request.
type CreateDeviceResponse ¶
type CreateDeviceResponse struct {
// Device: information related to the created device.
Device *Device `json:"device"`
// Certificate: device certificate.
Certificate *Certificate `json:"certificate"`
}
CreateDeviceResponse: create device response.
type CreateHubRequest ¶
type CreateHubRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Name: hub name (up to 255 characters).
Name string `json:"name"`
// ProjectID: project/Organization ID to filter for, only Hubs from this Project/Organization will be returned.
ProjectID string `json:"project_id"`
// ProductPlan: hub product plan.
// Default value: plan_unknown
ProductPlan HubProductPlan `json:"product_plan"`
// DisableEvents: disable Hub events.
DisableEvents *bool `json:"disable_events,omitempty"`
// EventsTopicPrefix: topic prefix (default '$SCW/events') of Hub events.
EventsTopicPrefix *string `json:"events_topic_prefix,omitempty"`
// TwinsGraphiteConfig: bETA - not implemented yet.
// Precisely one of TwinsGraphiteConfig must be set.
TwinsGraphiteConfig *HubTwinsGraphiteConfig `json:"twins_graphite_config,omitempty"`
}
CreateHubRequest: create hub request.
type CreateNetworkRequest ¶
type CreateNetworkRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Name: network name.
Name string `json:"name"`
// Type: type of network to connect with.
// Default value: unknown
Type NetworkNetworkType `json:"type"`
// HubID: hub ID to connect the Network to.
HubID string `json:"hub_id"`
// TopicPrefix: topic prefix for the Network.
TopicPrefix string `json:"topic_prefix"`
}
CreateNetworkRequest: create network request.
type CreateNetworkResponse ¶
type CreateNetworkResponse struct {
// Network: information related to the created network.
Network *Network `json:"network"`
// Secret: endpoint Key to keep secret. This cannot be retrieved later.
Secret string `json:"secret"`
}
CreateNetworkResponse: create network response.
type CreateRouteRequest ¶
type CreateRouteRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Name: route name.
Name string `json:"name"`
// HubID: hub ID of the route.
HubID string `json:"hub_id"`
// Topic: topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters.
Topic string `json:"topic"`
// S3Config: if creating Amazon S3 Routes, Amazon S3-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
S3Config *CreateRouteRequestS3Config `json:"s3_config,omitempty"`
// DbConfig: if creating Database Route, DB-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
DbConfig *CreateRouteRequestDatabaseConfig `json:"db_config,omitempty"`
// RestConfig: if creating Rest Route, Rest-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
RestConfig *CreateRouteRequestRestConfig `json:"rest_config,omitempty"`
}
CreateRouteRequest: create route request.
type CreateRouteRequestDatabaseConfig ¶
type CreateRouteRequestDatabaseConfig struct {
Host string `json:"host"`
Port uint32 `json:"port"`
Dbname string `json:"dbname"`
Username string `json:"username"`
Password string `json:"password"`
Query string `json:"query"`
// Engine: default value: unknown
Engine RouteDatabaseConfigEngine `json:"engine"`
}
CreateRouteRequestDatabaseConfig: create route request database config.
type CreateRouteRequestRestConfig ¶
type CreateRouteRequestRestConfig struct {
// Verb: default value: unknown
Verb RouteRestConfigHTTPVerb `json:"verb"`
URI string `json:"uri"`
Headers map[string]string `json:"headers"`
}
CreateRouteRequestRestConfig: create route request rest config.
type CreateRouteRequestS3Config ¶
type CreateRouteRequestS3Config struct {
BucketRegion string `json:"bucket_region"`
BucketName string `json:"bucket_name"`
ObjectPrefix string `json:"object_prefix"`
// Strategy: default value: unknown
Strategy RouteS3ConfigS3Strategy `json:"strategy"`
}
CreateRouteRequestS3Config: create route request s3 config.
type DeleteDeviceRequest ¶
type DeleteDeviceRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
}
DeleteDeviceRequest: delete device request.
type DeleteHubRequest ¶
type DeleteHubRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// HubID: hub ID.
HubID string `json:"-"`
// DeleteDevices: defines whether to force the deletion of devices added to this Hub or reject the operation.
DeleteDevices *bool `json:"delete_devices,omitempty"`
}
DeleteHubRequest: delete hub request.
type DeleteNetworkRequest ¶
type DeleteNetworkRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// NetworkID: network ID.
NetworkID string `json:"-"`
}
DeleteNetworkRequest: delete network request.
type DeleteRouteRequest ¶
type DeleteRouteRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// RouteID: route ID.
RouteID string `json:"-"`
}
DeleteRouteRequest: delete route request.
type DeleteTwinDocumentRequest ¶
type DeleteTwinDocumentRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// TwinID: twin ID.
TwinID string `json:"-"`
// DocumentName: name of the document.
DocumentName string `json:"-"`
}
DeleteTwinDocumentRequest: delete twin document request.
type DeleteTwinDocumentsRequest ¶
type DeleteTwinDocumentsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// TwinID: twin ID.
TwinID string `json:"-"`
}
DeleteTwinDocumentsRequest: delete twin documents request.
type Device ¶
type Device struct {
// ID: device ID, also used as MQTT Client ID or username.
ID string `json:"id"`
// Name: device name.
Name string `json:"name"`
// Description: device description.
Description string `json:"description"`
// Status: device status.
// Default value: unknown
Status DeviceStatus `json:"status"`
// HubID: hub ID.
HubID string `json:"hub_id"`
// LastActivityAt: last connection/activity date of a device.
LastActivityAt *time.Time `json:"last_activity_at"`
// IsConnected: defines whether the device is connected to the Hub.
IsConnected bool `json:"is_connected"`
// AllowInsecure: defines whether to allow the device to connect to the Hub without TLS mutual authentication.
AllowInsecure bool `json:"allow_insecure"`
// AllowMultipleConnections: defines whether to allow multiple physical devices to connect to the Hub with this device's credentials.
AllowMultipleConnections bool `json:"allow_multiple_connections"`
// MessageFilters: filter-sets to restrict the topics the device can publish/subscribe to.
MessageFilters *DeviceMessageFilters `json:"message_filters"`
// HasCustomCertificate: assigning a custom certificate allows a device to authenticate using that specific certificate without checking the Hub's CA certificate.
HasCustomCertificate bool `json:"has_custom_certificate"`
// CreatedAt: date at which the device was added.
CreatedAt *time.Time `json:"created_at"`
// UpdatedAt: date at which the device was last modified.
UpdatedAt *time.Time `json:"updated_at"`
}
Device: device.
type DeviceMessageFilters ¶
type DeviceMessageFilters struct {
// Publish: filtering rule to restrict topics the device can publish to.
Publish *DeviceMessageFiltersRule `json:"publish"`
// Subscribe: filtering rule to restrict topics the device can subscribe to.
Subscribe *DeviceMessageFiltersRule `json:"subscribe"`
}
DeviceMessageFilters: device message filters.
type DeviceMessageFiltersRule ¶
type DeviceMessageFiltersRule struct {
// Policy: if set to `accept`, all topics in the topics list will be allowed, with all other topics being denied.
// If set to `reject`, all topics in the topics list will be denied, with all other topics being allowed.
// Default value: unknown
Policy DeviceMessageFiltersRulePolicy `json:"policy"`
// Topics: list of topics to accept or reject. It must be valid MQTT topics and up to 65535 characters.
Topics *[]string `json:"topics"`
}
DeviceMessageFiltersRule: device message filters rule.
type DeviceMessageFiltersRulePolicy ¶
type DeviceMessageFiltersRulePolicy string
func (DeviceMessageFiltersRulePolicy) MarshalJSON ¶
func (enum DeviceMessageFiltersRulePolicy) MarshalJSON() ([]byte, error)
func (DeviceMessageFiltersRulePolicy) String ¶
func (enum DeviceMessageFiltersRulePolicy) String() string
func (*DeviceMessageFiltersRulePolicy) UnmarshalJSON ¶
func (enum *DeviceMessageFiltersRulePolicy) UnmarshalJSON(data []byte) error
func (DeviceMessageFiltersRulePolicy) Values ¶
func (enum DeviceMessageFiltersRulePolicy) Values() []DeviceMessageFiltersRulePolicy
type DeviceStatus ¶
type DeviceStatus string
func (DeviceStatus) MarshalJSON ¶
func (enum DeviceStatus) MarshalJSON() ([]byte, error)
func (DeviceStatus) String ¶
func (enum DeviceStatus) String() string
func (*DeviceStatus) UnmarshalJSON ¶
func (enum *DeviceStatus) UnmarshalJSON(data []byte) error
func (DeviceStatus) Values ¶
func (enum DeviceStatus) Values() []DeviceStatus
type DisableDeviceRequest ¶
type DisableDeviceRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
}
DisableDeviceRequest: disable device request.
type DisableHubRequest ¶
type DisableHubRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// HubID: hub ID.
HubID string `json:"-"`
}
DisableHubRequest: disable hub request.
type EnableDeviceRequest ¶
type EnableDeviceRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
}
EnableDeviceRequest: enable device request.
type EnableHubRequest ¶
type EnableHubRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// HubID: hub ID.
HubID string `json:"-"`
}
EnableHubRequest: enable hub request.
type GetDeviceCertificateRequest ¶
type GetDeviceCertificateRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
}
GetDeviceCertificateRequest: get device certificate request.
type GetDeviceCertificateResponse ¶
type GetDeviceCertificateResponse struct {
// Device: information related to the created device.
Device *Device `json:"device"`
// CertificatePem: device certificate.
CertificatePem string `json:"certificate_pem"`
}
GetDeviceCertificateResponse: get device certificate response.
type GetDeviceMetricsRequest ¶
type GetDeviceMetricsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
// StartDate: start date used to compute the best scale for the returned metrics.
StartDate *time.Time `json:"start_date,omitempty"`
}
GetDeviceMetricsRequest: get device metrics request.
type GetDeviceMetricsResponse ¶
type GetDeviceMetricsResponse struct {
// Metrics: metrics for a device over the requested period.
Metrics []*scw.TimeSeries `json:"metrics"`
}
GetDeviceMetricsResponse: get device metrics response.
type GetDeviceRequest ¶
type GetDeviceRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
}
GetDeviceRequest: get device request.
type GetHubCARequest ¶
type GetHubCARequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
HubID string `json:"-"`
}
GetHubCARequest: get hub ca request.
type GetHubCAResponse ¶
type GetHubCAResponse struct {
CaCertPem string `json:"ca_cert_pem"`
}
GetHubCAResponse: get hub ca response.
type GetHubMetricsRequest ¶
type GetHubMetricsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// HubID: hub ID.
HubID string `json:"-"`
// StartDate: start date used to compute the best scale for returned metrics.
StartDate *time.Time `json:"start_date,omitempty"`
}
GetHubMetricsRequest: get hub metrics request.
type GetHubMetricsResponse ¶
type GetHubMetricsResponse struct {
// Metrics: metrics for a Hub over the requested period.
Metrics []*scw.TimeSeries `json:"metrics"`
}
GetHubMetricsResponse: get hub metrics response.
type GetHubRequest ¶
type GetHubRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// HubID: hub ID.
HubID string `json:"-"`
}
GetHubRequest: get hub request.
type GetNetworkRequest ¶
type GetNetworkRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// NetworkID: network ID.
NetworkID string `json:"-"`
}
GetNetworkRequest: get network request.
type GetRouteRequest ¶
type GetRouteRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// RouteID: route ID.
RouteID string `json:"-"`
}
GetRouteRequest: get route request.
type GetTwinDocumentRequest ¶
type GetTwinDocumentRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// TwinID: twin ID.
TwinID string `json:"-"`
// DocumentName: name of the document.
DocumentName string `json:"-"`
}
GetTwinDocumentRequest: get twin document request.
type Hub ¶
type Hub struct {
// ID: hub ID.
ID string `json:"id"`
// Name: hub name.
Name string `json:"name"`
// Status: current status of the Hub.
// Default value: unknown
Status HubStatus `json:"status"`
// ProductPlan: hub feature set.
// Default value: plan_unknown
ProductPlan HubProductPlan `json:"product_plan"`
// Enabled: defines whether the hub has been enabled.
Enabled bool `json:"enabled"`
// DeviceCount: number of registered devices.
DeviceCount uint64 `json:"device_count"`
// ConnectedDeviceCount: number of currently connected devices.
ConnectedDeviceCount uint64 `json:"connected_device_count"`
// Endpoint: devices should be connected to this host. Port may be 1883 (MQTT), 8883 (MQTT over TLS), 80 (MQTT over Websocket) or 443 (MQTT over Websocket over TLS).
Endpoint string `json:"endpoint"`
// DisableEvents: defines whether to disable Hub events.
DisableEvents bool `json:"disable_events"`
// EventsTopicPrefix: hub events topic prefix.
EventsTopicPrefix string `json:"events_topic_prefix"`
// Region: region of the Hub.
Region scw.Region `json:"region"`
// CreatedAt: hub creation date.
CreatedAt *time.Time `json:"created_at"`
// UpdatedAt: hub last modification date.
UpdatedAt *time.Time `json:"updated_at"`
// ProjectID: project owning the resource.
ProjectID string `json:"project_id"`
// OrganizationID: organization owning the resource.
OrganizationID string `json:"organization_id"`
// EnableDeviceAutoProvisioning: when an unknown device connects to your hub using a valid certificate chain, it will be automatically provisioned inside your Hub. The Hub uses the common name of the device certifcate to find out if a device with the same name already exists. This setting can only be enabled on a hub with a custom certificate authority.
EnableDeviceAutoProvisioning bool `json:"enable_device_auto_provisioning"`
// HasCustomCa: flag is automatically set to `false` after Hub creation, as Hub certificates are managed by Scaleway. Once a custom certificate authority is set, the flag will be set to `true`.
HasCustomCa bool `json:"has_custom_ca"`
// TwinsGraphiteConfig: bETA - not implemented yet.
// Precisely one of TwinsGraphiteConfig must be set.
TwinsGraphiteConfig *HubTwinsGraphiteConfig `json:"twins_graphite_config,omitempty"`
}
Hub: hub.
type HubProductPlan ¶
type HubProductPlan string
func (HubProductPlan) MarshalJSON ¶
func (enum HubProductPlan) MarshalJSON() ([]byte, error)
func (HubProductPlan) String ¶
func (enum HubProductPlan) String() string
func (*HubProductPlan) UnmarshalJSON ¶
func (enum *HubProductPlan) UnmarshalJSON(data []byte) error
func (HubProductPlan) Values ¶
func (enum HubProductPlan) Values() []HubProductPlan
type HubStatus ¶
type HubStatus string
func (HubStatus) MarshalJSON ¶
func (*HubStatus) UnmarshalJSON ¶
type HubTwinsGraphiteConfig ¶
type HubTwinsGraphiteConfig struct {
PushURI string `json:"push_uri"`
}
HubTwinsGraphiteConfig: hub twins graphite config.
type ListDevicesRequest ¶
type ListDevicesRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Page: page number to return, from the paginated results.
Page *int32 `json:"-"`
// PageSize: number of devices to return within a page. Maximum value is 100.
PageSize *uint32 `json:"-"`
// OrderBy: ordering of requested devices.
// Default value: name_asc
OrderBy ListDevicesRequestOrderBy `json:"-"`
// Name: name to filter for, only devices with this name will be returned.
Name *string `json:"-"`
// HubID: hub ID to filter for, only devices attached to this Hub will be returned.
HubID *string `json:"-"`
// AllowInsecure: defines wheter to filter the allow_insecure flag.
AllowInsecure *bool `json:"-"`
// Status: device status (enabled, disabled, etc.).
// Default value: unknown
Status DeviceStatus `json:"-"`
}
ListDevicesRequest: list devices request.
type ListDevicesRequestOrderBy ¶
type ListDevicesRequestOrderBy string
func (ListDevicesRequestOrderBy) MarshalJSON ¶
func (enum ListDevicesRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListDevicesRequestOrderBy) String ¶
func (enum ListDevicesRequestOrderBy) String() string
func (*ListDevicesRequestOrderBy) UnmarshalJSON ¶
func (enum *ListDevicesRequestOrderBy) UnmarshalJSON(data []byte) error
func (ListDevicesRequestOrderBy) Values ¶
func (enum ListDevicesRequestOrderBy) Values() []ListDevicesRequestOrderBy
type ListDevicesResponse ¶
type ListDevicesResponse struct {
// TotalCount: total number of devices.
TotalCount uint32 `json:"total_count"`
// Devices: page of devices.
Devices []*Device `json:"devices"`
}
ListDevicesResponse: list devices response.
func (*ListDevicesResponse) UnsafeAppend ¶
func (r *ListDevicesResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListDevicesResponse) UnsafeGetTotalCount ¶
func (r *ListDevicesResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type ListHubsRequest ¶
type ListHubsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Page: page number to return, from the paginated results.
Page *int32 `json:"-"`
// PageSize: number of Hubs to return within a page. Maximum value is 100.
PageSize *uint32 `json:"-"`
// OrderBy: sort order of Hubs in the response.
// Default value: name_asc
OrderBy ListHubsRequestOrderBy `json:"-"`
// ProjectID: only list Hubs of this Project ID.
ProjectID *string `json:"-"`
// OrganizationID: only list Hubs of this Organization ID.
OrganizationID *string `json:"-"`
// Name: hub name.
Name *string `json:"-"`
}
ListHubsRequest: list hubs request.
type ListHubsRequestOrderBy ¶
type ListHubsRequestOrderBy string
func (ListHubsRequestOrderBy) MarshalJSON ¶
func (enum ListHubsRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListHubsRequestOrderBy) String ¶
func (enum ListHubsRequestOrderBy) String() string
func (*ListHubsRequestOrderBy) UnmarshalJSON ¶
func (enum *ListHubsRequestOrderBy) UnmarshalJSON(data []byte) error
func (ListHubsRequestOrderBy) Values ¶
func (enum ListHubsRequestOrderBy) Values() []ListHubsRequestOrderBy
type ListHubsResponse ¶
type ListHubsResponse struct {
// TotalCount: total number of Hubs.
TotalCount uint32 `json:"total_count"`
// Hubs: a page of hubs.
Hubs []*Hub `json:"hubs"`
}
ListHubsResponse: list hubs response.
func (*ListHubsResponse) UnsafeAppend ¶
func (r *ListHubsResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListHubsResponse) UnsafeGetTotalCount ¶
func (r *ListHubsResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type ListNetworksRequest ¶
type ListNetworksRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Page: page number to return, from the paginated results.
Page *int32 `json:"-"`
// PageSize: number of networks to return. The maximum value is 100.
PageSize *uint32 `json:"-"`
// OrderBy: ordering of requested routes.
// Default value: name_asc
OrderBy ListNetworksRequestOrderBy `json:"-"`
// Name: network name to filter for.
Name *string `json:"-"`
// HubID: hub ID to filter for.
HubID *string `json:"-"`
// TopicPrefix: topic prefix to filter for.
TopicPrefix *string `json:"-"`
}
ListNetworksRequest: list networks request.
type ListNetworksRequestOrderBy ¶
type ListNetworksRequestOrderBy string
func (ListNetworksRequestOrderBy) MarshalJSON ¶
func (enum ListNetworksRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListNetworksRequestOrderBy) String ¶
func (enum ListNetworksRequestOrderBy) String() string
func (*ListNetworksRequestOrderBy) UnmarshalJSON ¶
func (enum *ListNetworksRequestOrderBy) UnmarshalJSON(data []byte) error
func (ListNetworksRequestOrderBy) Values ¶
func (enum ListNetworksRequestOrderBy) Values() []ListNetworksRequestOrderBy
type ListNetworksResponse ¶
type ListNetworksResponse struct {
// TotalCount: total number of Networks.
TotalCount uint32 `json:"total_count"`
// Networks: page of networks.
Networks []*Network `json:"networks"`
}
ListNetworksResponse: list networks response.
func (*ListNetworksResponse) UnsafeAppend ¶
func (r *ListNetworksResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListNetworksResponse) UnsafeGetTotalCount ¶
func (r *ListNetworksResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type ListRoutesRequest ¶
type ListRoutesRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// Page: page number to return, from the paginated results.
Page *int32 `json:"-"`
// PageSize: number of routes to return within a page. Maximum value is 100.
PageSize *uint32 `json:"-"`
// OrderBy: ordering of requested routes.
// Default value: name_asc
OrderBy ListRoutesRequestOrderBy `json:"-"`
// HubID: hub ID to filter for.
HubID *string `json:"-"`
// Name: route name to filter for.
Name *string `json:"-"`
}
ListRoutesRequest: list routes request.
type ListRoutesRequestOrderBy ¶
type ListRoutesRequestOrderBy string
func (ListRoutesRequestOrderBy) MarshalJSON ¶
func (enum ListRoutesRequestOrderBy) MarshalJSON() ([]byte, error)
func (ListRoutesRequestOrderBy) String ¶
func (enum ListRoutesRequestOrderBy) String() string
func (*ListRoutesRequestOrderBy) UnmarshalJSON ¶
func (enum *ListRoutesRequestOrderBy) UnmarshalJSON(data []byte) error
func (ListRoutesRequestOrderBy) Values ¶
func (enum ListRoutesRequestOrderBy) Values() []ListRoutesRequestOrderBy
type ListRoutesResponse ¶
type ListRoutesResponse struct {
// TotalCount: total number of routes.
TotalCount uint32 `json:"total_count"`
// Routes: page of routes.
Routes []*RouteSummary `json:"routes"`
}
ListRoutesResponse: list routes response.
func (*ListRoutesResponse) UnsafeAppend ¶
func (r *ListRoutesResponse) UnsafeAppend(res interface{}) (uint32, error)
UnsafeAppend should not be used Internal usage only
func (*ListRoutesResponse) UnsafeGetTotalCount ¶
func (r *ListRoutesResponse) UnsafeGetTotalCount() uint32
UnsafeGetTotalCount should not be used Internal usage only
type ListTwinDocumentsRequest ¶
type ListTwinDocumentsRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// TwinID: twin ID.
TwinID string `json:"-"`
}
ListTwinDocumentsRequest: list twin documents request.
type ListTwinDocumentsResponse ¶
type ListTwinDocumentsResponse struct {
// Documents: list of the twin document.
Documents []*ListTwinDocumentsResponseDocumentSummary `json:"documents"`
}
ListTwinDocumentsResponse: list twin documents response.
type ListTwinDocumentsResponseDocumentSummary ¶
type ListTwinDocumentsResponseDocumentSummary struct {
// DocumentName: name of the document.
DocumentName string `json:"document_name"`
}
ListTwinDocumentsResponseDocumentSummary: list twin documents response document summary.
type Network ¶
type Network struct {
// ID: network ID.
ID string `json:"id"`
// Name: network name.
Name string `json:"name"`
// Type: type of network to connect with.
// Default value: unknown
Type NetworkNetworkType `json:"type"`
// Endpoint: endpoint to use for interacting with the network.
Endpoint string `json:"endpoint"`
// HubID: hub ID to connect the Network to.
HubID string `json:"hub_id"`
// CreatedAt: date at which the network was created.
CreatedAt *time.Time `json:"created_at"`
// TopicPrefix: this prefix will be prepended to all topics for this Network.
TopicPrefix string `json:"topic_prefix"`
}
Network: network.
type NetworkNetworkType ¶
type NetworkNetworkType string
func (NetworkNetworkType) MarshalJSON ¶
func (enum NetworkNetworkType) MarshalJSON() ([]byte, error)
func (NetworkNetworkType) String ¶
func (enum NetworkNetworkType) String() string
func (*NetworkNetworkType) UnmarshalJSON ¶
func (enum *NetworkNetworkType) UnmarshalJSON(data []byte) error
func (NetworkNetworkType) Values ¶
func (enum NetworkNetworkType) Values() []NetworkNetworkType
type PatchTwinDocumentRequest ¶
type PatchTwinDocumentRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// TwinID: twin ID.
TwinID string `json:"-"`
// DocumentName: name of the document.
DocumentName string `json:"-"`
// Version: if set, ensures that the current version of the document matches before persisting the update.
Version *uint32 `json:"version,omitempty"`
// Data: a json data that will be applied on the document's current data.
// Patching rules:
// * The patch goes recursively through the patch objects.
// * If the patch object property is null, it is removed from the final object.
// * If the patch object property is a value (number, strings, bool, arrays), it is replaced.
// * If the patch object property is an object, the previous rules will be applied recursively on it.
Data *scw.JSONObject `json:"data,omitempty"`
}
PatchTwinDocumentRequest: patch twin document request.
type PutTwinDocumentRequest ¶
type PutTwinDocumentRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// TwinID: twin ID.
TwinID string `json:"-"`
// DocumentName: name of the document.
DocumentName string `json:"-"`
// Version: if set, ensures that the current version of the document matches before persisting the update.
Version *uint32 `json:"version,omitempty"`
// Data: new data that will replace the contents of the document.
Data *scw.JSONObject `json:"data,omitempty"`
}
PutTwinDocumentRequest: put twin document request.
type RenewDeviceCertificateRequest ¶
type RenewDeviceCertificateRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
}
RenewDeviceCertificateRequest: renew device certificate request.
type RenewDeviceCertificateResponse ¶
type RenewDeviceCertificateResponse struct {
// Device: information related to the created device.
Device *Device `json:"device"`
// Certificate: device certificate.
Certificate *Certificate `json:"certificate"`
}
RenewDeviceCertificateResponse: renew device certificate response.
type Route ¶
type Route struct {
// ID: route ID.
ID string `json:"id"`
// Name: route name.
Name string `json:"name"`
// HubID: hub ID of the route.
HubID string `json:"hub_id"`
// Topic: topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters.
Topic string `json:"topic"`
// Type: route type.
// Default value: unknown
Type RouteRouteType `json:"type"`
// CreatedAt: date at which the route was created.
CreatedAt *time.Time `json:"created_at"`
// S3Config: when using Amazon S3 Routes, Amazon S3-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
S3Config *RouteS3Config `json:"s3_config,omitempty"`
// DbConfig: when using Database Route, DB-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
DbConfig *RouteDatabaseConfig `json:"db_config,omitempty"`
// RestConfig: when using Rest Route, Rest-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
RestConfig *RouteRestConfig `json:"rest_config,omitempty"`
// UpdatedAt: date at which the route was last updated.
UpdatedAt *time.Time `json:"updated_at"`
}
Route: route.
type RouteDatabaseConfig ¶
type RouteDatabaseConfig struct {
// Engine: database engine the route will connect to. If not specified, the default database will be 'PostgreSQL'.
// Default value: unknown
Engine RouteDatabaseConfigEngine `json:"engine"`
// Host: database host.
Host string `json:"host"`
// Port: database port.
Port uint32 `json:"port"`
// Dbname: database name.
Dbname string `json:"dbname"`
// Username: database username. Make sure this account can execute the provided query.
Username string `json:"username"`
// Password: database password.
Password string `json:"password"`
// Query: SQL query to be executed ($TOPIC and $PAYLOAD variables are available, see documentation).
Query string `json:"query"`
}
RouteDatabaseConfig: route database config.
type RouteDatabaseConfigEngine ¶
type RouteDatabaseConfigEngine string
func (RouteDatabaseConfigEngine) MarshalJSON ¶
func (enum RouteDatabaseConfigEngine) MarshalJSON() ([]byte, error)
func (RouteDatabaseConfigEngine) String ¶
func (enum RouteDatabaseConfigEngine) String() string
func (*RouteDatabaseConfigEngine) UnmarshalJSON ¶
func (enum *RouteDatabaseConfigEngine) UnmarshalJSON(data []byte) error
func (RouteDatabaseConfigEngine) Values ¶
func (enum RouteDatabaseConfigEngine) Values() []RouteDatabaseConfigEngine
type RouteRestConfig ¶
type RouteRestConfig struct {
// Verb: HTTP verb used to call REST URI.
// Default value: unknown
Verb RouteRestConfigHTTPVerb `json:"verb"`
// URI: URI of the REST endpoint.
URI string `json:"uri"`
// Headers: HTTP call extra headers.
Headers map[string]string `json:"headers"`
}
RouteRestConfig: route rest config.
type RouteRestConfigHTTPVerb ¶
type RouteRestConfigHTTPVerb string
func (RouteRestConfigHTTPVerb) MarshalJSON ¶
func (enum RouteRestConfigHTTPVerb) MarshalJSON() ([]byte, error)
func (RouteRestConfigHTTPVerb) String ¶
func (enum RouteRestConfigHTTPVerb) String() string
func (*RouteRestConfigHTTPVerb) UnmarshalJSON ¶
func (enum *RouteRestConfigHTTPVerb) UnmarshalJSON(data []byte) error
func (RouteRestConfigHTTPVerb) Values ¶
func (enum RouteRestConfigHTTPVerb) Values() []RouteRestConfigHTTPVerb
type RouteRouteType ¶
type RouteRouteType string
func (RouteRouteType) MarshalJSON ¶
func (enum RouteRouteType) MarshalJSON() ([]byte, error)
func (RouteRouteType) String ¶
func (enum RouteRouteType) String() string
func (*RouteRouteType) UnmarshalJSON ¶
func (enum *RouteRouteType) UnmarshalJSON(data []byte) error
func (RouteRouteType) Values ¶
func (enum RouteRouteType) Values() []RouteRouteType
type RouteS3Config ¶
type RouteS3Config struct {
// BucketRegion: region of the Amazon S3 route's destination bucket (e.g., 'fr-par').
BucketRegion string `json:"bucket_region"`
// BucketName: destination bucket name of the Amazon S3 route.
BucketName string `json:"bucket_name"`
// ObjectPrefix: optional string to prefix object names with.
ObjectPrefix string `json:"object_prefix"`
// Strategy: how the Amazon S3 route's objects will be created: one per topic or one per message.
// Default value: unknown
Strategy RouteS3ConfigS3Strategy `json:"strategy"`
}
RouteS3Config: route s3 config.
type RouteS3ConfigS3Strategy ¶
type RouteS3ConfigS3Strategy string
func (RouteS3ConfigS3Strategy) MarshalJSON ¶
func (enum RouteS3ConfigS3Strategy) MarshalJSON() ([]byte, error)
func (RouteS3ConfigS3Strategy) String ¶
func (enum RouteS3ConfigS3Strategy) String() string
func (*RouteS3ConfigS3Strategy) UnmarshalJSON ¶
func (enum *RouteS3ConfigS3Strategy) UnmarshalJSON(data []byte) error
func (RouteS3ConfigS3Strategy) Values ¶
func (enum RouteS3ConfigS3Strategy) Values() []RouteS3ConfigS3Strategy
type RouteSummary ¶
type RouteSummary struct {
// ID: route ID.
ID string `json:"id"`
// Name: route name.
Name string `json:"name"`
// HubID: hub ID of the route.
HubID string `json:"hub_id"`
// Topic: topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters.
Topic string `json:"topic"`
// Type: route type.
// Default value: unknown
Type RouteRouteType `json:"type"`
// CreatedAt: date at which the route was created.
CreatedAt *time.Time `json:"created_at"`
// UpdatedAt: date at which the route was last updated.
UpdatedAt *time.Time `json:"updated_at"`
}
RouteSummary: route summary.
type SetDeviceCertificateRequest ¶
type SetDeviceCertificateRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
// CertificatePem: pEM-encoded custom certificate.
CertificatePem string `json:"certificate_pem"`
}
SetDeviceCertificateRequest: set device certificate request.
type SetDeviceCertificateResponse ¶
type SetDeviceCertificateResponse struct {
Device *Device `json:"device"`
CertificatePem string `json:"certificate_pem"`
}
SetDeviceCertificateResponse: set device certificate response.
type SetHubCARequest ¶
type SetHubCARequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// HubID: hub ID.
HubID string `json:"-"`
// CaCertPem: cA's PEM-encoded certificate.
CaCertPem string `json:"ca_cert_pem"`
// ChallengeCertPem: challenge is a PEM-encoded certificate that acts as proof of possession of the CA. It must be signed by the CA, and have a Common Name equal to the Hub ID.
ChallengeCertPem string `json:"challenge_cert_pem"`
}
SetHubCARequest: set hub ca request.
type TwinDocument ¶
type TwinDocument struct {
// TwinID: parent twin ID of the document.
TwinID string `json:"twin_id"`
// DocumentName: name of the document.
DocumentName string `json:"document_name"`
// Version: new version of the document.
Version uint32 `json:"version"`
// Data: new data related to the document.
Data *scw.JSONObject `json:"data"`
}
TwinDocument: twin document.
type UpdateDeviceRequest ¶
type UpdateDeviceRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// DeviceID: device ID.
DeviceID string `json:"-"`
// Description: description for the device.
Description *string `json:"description,omitempty"`
// AllowInsecure: defines whether to allow plain and server-authenticated SSL connections in addition to mutually-authenticated ones.
AllowInsecure *bool `json:"allow_insecure,omitempty"`
// AllowMultipleConnections: defines whether to allow multiple physical devices to connect with this device's credentials.
AllowMultipleConnections *bool `json:"allow_multiple_connections,omitempty"`
// MessageFilters: filter-sets to restrict the topics the device can publish/subscribe to.
MessageFilters *DeviceMessageFilters `json:"message_filters,omitempty"`
// HubID: change Hub for this device, additional fees may apply, see IoT Hub pricing.
HubID *string `json:"hub_id,omitempty"`
}
UpdateDeviceRequest: update device request.
type UpdateHubRequest ¶
type UpdateHubRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// HubID: ID of the Hub you want to update.
HubID string `json:"-"`
// Name: hub name (up to 255 characters).
Name *string `json:"name,omitempty"`
// ProductPlan: hub product plan.
// Default value: plan_unknown
ProductPlan HubProductPlan `json:"product_plan"`
// DisableEvents: disable Hub events.
DisableEvents *bool `json:"disable_events,omitempty"`
// EventsTopicPrefix: topic prefix of Hub events.
EventsTopicPrefix *string `json:"events_topic_prefix,omitempty"`
// EnableDeviceAutoProvisioning: enable device auto provisioning.
EnableDeviceAutoProvisioning *bool `json:"enable_device_auto_provisioning,omitempty"`
// TwinsGraphiteConfig: bETA - not implemented yet.
// Precisely one of TwinsGraphiteConfig must be set.
TwinsGraphiteConfig *HubTwinsGraphiteConfig `json:"twins_graphite_config,omitempty"`
}
UpdateHubRequest: update hub request.
type UpdateRouteRequest ¶
type UpdateRouteRequest struct {
// Region: region to target. If none is passed will use default region from the config.
Region scw.Region `json:"-"`
// RouteID: route id.
RouteID string `json:"-"`
// Name: route name.
Name *string `json:"name,omitempty"`
// Topic: topic the route subscribes to. It must be a valid MQTT topic and up to 65535 characters.
Topic *string `json:"topic,omitempty"`
// S3Config: when updating Amazon S3 Route, Amazon S3-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
S3Config *UpdateRouteRequestS3Config `json:"s3_config,omitempty"`
// DbConfig: when updating Database Route, DB-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
DbConfig *UpdateRouteRequestDatabaseConfig `json:"db_config,omitempty"`
// RestConfig: when updating Rest Route, Rest-specific configuration fields.
// Precisely one of S3Config, DbConfig, RestConfig must be set.
RestConfig *UpdateRouteRequestRestConfig `json:"rest_config,omitempty"`
}
UpdateRouteRequest: update route request.
type UpdateRouteRequestDatabaseConfig ¶
type UpdateRouteRequestDatabaseConfig struct {
Host *string `json:"host"`
Port *uint32 `json:"port"`
Dbname *string `json:"dbname"`
Username *string `json:"username"`
Password *string `json:"password"`
Query *string `json:"query"`
// Engine: default value: unknown
Engine RouteDatabaseConfigEngine `json:"engine"`
}
UpdateRouteRequestDatabaseConfig: update route request database config.
type UpdateRouteRequestRestConfig ¶
type UpdateRouteRequestRestConfig struct {
// Verb: default value: unknown
Verb RouteRestConfigHTTPVerb `json:"verb"`
URI *string `json:"uri"`
Headers *map[string]string `json:"headers"`
}
UpdateRouteRequestRestConfig: update route request rest config.
type UpdateRouteRequestS3Config ¶
type UpdateRouteRequestS3Config struct {
BucketRegion *string `json:"bucket_region"`
BucketName *string `json:"bucket_name"`
ObjectPrefix *string `json:"object_prefix"`
// Strategy: default value: unknown
Strategy RouteS3ConfigS3Strategy `json:"strategy"`
}
UpdateRouteRequestS3Config: update route request s3 config.