client

package
v0.0.1-alpha.0...-5fa1b17 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 15, 2017 License: Apache-2.0 Imports: 11 Imported by: 1

Documentation

Overview

Package client is library to call the Sakura-IoT APIs

Basic usage

The basic functions of this package are provided by the SakuraAPIClient struct.

An instance of the SakuraAPIClient struct can be referenced from the following fields.

// Instance of SakuraAPIClient
client.SakuraAPI

In order to use the SakuraIoT APIs , API-key must be set for this instance as follows. If the API-key is not set, or if an invalid API-key is specified, it will results in a runtime error.

// Set API-key to instance of SakuraAPIClient
client.SakuraAPI.SetAPIKey(token , secret)

CRUD operation for each resource

There is a structs that to set values of parameters for each resource and each operation. In operation, please set parameters through these structs.

For more detail, please see follow Example

Example (Create)
package main

import (
	"fmt"
	"github.com/yamamoto-febc/sakuraio-api/client"
	"github.com/yamamoto-febc/sakuraio-api/gen/models"
)

func main() {

	token := "[put-your-token]"
	secret := "[put-your-secret]"
	projectName := "project-name"

	// Instance of SakuraAPIClient
	c := client.SakuraAPI

	// Set API-key to instance of SakuraAPIClient
	c.SetAPIKey(token, secret)

	// Create a parameter to create a project
	p := c.NewCreateProjectParam()
	p.SetProject(&models.ProjectUpdate{
		Name: &projectName,
	})

	// Call create API [POST /project/]
	project, err := c.CreateProject(p)
	if err != nil {
		panic(err)
	}

	fmt.Printf("Created Project: ID=%d , Name=%s", project.ID, project.Name)
}
Output:

Example (Delete)
package main

import (
	"github.com/yamamoto-febc/sakuraio-api/client"
)

func main() {
	token := "[put-your-token]"
	secret := "[put-your-secret]"
	targetProjectID := int64(999999999)

	// Instance of SakuraAPIClient
	c := client.SakuraAPI

	// Set API-key to instance of SakuraAPIClient
	c.SetAPIKey(token, secret)

	// Create a parameter to delete a project
	p := c.NewDeleteProjectParam(targetProjectID)

	// Call read API [DELETE /project/{ProjectID}/]
	err := c.DeleteProject(p)
	if err != nil {
		panic(err)
	}
}
Output:

Example (Find)
package main

import (
	"fmt"
	"github.com/yamamoto-febc/sakuraio-api/client"
)

func main() {
	token := "[put-your-token]"
	secret := "[put-your-secret]"

	projectName := "project-name"
	sortCol := client.ProjectSortIDAsc // Sort by ID asc
	//sortCol := client.ProjectSortIDDesc	// Sort by ID desc
	//sortCol := client.ProjectSortNameAsc	// Sort by Name asc
	//sortCol := client.ProjectSortNameDesc	// Sort by Name desc

	// Instance of SakuraAPIClient
	c := client.SakuraAPI

	// Set API-key to instance of SakuraAPIClient
	c.SetAPIKey(token, secret)

	// Create a parameter to find a project
	p := c.NewFindProjectsParam()
	p.SetName(&projectName)
	p.SetSort(&sortCol)

	// Call find API [GET /project/]
	projects, err := c.FindProjects(p)
	if err != nil {
		panic(err)
	}
	for i, project := range projects {
		fmt.Printf("Finded Project[%d]: ID=%d , Name=%s", i, project.ID, project.Name)

	}
}
Output:

Example (Read)
package main

import (
	"fmt"
	"github.com/yamamoto-febc/sakuraio-api/client"
)

func main() {
	token := "[put-your-token]"
	secret := "[put-your-secret]"
	targetProjectID := int64(999999999)

	// Instance of SakuraAPIClient
	c := client.SakuraAPI

	// Set API-key to instance of SakuraAPIClient
	c.SetAPIKey(token, secret)

	// Create a parameter to read a project
	p := c.NewReadProjectParam(targetProjectID)

	// Call read API [GET /project/{ProjectID}/]
	project, err := c.ReadProject(p)
	if err != nil {
		panic(err)
	}

	fmt.Printf("Readed Project: ID=%d , Name=%s", project.ID, project.Name)
}
Output:

Example (Update)
package main

import (
	"fmt"
	"github.com/yamamoto-febc/sakuraio-api/client"
	"github.com/yamamoto-febc/sakuraio-api/gen/models"
)

func main() {
	token := "[put-your-token]"
	secret := "[put-your-secret]"
	targetProjectID := int64(999999999)
	projectNameUpdate := "project-name-upd"

	// Instance of SakuraAPIClient
	c := client.SakuraAPI

	// Set API-key to instance of SakuraAPIClient
	c.SetAPIKey(token, secret)

	// Create a parameter to update a project
	p := c.NewUpdateProjectParam(targetProjectID)
	p.SetProject(&models.ProjectUpdate{
		Name: &projectNameUpdate,
	})

	// Call update API [PUT /project/{ProjectID}/]
	project, err := c.UpdateProject(p)
	if err != nil {
		panic(err)
	}

	fmt.Printf("Updated Project: ID=%d , Name=%s", project.ID, project.Name)
}
Output:

Index

Examples

Constants

This section is empty.

Variables

View Source
var (
	// ModuleSortProjectAsc is sort target column `project` that used by [GET /v1/modules]
	ModuleSortProjectAsc = "project"
	// ModuleSortNameAsc is sort target column `name` that used by [GET /v1/modules]
	ModuleSortNameAsc = "name"
	// ModuleSortIDAsc is sort target column `id` that used by [GET /v1/modules]
	ModuleSortIDAsc = "id"
	// ModuleSortSerialNumberAsc is sort target column `serial_number` that used by [GET /v1/modules]
	ModuleSortSerialNumberAsc = "serial_number"
	// ModuleSortModelAsc is sort target column `model` that used by [GET /v1/modules]
	ModuleSortModelAsc = "model"
	// ModuleSortProjectDesc is sort target column `-project` that used by [GET /v1/modules]
	ModuleSortProjectDesc = "-project"
	// ModuleSortNameDesc is sort target column `-name` that used by [GET /v1/modules]
	ModuleSortNameDesc = "-name"
	// ModuleSortIDDesc is sort target column `-id` that used by [GET /v1/modules]
	ModuleSortIDDesc = "-id"
	// ModuleSortSerialNumberDesc is sort target column `-serial_number` that used by [GET /v1/modules]
	ModuleSortSerialNumberDesc = "-serial_number"
	// ModuleSortModelDesc is sort target column `-model` that used by [GET /v1/modules]
	ModuleSortModelDesc = "-model"

	// ModuleSortCols is all sort target columns that used by [GET /v1/modules]
	ModuleSortCols = []string{
		ModuleSortProjectAsc, ModuleSortNameAsc, ModuleSortIDAsc, ModuleSortSerialNumberAsc, ModuleSortModelAsc,
		ModuleSortProjectDesc, ModuleSortNameDesc, ModuleSortIDDesc, ModuleSortSerialNumberDesc, ModuleSortModelDesc,
	}
)
View Source
var (
	// ProjectSortNameAsc is sort target column `name` that used by [GET /v1/projects]
	ProjectSortNameAsc = "name"

	// ProjectSortIDAsc is sort target column `id` that used by [GET /v1/projects]
	ProjectSortIDAsc = "id"

	// ProjectSortNameDesc is sort target column `-name` that used by [GET /v1/projects]
	ProjectSortNameDesc = "-name"

	// ProjectSortIDDesc is sort target column `-id` that used by [GET /v1/projects]
	ProjectSortIDDesc = "-id"

	// ProjectSortCols is all sort target columns that used by [GET /v1/projects]
	ProjectSortCols = []string{ProjectSortNameAsc, ProjectSortIDAsc, ProjectSortNameDesc, ProjectSortIDDesc}
)
View Source
var (
	// ServiceSortIDAsc is sort target column `id` that used by [GET /v1/services]
	ServiceSortIDAsc = "id"
	// ServiceSortNameAsc is sort target column `name` that used by [GET /v1/services]
	ServiceSortNameAsc = "name"
	// ServiceSortTokenAsc is sort target column `token` that used by [GET /v1/services]
	ServiceSortTokenAsc = "token"
	// ServiceSortIDDesc is sort target column `-id` that used by [GET /v1/services]
	ServiceSortIDDesc = "-id"
	// ServiceSortNameDesc is sort target column `-name` that used by [GET /v1/services]
	ServiceSortNameDesc = "-name"
	// ServiceSortTokenDesc is sort target column `-token` that used by [GET /v1/services]
	ServiceSortTokenDesc = "-token"

	// ServiceSortCols is all sort target columns that used by [GET /v1/services]
	ServiceSortCols = []string{
		ServiceSortIDAsc, ServiceSortNameAsc, ServiceSortTokenAsc,
		ServiceSortIDDesc, ServiceSortNameDesc, ServiceSortTokenDesc,
	}
)
View Source
var SakuraAPI = NewSakuraClient(nil)

SakuraAPI SakuraIoT HTTP client.

Functions

This section is empty.

Types

type CreateIncomingWebhookServiceParam

type CreateIncomingWebhookServiceParam interface {
	SakuraAPIFuncParamBase
	SetIncomingWebhookService(*models.IncomingWebhookServiceUpdate)
}

CreateIncomingWebhookServiceParam is a parameter interface for calling the create IncomingWebhookService API

type CreateModuleParam

type CreateModuleParam interface {
	SakuraAPIFuncParamBase
	SetRegisterInformation(registerInformation *models.ModuleRegister)
}

CreateModuleParam is a parameter interface for calling the create module API

type CreateOutgoingWebhookServiceParam

type CreateOutgoingWebhookServiceParam interface {
	SakuraAPIFuncParamBase
	SetOutgoingWebhookService(*models.OutgoingWebhookServiceUpdate)
}

CreateOutgoingWebhookServiceParam is a parameter interface for calling the create OutgoingWebhookService API

type CreateProjectParam

type CreateProjectParam interface {
	SakuraAPIFuncParamBase
	SetProject(project *models.ProjectUpdate)
}

CreateProjectParam is a parameter interface for calling the create project API

type CreateWebSocketServiceParam

type CreateWebSocketServiceParam interface {
	SakuraAPIFuncParamBase
	SetWebSocketService(*models.WebSocketServiceUpdate)
}

CreateWebSocketServiceParam is a parameter interface for calling the create WebSocketService API

type DeleteModuleParam

type DeleteModuleParam interface {
	SakuraAPIFuncParamBase
	SetModuleID(moduleID string)
}

DeleteModuleParam is a parameter interface for calling the delete module API

type DeleteProjectParam

type DeleteProjectParam interface {
	SakuraAPIFuncParamBase
	SetProjectID(projectID int64)
}

DeleteProjectParam is a parameter interface for calling the delete project API

type DeleteServiceParam

type DeleteServiceParam interface {
	SakuraAPIFuncParamBase
	SetServiceID(serviceID int64)
}

DeleteServiceParam is a parameter interface for calling the delete service API

type FindModuleParam

type FindModuleParam interface {
	SakuraAPIFuncParamBase
	SetModel(model *string)
	SetProject(project *int64)
	SetSerialNumber(serialNumber *string)
	SetSort(sort *string)
}

FindModuleParam is a parameter interface for calling the find modules API

type FindProjectParam

type FindProjectParam interface {
	SakuraAPIFuncParamBase
	SetName(name *string)
	SetSort(sort *string)
}

FindProjectParam is a parameter interface for calling the find projects API

type FindServiceParam

type FindServiceParam interface {
	SakuraAPIFuncParamBase
	SetProject(project *int64)
	SetSort(sort *string)
	SetType(typeVar *string)
}

FindServiceParam is a parameter interface for calling the find services API

type ReadIncomingWebhookServiceParam

type ReadIncomingWebhookServiceParam interface {
	SakuraAPIFuncParamBase
	SetServiceID(serviceID int64)
}

ReadIncomingWebhookServiceParam is a parameter interface for calling the read IncomingWebhookService API

type ReadModuleParam

type ReadModuleParam interface {
	SakuraAPIFuncParamBase
	SetModuleID(moduleID string)
}

ReadModuleParam is a parameter interface for calling the read module API

type ReadOutgoingWebhookServiceParam

type ReadOutgoingWebhookServiceParam interface {
	SakuraAPIFuncParamBase
	SetServiceID(serviceID int64)
}

ReadOutgoingWebhookServiceParam is a parameter interface for calling the read OutgoingWebhookService API

type ReadProjectParam

type ReadProjectParam interface {
	SakuraAPIFuncParamBase
	SetProjectID(projectID int64)
}

ReadProjectParam is a parameter interface for calling the read project API

type ReadWebSocketServiceParam

type ReadWebSocketServiceParam interface {
	SakuraAPIFuncParamBase
	SetServiceID(serviceID int64)
}

ReadWebSocketServiceParam is a parameter interface for calling the read WebSocketService API

type SakuraAPIClient

type SakuraAPIClient struct {
	// contains filtered or unexported fields
}

SakuraAPIClient is a client for sakura IoT

func (*SakuraAPIClient) Auth

func (c *SakuraAPIClient) Auth() (*models.Auth, error)

Auth returns *models.Auth object obtained using API token and secret

func (*SakuraAPIClient) ClearAPIKey

func (c *SakuraAPIClient) ClearAPIKey()

ClearAPIKey clear APIKey

func (*SakuraAPIClient) CreateIncomingWebhookService

func (c *SakuraAPIClient) CreateIncomingWebhookService(param CreateIncomingWebhookServiceParam) (*models.IncomingWebhookService, error)

CreateIncomingWebhookService calls [POST /v1/services/?type=incoming-webhook] API , returns created IncomingWebhookService

func (*SakuraAPIClient) CreateModule

func (c *SakuraAPIClient) CreateModule(param CreateModuleParam) (*models.Module, error)

CreateModule calls [POST /v1/modules/] API, returns created Module

func (*SakuraAPIClient) CreateOutgoingWebhookService

func (c *SakuraAPIClient) CreateOutgoingWebhookService(param CreateOutgoingWebhookServiceParam) (*models.OutgoingWebhookService, error)

CreateOutgoingWebhookService calls [POST /v1/services/?type=outgoing-webhook] API , returns created OutgoingWebhookService

func (*SakuraAPIClient) CreateProject

func (c *SakuraAPIClient) CreateProject(param CreateProjectParam) (*models.Project, error)

CreateProject calls [POST /v1/projects/] API , returns created project

func (*SakuraAPIClient) CreateWebSocketService

func (c *SakuraAPIClient) CreateWebSocketService(param CreateWebSocketServiceParam) (*models.WebSocketService, error)

CreateWebSocketService calls [POST /v1/services/?type=websocket] API , returns created WebSocketService

func (*SakuraAPIClient) DeleteModule

func (c *SakuraAPIClient) DeleteModule(param DeleteModuleParam) error

DeleteModule calls [DELETE /v1/modules/{moduleId}/] API

func (*SakuraAPIClient) DeleteProject

func (c *SakuraAPIClient) DeleteProject(param DeleteProjectParam) error

DeleteProject calls [DELETE /v1/projects/{projectId}] API

func (*SakuraAPIClient) DeleteService

func (c *SakuraAPIClient) DeleteService(param DeleteServiceParam) error

DeleteService calls [DELETE /v1/services/{serviceId}] API

func (*SakuraAPIClient) FindModules

func (c *SakuraAPIClient) FindModules(param FindModuleParam) ([]*models.Module, error)

FindModules calls [GET /v1/modules/] API , returns Modules

func (*SakuraAPIClient) FindProjects

func (c *SakuraAPIClient) FindProjects(param FindProjectParam) ([]*models.Project, error)

FindProjects calls [GET /v1/projects/] API , returns projects

func (*SakuraAPIClient) FindServices

func (c *SakuraAPIClient) FindServices(param FindServiceParam) ([]*models.ServiceBase, error)

FindServices calls [GET /v1/services/] API , returns services([]ServiceBase)

func (*SakuraAPIClient) NewCreateIncomingWebhookServiceParam

func (c *SakuraAPIClient) NewCreateIncomingWebhookServiceParam() CreateIncomingWebhookServiceParam

NewCreateIncomingWebhookServiceParam returns new CreateIncomingWebhookServiceParam

func (*SakuraAPIClient) NewCreateModuleParam

func (c *SakuraAPIClient) NewCreateModuleParam() CreateModuleParam

NewCreateModuleParam return new CreateModuleParam

func (*SakuraAPIClient) NewCreateOutgoingWebhookServiceParam

func (c *SakuraAPIClient) NewCreateOutgoingWebhookServiceParam() CreateOutgoingWebhookServiceParam

NewCreateOutgoingWebhookServiceParam returns new CreateOutgoingWebhookServiceParam

func (*SakuraAPIClient) NewCreateProjectParam

func (c *SakuraAPIClient) NewCreateProjectParam() CreateProjectParam

NewCreateProjectParam returns new CreateProjectParam

func (*SakuraAPIClient) NewCreateWebSocketServiceParam

func (c *SakuraAPIClient) NewCreateWebSocketServiceParam() CreateWebSocketServiceParam

NewCreateWebSocketServiceParam returns new CreateWebSocketServiceParam

func (*SakuraAPIClient) NewDeleteModuleParam

func (c *SakuraAPIClient) NewDeleteModuleParam(id string) DeleteModuleParam

NewDeleteModuleParam returns DeleteModuleParam

func (*SakuraAPIClient) NewDeleteProjectParam

func (c *SakuraAPIClient) NewDeleteProjectParam(id int64) DeleteProjectParam

NewDeleteProjectParam returns new DeleteProjectParam

func (*SakuraAPIClient) NewDeleteServiceParam

func (c *SakuraAPIClient) NewDeleteServiceParam(id int64) DeleteServiceParam

NewDeleteServiceParam returns new DeleteServiceParam

func (*SakuraAPIClient) NewFindModulesParam

func (c *SakuraAPIClient) NewFindModulesParam() FindModuleParam

NewFindModulesParam returns new FindModuleParam

func (*SakuraAPIClient) NewFindProjectsParam

func (c *SakuraAPIClient) NewFindProjectsParam() FindProjectParam

NewFindProjectsParam returns new FindProjectParam

func (*SakuraAPIClient) NewFindServicesParam

func (c *SakuraAPIClient) NewFindServicesParam() FindServiceParam

NewFindServicesParam return new FindServiceParam

func (*SakuraAPIClient) NewReadIncomingWebhookServiceParam

func (c *SakuraAPIClient) NewReadIncomingWebhookServiceParam(id int64) ReadIncomingWebhookServiceParam

NewReadIncomingWebhookServiceParam returns new ReadIncomingWebhookServiceParam

func (*SakuraAPIClient) NewReadModuleParam

func (c *SakuraAPIClient) NewReadModuleParam(id string) ReadModuleParam

NewReadModuleParam returns new ReadModuleParam

func (*SakuraAPIClient) NewReadOutgoingWebhookServiceParam

func (c *SakuraAPIClient) NewReadOutgoingWebhookServiceParam(id int64) ReadOutgoingWebhookServiceParam

NewReadOutgoingWebhookServiceParam returns new ReadOutgoingWebhookServiceParam

func (*SakuraAPIClient) NewReadProjectParam

func (c *SakuraAPIClient) NewReadProjectParam(id int64) ReadProjectParam

NewReadProjectParam returns new ReadPorjectParam

func (*SakuraAPIClient) NewReadWebSocketServiceParam

func (c *SakuraAPIClient) NewReadWebSocketServiceParam(id int64) ReadWebSocketServiceParam

NewReadWebSocketServiceParam returns new ReadWebSocketServiceParam

func (*SakuraAPIClient) NewUpdateIncomingWebhookServiceParam

func (c *SakuraAPIClient) NewUpdateIncomingWebhookServiceParam(id int64) UpdateIncomingWebhookServiceParam

NewUpdateIncomingWebhookServiceParam returns new UpdateIncomingWebhookServiceParam

func (*SakuraAPIClient) NewUpdateModuleParam

func (c *SakuraAPIClient) NewUpdateModuleParam(id string) UpdateModuleParam

NewUpdateModuleParam returns new UpdateModuleParam

func (*SakuraAPIClient) NewUpdateOutgoingWebhookServiceParam

func (c *SakuraAPIClient) NewUpdateOutgoingWebhookServiceParam(id int64) UpdateOutgoingWebhookServiceParam

NewUpdateOutgoingWebhookServiceParam returns new UpdateOutgoingWebhookServiceParam

func (*SakuraAPIClient) NewUpdateProjectParam

func (c *SakuraAPIClient) NewUpdateProjectParam(id int64) UpdateProjectParam

NewUpdateProjectParam returns new UpdatePorjectParam

func (*SakuraAPIClient) NewUpdateWebSocketServiceParam

func (c *SakuraAPIClient) NewUpdateWebSocketServiceParam(id int64) UpdateWebSocketServiceParam

NewUpdateWebSocketServiceParam returns new UpdateWebSocketServiceParam

func (*SakuraAPIClient) ReadIncomingWebhookService

func (c *SakuraAPIClient) ReadIncomingWebhookService(param ReadIncomingWebhookServiceParam) (*models.IncomingWebhookService, error)

ReadIncomingWebhookService calls [GET /v1/services/{serviceId}/] API , returns readed IncomingWebhookService

func (*SakuraAPIClient) ReadModule

func (c *SakuraAPIClient) ReadModule(param ReadModuleParam) (*models.Module, error)

ReadModule calls [GET /v1/modules/{moduleId}/] API, returns readed Module

func (*SakuraAPIClient) ReadOutgoingWebhookService

func (c *SakuraAPIClient) ReadOutgoingWebhookService(param ReadOutgoingWebhookServiceParam) (*models.OutgoingWebhookService, error)

ReadOutgoingWebhookService calls [GET /v1/services/{serviceId}/] API , returns readed OutgoingWebhookService

func (*SakuraAPIClient) ReadProject

func (c *SakuraAPIClient) ReadProject(param ReadProjectParam) (*models.Project, error)

ReadProject calls [GET /v1/projects/{projectId}/] API , returns readed project

func (*SakuraAPIClient) ReadWebSocketService

func (c *SakuraAPIClient) ReadWebSocketService(param ReadWebSocketServiceParam) (*models.WebSocketService, error)

ReadWebSocketService calls [GET /v1/services/{serviceId}/] API , returns readed WebSocketService

func (*SakuraAPIClient) SetAPIKey

func (c *SakuraAPIClient) SetAPIKey(token string, secret string)

SetAPIKey sets APIKeys(token and secret)

func (*SakuraAPIClient) UpdateIncomingWebhookService

func (c *SakuraAPIClient) UpdateIncomingWebhookService(param UpdateIncomingWebhookServiceParam) (*models.IncomingWebhookService, error)

UpdateIncomingWebhookService calls [PUT /v1/services/{serviceId}] API , returns updated IncomingWebhookService

func (*SakuraAPIClient) UpdateModule

func (c *SakuraAPIClient) UpdateModule(param UpdateModuleParam) (*models.Module, error)

UpdateModule calls [PUT /v1/modules/{moduleId}/] API, returns updated Module

func (*SakuraAPIClient) UpdateOutgoingWebhookService

func (c *SakuraAPIClient) UpdateOutgoingWebhookService(param UpdateOutgoingWebhookServiceParam) (*models.OutgoingWebhookService, error)

UpdateOutgoingWebhookService calls [PUT /v1/services/{serviceId}] API , returns updated OutgoingWebhookService

func (*SakuraAPIClient) UpdateProject

func (c *SakuraAPIClient) UpdateProject(param UpdateProjectParam) (*models.Project, error)

UpdateProject calls [PUT /v1/projects/{projectId}] API , returns updated project

func (*SakuraAPIClient) UpdateWebSocketService

func (c *SakuraAPIClient) UpdateWebSocketService(param UpdateWebSocketServiceParam) (*models.WebSocketService, error)

UpdateWebSocketService calls [PUT /v1/services/{serviceId}] API , returns updated WebSocketService

type SakuraAPIFuncAPIKey

type SakuraAPIFuncAPIKey interface {
	// SetAPIKey sets APIKeys(token and secret)
	SetAPIKey(token string, secret string)
	// ClearAPIKey clear APIKey
	ClearAPIKey()
}

SakuraAPIFuncAPIKey is interface of handling APIKey function

type SakuraAPIFuncAuth

type SakuraAPIFuncAuth interface {
	// Auth calls [GET /v1/auth/] API, returns *models.Auth object obtained using API token and secret
	Auth() (*models.Auth, error)
}

SakuraAPIFuncAuth is interface of Auth function

type SakuraAPIFuncModule

type SakuraAPIFuncModule interface {
	// NewFindModulesParam returns new FindModuleParam
	NewFindModulesParam() FindModuleParam

	// NewCreateModuleParam return new CreateModuleParam
	NewCreateModuleParam() CreateModuleParam

	// NewReadModuleParam returns new ReadModuleParam
	NewReadModuleParam(string) ReadModuleParam

	// NewUpdateModuleParam returns new UpdateModuleParam
	NewUpdateModuleParam(string) UpdateModuleParam

	// NewDeleteModuleParam returns DeleteModuleParam
	NewDeleteModuleParam(string) DeleteModuleParam

	// FindModules calls [GET /v1/modules/] API , returns Modules
	FindModules(FindModuleParam) ([]*models.Module, error)

	// CreateModule calls [POST /v1/modules/] API, returns created Module
	CreateModule(CreateModuleParam) (*models.Module, error)

	// ReadModule calls [GET /v1/modules/{moduleId}/] API, returns readed Module
	ReadModule(ReadModuleParam) (*models.Module, error)

	// UpdateModule calls [PUT /v1/modules/{moduleId}/] API, returns updated Module
	UpdateModule(UpdateModuleParam) (*models.Module, error)

	// DeleteModule calls [DELETE /v1/modules/{moduleId}/] API
	DeleteModule(DeleteModuleParam) error
}

SakuraAPIFuncModule is interface of the Module functions

type SakuraAPIFuncParamBase

type SakuraAPIFuncParamBase interface {
	// SetTimeout adds the timeout to the request parameter
	SetTimeout(timeout time.Duration)
	// SetTimeout adds the context to the request parameter
	SetContext(ctx context.Context)
	// WriteToRequest writes these params to a swagger request
	WriteToRequest(r runtime.ClientRequest, reg strfmt.Registry) error
}

SakuraAPIFuncParamBase is interface of API parameter

type SakuraAPIFuncProject

type SakuraAPIFuncProject interface {
	// NewFindProjectsParam returns new FindProjectParam
	NewFindProjectsParam() FindProjectParam

	// NewCreateProjectParam returns new CreateProjectParam
	NewCreateProjectParam() CreateProjectParam

	// NewReadProjectParam returns new ReadPorjectParam
	NewReadProjectParam(int64) ReadProjectParam

	// NewUpdateProjectParam returns new UpdatePorjectParam
	NewUpdateProjectParam(int64) UpdateProjectParam

	// NewDeleteProjectParam returns new DeleteProjectParam
	NewDeleteProjectParam(int64) DeleteProjectParam

	// FindProjects calls [GET /v1/projects/] API , returns projects
	FindProjects(FindProjectParam) ([]*models.Project, error)

	// CreateProject calls [POST /v1/projects/] API , returns created project
	CreateProject(CreateProjectParam) (*models.Project, error)

	// ReadProject calls [GET /v1/projects/{projectId}/] API , returns readed project
	ReadProject(ReadProjectParam) (*models.Project, error)

	// UpdateProject calls [PUT /v1/projects/{projectId}] API , returns updated project
	UpdateProject(UpdateProjectParam) (*models.Project, error)

	// DeleteProject calls [DELETE /v1/projects/{projectId}] API
	DeleteProject(DeleteProjectParam) error
}

SakuraAPIFuncProject is interface of the Project functions

type SakuraAPIFuncService

type SakuraAPIFuncService interface {
	// NewFindServicesParam return new FindServiceParam
	NewFindServicesParam() FindServiceParam

	// NewCreateWebSocketServiceParam returns new CreateWebSocketServiceParam
	NewCreateWebSocketServiceParam() CreateWebSocketServiceParam

	// NewCreateOutgoingWebhookServiceParam returns new CreateOutgoingWebhookServiceParam
	NewCreateOutgoingWebhookServiceParam() CreateOutgoingWebhookServiceParam

	// NewCreateIncomingWebhookServiceParam returns new CreateIncomingWebhookServiceParam
	NewCreateIncomingWebhookServiceParam() CreateIncomingWebhookServiceParam

	// NewReadWebSocketServiceParam returns new ReadWebSocketServiceParam
	NewReadWebSocketServiceParam(int64) ReadWebSocketServiceParam

	// NewReadOutgoingWebhookServiceParam returns new ReadOutgoingWebhookServiceParam
	NewReadOutgoingWebhookServiceParam(int64) ReadOutgoingWebhookServiceParam

	// NewReadIncomingWebhookServiceParam returns new ReadIncomingWebhookServiceParam
	NewReadIncomingWebhookServiceParam(int64) ReadIncomingWebhookServiceParam

	// NewUpdateWebSocketServiceParam returns new UpdateWebSocketServiceParam
	NewUpdateWebSocketServiceParam(int64) UpdateWebSocketServiceParam

	// NewUpdateOutgoingWebhookServiceParam returns new UpdateOutgoingWebhookServiceParam
	NewUpdateOutgoingWebhookServiceParam(int64) UpdateOutgoingWebhookServiceParam

	// NewUpdateIncomingWebhookServiceParam returns new UpdateIncomingWebhookServiceParam
	NewUpdateIncomingWebhookServiceParam(int64) UpdateIncomingWebhookServiceParam

	// NewDeleteServiceParam returns new DeleteServiceParam
	NewDeleteServiceParam(int64) DeleteServiceParam

	// FindServices calls [GET /v1/services/] API , returns services([]ServiceBase)
	FindServices(FindServiceParam) ([]*models.ServiceBase, error)

	// CreateWebSocketService calls [POST /v1/services/?type=websocket] API , returns created WebSocketService
	CreateWebSocketService(CreateWebSocketServiceParam) (*models.WebSocketService, error)

	// CreateOutgoingWebhookService calls [POST /v1/services/?type=outgoing-webhook] API , returns created OutgoingWebhookService
	CreateOutgoingWebhookService(CreateOutgoingWebhookServiceParam) (*models.OutgoingWebhookService, error)

	// CreateIncomingWebhookService calls [POST /v1/services/?type=incoming-webhook] API , returns created IncomingWebhookService
	CreateIncomingWebhookService(CreateIncomingWebhookServiceParam) (*models.IncomingWebhookService, error)

	// ReadWebSocketService calls [GET /v1/services/{serviceId}/] API , returns readed WebSocketService
	ReadWebSocketService(ReadWebSocketServiceParam) (*models.WebSocketService, error)

	// ReadOutgoingWebhookService calls [GET /v1/services/{serviceId}/] API , returns readed OutgoingWebhookService
	ReadOutgoingWebhookService(ReadOutgoingWebhookServiceParam) (*models.OutgoingWebhookService, error)

	// ReadIncomingWebhookService calls [GET /v1/services/{serviceId}/] API , returns readed IncomingWebhookService
	ReadIncomingWebhookService(ReadIncomingWebhookServiceParam) (*models.IncomingWebhookService, error)

	// UpdateWebSocketService calls [PUT /v1/services/{serviceId}] API , returns updated WebSocketService
	UpdateWebSocketService(UpdateWebSocketServiceParam) (*models.WebSocketService, error)

	// UpdateOutgoingWebhookService calls [PUT /v1/services/{serviceId}] API , returns updated OutgoingWebhookService
	UpdateOutgoingWebhookService(UpdateOutgoingWebhookServiceParam) (*models.OutgoingWebhookService, error)

	// UpdateIncomingWebhookService calls [PUT /v1/services/{serviceId}] API , returns updated IncomingWebhookService
	UpdateIncomingWebhookService(UpdateIncomingWebhookServiceParam) (*models.IncomingWebhookService, error)

	// DeleteService calls [DELETE /v1/services/{serviceId}] API
	DeleteService(DeleteServiceParam) error
}

SakuraAPIFuncService is interface of the Service functions

type SakuraAPIFuncs

SakuraAPIFuncs is interface of the SakuraIoT APIs

func NewSakuraAPI

func NewSakuraAPI(transport runtime.ClientTransport, formats strfmt.Registry) SakuraAPIFuncs

NewSakuraAPI creates a new SakuraIoT client

func NewSakuraClient

func NewSakuraClient(formats strfmt.Registry) SakuraAPIFuncs

NewSakuraClient creates a new SakuraIoT HTTP client.

type UpdateIncomingWebhookServiceParam

type UpdateIncomingWebhookServiceParam interface {
	SakuraAPIFuncParamBase
	SetServiceID(serviceID int64)
	SetIncomingWebhookService(incomingWebhookService *models.IncomingWebhookServiceUpdate)
}

UpdateIncomingWebhookServiceParam is a parameter interface for calling the update IncomingWebhookService API

type UpdateModuleParam

type UpdateModuleParam interface {
	SakuraAPIFuncParamBase
	SetModuleID(moduleID string)
	SetBody(body *models.ModuleUpdate)
}

UpdateModuleParam is a parameter interface for calling the update module API

type UpdateOutgoingWebhookServiceParam

type UpdateOutgoingWebhookServiceParam interface {
	SakuraAPIFuncParamBase
	SetServiceID(serviceID int64)
	SetOutgoingWebhookService(outgoingWebhookService *models.OutgoingWebhookServiceUpdate)
}

UpdateOutgoingWebhookServiceParam is a parameter interface for calling the update OutgoingWebhookService API

type UpdateProjectParam

type UpdateProjectParam interface {
	SakuraAPIFuncParamBase
	SetProjectID(projectID int64)
	SetProject(project *models.ProjectUpdate)
}

UpdateProjectParam is a parameter interface for calling the update project API

type UpdateWebSocketServiceParam

type UpdateWebSocketServiceParam interface {
	SakuraAPIFuncParamBase
	SetServiceID(serviceID int64)
	SetWebSocketService(webSocketService *models.WebSocketServiceUpdate)
}

UpdateWebSocketServiceParam is a parameter interface for calling the update WebSocketService API

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL