ovhcli: github.com/admdwrf/ovhcli Index | Files | Directories

package ovh

import "github.com/admdwrf/ovhcli"

Index

Package Files

caas.go client.go cloud.go dbaas_queue.go domain.go ordercart.go orderdomain.go ordertypes.go telephony.go telephony_easyhunting.go vrack.go

Constants

const (
    // CustomerInterface is the URL of the customer interface, for error messages
    CustomerInterface = "https://www.ovh.com/manager/cloud/index.html"
)

type Client Uses

type Client struct {
    OVHClient *govh.Client
}

Client ...

func NewClient Uses

func NewClient() (*Client, error)

NewClient initialize a client

func (*Client) CloudCreateInstance Uses

func (c *Client) CloudCreateInstance(projectID, name, pubkeyID, flavorID, imageID, region string) (instance *Instance, err error)

CloudCreateInstance start a new public cloud instance and returns resulting object func (c *Client) CloudCreateInstance(instanceReq InstanceReq, projectID string) (instance *Instance, err error) { instanceReq := InstanceReq{

Name:     name,
SshkeyID: pubkeyID,
FlavorID: flavorID,
ImageID:  imageID,
Region:   region,

}

func (*Client) CloudCreateNetworkPrivate Uses

func (c *Client) CloudCreateNetworkPrivate(projectID, name, regions string, vlanid int) (net *Network, err error)

CloudCreateNetworkPrivate create a private network in a vrack func (c *Client) CloudCreateNetworkPrivate(projectID, name string, regions []Regions, vlanid int) (net *Network, err error) {

func (*Client) CloudDeleteInstance Uses

func (c *Client) CloudDeleteInstance(projectID, instanceID string) (err error)

CloudDeleteInstance stops and destroys a public cloud instance

func (*Client) CloudGetInstance Uses

func (c *Client) CloudGetInstance(projectID, instanceID string) (instance *Instance, err error)

CloudGetInstance finds a VM instance given a name or an ID

func (*Client) CloudInfoInstance Uses

func (c *Client) CloudInfoInstance(projectID, instanceID string) (*Instance, error)

CloudInfoInstance give info about cloud instance

func (*Client) CloudInfoNetworkPrivate Uses

func (c *Client) CloudInfoNetworkPrivate(projectID string) ([]Network, error)

CloudInfoNetworkPrivate return the list of a private network by given a project id

func (*Client) CloudInfoNetworkPublic Uses

func (c *Client) CloudInfoNetworkPublic(projectID string) ([]Network, error)

CloudInfoNetworkPublic return the list of a public network by given a project id

func (*Client) CloudInfoRegion Uses

func (c *Client) CloudInfoRegion(projectID, regionName string) (*Region, error)

CloudInfoRegion return services status on a region

func (*Client) CloudListInstance Uses

func (c *Client) CloudListInstance(projectID string) ([]Instance, error)

CloudListInstance show cloud instance(s)

func (*Client) CloudListRegions Uses

func (c *Client) CloudListRegions(projectID string) ([]Region, error)

CloudListRegions return a list of network regions

func (*Client) CloudProjectFlavorsList Uses

func (c *Client) CloudProjectFlavorsList(projectID, region string) ([]Flavor, error)

CloudProjectFlavorsList returns the list of flavors by given a project id

func (*Client) CloudProjectImagesList Uses

func (c *Client) CloudProjectImagesList(projectID, region string) ([]Image, error)

CloudProjectImagesList returns the list of images by given a project id

func (*Client) CloudProjectImagesSearch Uses

func (c *Client) CloudProjectImagesSearch(projectID string, region string, terms ...string) ([]Image, error)

CloudProjectImagesSearch returns the list of images matching terms

func (*Client) CloudProjectInfoByID Uses

func (c *Client) CloudProjectInfoByID(projectID string) (*Project, error)

CloudProjectInfoByID return the details of a project given a project id

func (*Client) CloudProjectInfoByName Uses

func (c *Client) CloudProjectInfoByName(projectName string) (project *Project, err error)

CloudProjectInfoByName returns the details of a project given its name.

func (*Client) CloudProjectRegionList Uses

func (c *Client) CloudProjectRegionList(projectID string) ([]string, error)

CloudProjectRegionList return the region by given a project id

func (*Client) CloudProjectSSHKeyCreate Uses

func (c *Client) CloudProjectSSHKeyCreate(projectID, publicKey, name string) (Sshkey, error)

CloudProjectSSHKeyCreate return the list of users by given a project id

func (*Client) CloudProjectSSHKeyDelete Uses

func (c *Client) CloudProjectSSHKeyDelete(projectID, sshkeyID string) (err error)

CloudProjectSSHKeyDelete delete a ssh key

func (*Client) CloudProjectSSHKeyInfo Uses

func (c *Client) CloudProjectSSHKeyInfo(projectID, sshkeyID string) (*Sshkey, error)

CloudProjectSSHKeyInfo return info about a ssh keys

func (*Client) CloudProjectSSHKeyList Uses

func (c *Client) CloudProjectSSHKeyList(projectID string) ([]Sshkey, error)

CloudProjectSSHKeyList return the list of ssh keys by given a project id

func (*Client) CloudProjectSnapshotsList Uses

func (c *Client) CloudProjectSnapshotsList(projectID, region string) ([]Image, error)

CloudProjectSnapshotsList returns the list of snapshots by given a project id

func (*Client) CloudProjectUserCreate Uses

func (c *Client) CloudProjectUserCreate(projectID, description string) (User, error)

CloudProjectUserCreate return the list of users by given a project id

func (*Client) CloudProjectUsersList Uses

func (c *Client) CloudProjectUsersList(projectID string) ([]User, error)

CloudProjectUsersList return the list of users by given a project id

func (*Client) CloudProjectsList Uses

func (c *Client) CloudProjectsList() ([]Project, error)

CloudProjectsList returns a list of string project ID

func (*Client) ContainersServiceInfo Uses

func (c *Client) ContainersServiceInfo(containerservid string) (*ContainersService, error)

ContainersServiceInfo ...

func (*Client) ContainersServicesList Uses

func (c *Client) ContainersServicesList() ([]ContainersService, error)

ContainersServicesList ...

func (*Client) DBaasQueueAppInfo Uses

func (c *Client) DBaasQueueAppInfo(serviceName string) (*DBaasQueueApp, error)

DBaasQueueAppInfo retrieve all infos of one of your apps

func (*Client) DBaasQueueAppInfoByName Uses

func (c *Client) DBaasQueueAppInfoByName(name string) (*DBaasQueueApp, error)

DBaasQueueAppInfoByName retrieve all infos of one of your apps

func (*Client) DBaasQueueAppList Uses

func (c *Client) DBaasQueueAppList(withDetails bool) ([]DBaasQueueApp, error)

DBaasQueueAppList list all your app

func (*Client) DBaasQueueAppServiceInfo Uses

func (c *Client) DBaasQueueAppServiceInfo(serviceName string) (*DBaasQueueServiceInfo, error)

DBaasQueueAppServiceInfo retrieve all infos of one of your apps

func (*Client) DBaasQueueKeyInfo Uses

func (c *Client) DBaasQueueKeyInfo(serviceName, keyID string) (*DBaasQueueKey, error)

DBaasQueueKeyInfo retrieves all infos of one of your apps

func (*Client) DBaasQueueKeyList Uses

func (c *Client) DBaasQueueKeyList(serviceName string, withDetails bool) ([]DBaasQueueKey, error)

DBaasQueueKeyList list all key on a service

func (*Client) DBaasQueueMetricsAccount Uses

func (c *Client) DBaasQueueMetricsAccount(serviceName string) (*DBaasQueueMetricsAccount, error)

DBaasQueueMetricsAccount retrieve all infos of one of your apps

func (*Client) DBaasQueueRegionInfo Uses

func (c *Client) DBaasQueueRegionInfo(serviceName, regionID string) (*DBaasQueueRegion, error)

DBaasQueueRegionInfo retrieves all infos of one region on a service

func (*Client) DBaasQueueRegionList Uses

func (c *Client) DBaasQueueRegionList(serviceName string, withDetails bool) ([]DBaasQueueRegion, error)

DBaasQueueRegionList list all region on a service

func (*Client) DBaasQueueRoleInfo Uses

func (c *Client) DBaasQueueRoleInfo(serviceName, roleID string) (*DBaasQueueRole, error)

DBaasQueueRoleInfo retrieves all infos of one role on a service

func (*Client) DBaasQueueRoleList Uses

func (c *Client) DBaasQueueRoleList(serviceName string, withDetails bool) ([]DBaasQueueRole, error)

DBaasQueueRoleList list all roles on a service

func (*Client) DBaasQueueTopicInfo Uses

func (c *Client) DBaasQueueTopicInfo(serviceName, topicID string) (*DBaasQueueTopic, error)

DBaasQueueTopicInfo retrieves all infos of one topic on a service

func (*Client) DBaasQueueTopicList Uses

func (c *Client) DBaasQueueTopicList(serviceName string, withDetails bool) ([]DBaasQueueTopic, error)

DBaasQueueTopicList list all topics on a service

func (*Client) DBaasQueueUserChangePassword Uses

func (c *Client) DBaasQueueUserChangePassword(serviceName, userID string) (*DBaasQueueUser, error)

DBaasQueueUserChangePassword reset user password

func (*Client) DBaasQueueUserInfo Uses

func (c *Client) DBaasQueueUserInfo(serviceName, userID string) (*DBaasQueueUser, error)

DBaasQueueUserInfo retrieve all infos of one user of your apps

func (*Client) DBaasQueueUserList Uses

func (c *Client) DBaasQueueUserList(serviceName string, withDetails bool) ([]DBaasQueueUser, error)

DBaasQueueUserList list all users on a service

func (*Client) DomainInfo Uses

func (c *Client) DomainInfo(domainName string) (*Domain, error)

DomainInfo retrieve all infos of one of your domains

func (*Client) DomainList Uses

func (c *Client) DomainList(withDetails bool) ([]Domain, error)

DomainList list all your domain

func (*Client) OrderAddProductDomain Uses

func (c *Client) OrderAddProductDomain(cartID string, orderPostDomainReq OrderPostDomainReq) (*OrderCartItem, error)

OrderAddProductDomain post a new domain in your cart

func (*Client) OrderAddProductDomainOption Uses

func (c *Client) OrderAddProductDomainOption(cartID string, orderPostDomainOptionReq OrderPostDomainOptionReq) (*OrderCartItem, error)

OrderAddProductDomainOption post an option on a domain item

func (*Client) OrderAddProductDomainTransfer Uses

func (c *Client) OrderAddProductDomainTransfer(cartID string, orderPostDomainReq OrderPostDomainReq) (*OrderCartItem, error)

OrderAddProductDomainTransfer post a new domain transfer in your cart

func (*Client) OrderAddProductDomainTransferOption Uses

func (c *Client) OrderAddProductDomainTransferOption(cartID string, orderPostDomainReq OrderPostDomainReq) (*OrderCartItem, error)

OrderAddProductDomainTransferOption post an option on a domain transfer item

func (*Client) OrderAssignCart Uses

func (c *Client) OrderAssignCart(cartID string) error

OrderAssignCart assign to connected user a cart

func (*Client) OrderCartAddConfiguration Uses

func (c *Client) OrderCartAddConfiguration(cartID string, itemID int, label string, value string) (*OrderCartItem, error)

OrderCartAddConfiguration add a configuration on an item

func (*Client) OrderCartConfigurationInfo Uses

func (c *Client) OrderCartConfigurationInfo(cartID string, itemID int, configID int) (*OrderCartConfigurationItem, error)

OrderCartConfigurationInfo get a configuration for an item

func (*Client) OrderCartConfigurationsList Uses

func (c *Client) OrderCartConfigurationsList(cartID string, itemID int) ([]OrderCartConfigurationItem, error)

OrderCartConfigurationsList list all configurations for an item

func (*Client) OrderCartDeleteConfiguration Uses

func (c *Client) OrderCartDeleteConfiguration(cartID string, itemID int, configID int) (*OrderCartItem, error)

OrderCartDeleteConfiguration remove a configuration from an item

func (*Client) OrderCartInfo Uses

func (c *Client) OrderCartInfo(cartID string) (*OrderCart, error)

OrderCartInfo retrieve all infos of one of your cart

func (*Client) OrderCartItemInfo Uses

func (c *Client) OrderCartItemInfo(cartID string, itemID int) (*OrderCartItem, error)

OrderCartItemInfo retrieve info of a cart item

func (*Client) OrderCartItemList Uses

func (c *Client) OrderCartItemList(cartID string) ([]OrderCartItem, error)

OrderCartItemList list all items in your cart

func (*Client) OrderCartList Uses

func (c *Client) OrderCartList() ([]OrderCart, error)

OrderCartList list all your cart

func (*Client) OrderCartRequiredConfigurations Uses

func (c *Client) OrderCartRequiredConfigurations(cartID string, itemID int) ([]OrderCartConfigurationRequirements, error)

OrderCartRequiredConfigurations get required configurations for an item

func (*Client) OrderCreateCart Uses

func (c *Client) OrderCreateCart(cartCreateReq OrderCartCreateReq) (*OrderCart, error)

OrderCreateCart create a new cart

func (*Client) OrderDeleteCart Uses

func (c *Client) OrderDeleteCart(cartID string) error

OrderDeleteCart delete a cart

func (*Client) OrderDeleteCartItem Uses

func (c *Client) OrderDeleteCartItem(cartID string, itemID int) (*OrderCartItem, error)

OrderDeleteCartItem delete a cart item

func (*Client) OrderGetCheckoutCart Uses

func (c *Client) OrderGetCheckoutCart(cartID string) (*Order, error)

OrderGetCheckoutCart get prices and contracts information for your cart

func (*Client) OrderGetProductDomainOptions Uses

func (c *Client) OrderGetProductDomainOptions(cartID string, domain string) ([]OrderCartGenericOptionDefinition, error)

OrderGetProductDomainOptions get informations about a domain name options

func (*Client) OrderGetProductDomainPacks Uses

func (c *Client) OrderGetProductDomainPacks(cartID string, domain string) ([]OrderCartDomainPacksProductInformation, error)

OrderGetProductDomainPacks get informations about domain packs

func (*Client) OrderGetProductDomainRestore Uses

func (c *Client) OrderGetProductDomainRestore(cartID string, domain string) ([]OrderCartGenericProductDefinition, error)

OrderGetProductDomainRestore get products for a domain restore

func (*Client) OrderGetProductDomainTransfer Uses

func (c *Client) OrderGetProductDomainTransfer(cartID string, domain string) ([]OrderCartProductInformation, error)

OrderGetProductDomainTransfer get informations about a domain transfer

func (*Client) OrderGetProductDomainTransferOptions Uses

func (c *Client) OrderGetProductDomainTransferOptions(cartID string, domain string) ([]OrderCartGenericOptionDefinition, error)

OrderGetProductDomainTransferOptions get informations about domain name transfer options

func (*Client) OrderGetProductsDomain Uses

func (c *Client) OrderGetProductsDomain(cartID string, domain string) ([]OrderCartProductInformation, error)

OrderGetProductsDomain get products about a domain name

func (*Client) OrderPostCheckoutCart Uses

func (c *Client) OrderPostCheckoutCart(cartID string, waiveRetractationPeriod bool) (*Order, error)

OrderPostCheckoutCart validate your shopping and create order

func (*Client) OrderPostProductDomainPacks Uses

func (c *Client) OrderPostProductDomainPacks(cartID string, orderPostDomainPacksReq OrderPostDomainPacksReq) (*OrderCartItem, error)

OrderPostProductDomainPacks post a new domain packs in your cart

func (*Client) OrderSummaryCart Uses

func (c *Client) OrderSummaryCart(cartID string) (*Order, error)

OrderSummaryCart get a summary of your current order

func (*Client) OrderUpdateCart Uses

func (c *Client) OrderUpdateCart(cartID string, cartUpdateReq OrderCartUpdateReq) (*OrderCart, error)

OrderUpdateCart update a cart

func (*Client) OrderUpdateCartItem Uses

func (c *Client) OrderUpdateCartItem(cartID string, itemID int, duration string, quantity int) (*OrderCartItem, error)

OrderUpdateCartItem update a cart item

func (*Client) TelephonyBillingAccountInfo Uses

func (c *Client) TelephonyBillingAccountInfo(billingAccount string) (*Telephony, error)

TelephonyBillingAccountInfo retrieve all infos of one of your services

func (*Client) TelephonyEasyHuntingInfo Uses

func (c *Client) TelephonyEasyHuntingInfo(billingAccount, serviceName string) (*TelephonyEasyHunting, error)

TelephonyEasyHuntingInfo retrieve all infos of one easy hunting service GET /telephony/{billingAccount}/easyHunting/{serviceName}

func (*Client) TelephonyEasyHuntingList Uses

func (c *Client) TelephonyEasyHuntingList(billingAccount string, withDetails bool) ([]TelephonyEasyHunting, error)

TelephonyEasyHuntingList list all OVH easy calls queues associated with this billing account GET /telephony/{billingAccount}/easyHunting

func (*Client) TelephonyListBillingAccount Uses

func (c *Client) TelephonyListBillingAccount(withDetails bool) ([]Telephony, error)

TelephonyListBillingAccount list all your telephony services

func (*Client) TelephonyOvhPabxHunting Uses

func (c *Client) TelephonyOvhPabxHunting(billingAccount, serviceName string) (*TelephonyOvhPabxHunting, error)

TelephonyOvhPabxHunting retrieves info on OVH Pabx Hunting GET /telephony/{billingAccount}/easyHunting/{serviceName}/hunting

func (*Client) TelephonyOvhPabxHuntingAgentInfo Uses

func (c *Client) TelephonyOvhPabxHuntingAgentInfo(billingAccount, serviceName string, agentID int64) (*TelephonyOvhPabxHuntingAgent, error)

TelephonyOvhPabxHuntingAgentInfo gets info from OVH Pabx Hunting Agent GET /telephony/{billingAccount}/easyHunting/{serviceName}/hunting/agent

func (*Client) TelephonyOvhPabxHuntingAgentList Uses

func (c *Client) TelephonyOvhPabxHuntingAgentList(billingAccount, serviceName string, withDetails bool) ([]TelephonyOvhPabxHuntingAgent, error)

TelephonyOvhPabxHuntingAgentList list all OVH easy calls queues associated with this billing account GET /telephony/{billingAccount}/easyHunting/{serviceName}/hunting/agent

func (*Client) TelephonyOvhPabxHuntingAgentUpdate Uses

func (c *Client) TelephonyOvhPabxHuntingAgentUpdate(billingAccount, serviceName string, agentID int64, telephonyOvhPabxHuntingAgent TelephonyOvhPabxHuntingAgent) (*TelephonyOvhPabxHuntingAgent, error)

TelephonyOvhPabxHuntingAgentUpdate update OVH Pabx Hunting Agent PUT /telephony/{billingAccount}/easyHunting/{serviceName}/hunting/agent/{agentId}

func (*Client) VrackInfo Uses

func (c *Client) VrackInfo(vrackName string) (*Vrack, error)

VrackInfo ...

func (*Client) VrackList Uses

func (c *Client) VrackList() ([]Vrack, error)

VrackList ...

type ContainersService Uses

type ContainersService struct {
    Cluster      string   `json:"cluster,omitempty"`
    CreatedAt    string   `json:"createdAt,omitempty"`
    Frameworks   []string `json:"frameworks,omitempty"`
    LoadBalancer string   `json:"loadBalancer,omitempty"`
    Metrics      *struct {
        Resources *struct {
            CPU int `json:"cpu,omitempty"`
            Mem int `json:"mem,omitempty"`
        }   `json:"resources,omitempty"`
        UsedResources *struct {
            CPU float64 `json:"cpu,omitempty"`
            Mem int     `json:"mem,omitempty"`
        }   `json:"usedResources,omitempty"`
    }   `json:"metrics,omitempty"`
    Name      string   `json:"name,omitempty"`
    Slaves    []string `json:"slaves,omitempty"`
    State     string   `json:"state,omitempty"`
    UpdatedAt string   `json:"updatedAt,omitempty"`
}

ContainersService is a representation of a Containers Service

type DBaasQueueApp Uses

type DBaasQueueApp struct {
    ID        string `json:"id,omitempty"  description:"Application ID"`
    HumanID   string `json:"humanId,omitempty"  description:"Human ID of the application"`
    Name      string `json:"name,omitempty"  description:"Application name"`
    RegionID  string `json:"regionId,omitempty"  description:"Region ID of the application"`
    AppStatus string `json:"status,omitempty"  description:"Application status" enum:"not_configured,active,deleted"`
}

DBaasQueueApp represents a Qaas application

type DBaasQueueKey Uses

type DBaasQueueKey struct {
    ID         string `json:"id" description:"Key ID"`
    Name       string `json:"name" description:"Key name"`
    HumanAppID string `json:"humanAppId" description:"Human ID of the key's application"`
}

DBaasQueueKey represents a Qaas key used to authenticate users

type DBaasQueueMetricsAccount Uses

type DBaasQueueMetricsAccount struct {
    Host  string `json:"host" description:"OpenTSDB host url"`
    Token string `json:"token" description:"Token for OpenTSDB metrics access"`
}

DBaasQueueMetricsAccount represents metrics account

type DBaasQueueRegion Uses

type DBaasQueueRegion struct {
    ID   string `json:"id" description:"Region ID"`
    Name string `json:"name" description:"Region name"`
    URL  string `json:"url" description:"Region URL"`
}

DBaasQueueRegion represents a Qaas region

type DBaasQueueRole Uses

type DBaasQueueRole struct {
    Name          string   `json:"name" description:"Role name"`
    ReadACL       []string `json:"readAcl" description:"List of topics with read access"`
    WriteACL      []string `json:"writeAcl" description:"List of topics with write access"`
    AutoCreateACL bool     `json:"autoCreateACL" description:"Automatically create non-existing topics on read & write operations"`
}

DBaasQueueRole represents a Qaas Role

type DBaasQueueServiceInfo Uses

type DBaasQueueServiceInfo struct {
    CanDeleteAtExpiration bool        `json:"canDeleteAtExpiration"`
    ContactAdmin          string      `json:"contactAdmin"`
    ContactBilling        string      `json:"contactBilling"`
    ContactTech           string      `json:"contactTech"`
    Creation              string      `json:"creation"`
    Domain                string      `json:"domain"`
    EngagedUpTo           interface{} `json:"engagedUpTo"`
    Expiration            string      `json:"expiration"`
    PossibleRenewPeriod   []int       `json:"possibleRenewPeriod"`
    Renew                 struct {
        Automatic          bool `json:"automatic"`
        DeleteAtExpiration bool `json:"deleteAtExpiration"`
        Forced             bool `json:"forced"`
        Period             int  `json:"period"`
    }   `json:"renew"`
    RenewalType string `json:"renewalType"`
    Status      string `json:"status"`
}

DBaasQueueServiceInfo contains info about a service

type DBaasQueueTopic Uses

type DBaasQueueTopic struct {
    ID                string `json:"id" description:"Topic ID" schema:"string"`
    Partitions        int    `json:"partitions" description:"Number of partitions"`
    ReplicationFactor int    `json:"replicationFactor" description:"Replication factor"`
}

DBaasQueueTopic represents a Kafka topic

type DBaasQueueUser Uses

type DBaasQueueUser struct {
    ID       string   `json:"id" description:"User ID" schema:"string"`
    Name     string   `json:"name" description:"User name"`
    Roles    []string `json:"roles" description:"List of roles this user belongs to"` // not stored like that in DB
    Password string   `json:"password,omitempty" description:"User Password" schema:"string"`
}

DBaasQueueUser represents a Qaas user

type Domain Uses

type Domain struct {
    // "Is whois obfuscation supported by this domain name's registry"
    OwoSupported bool `json:"owoSupported,omitempty"`

    // "Does the registry support ipv6 glue record"
    GlueRecordIpv6Supported bool `json:"glueRecordIpv6Supported,omitempty"`

    // "Transfer lock status"
    TransferLockStatus string `json:"transferLockStatus,omitempty"`

    // "Domain's offer"
    Offer string `json:"offer,omitempty"`

    // "Contact Owner (you can edit it via /me/contact/<ID>)"
    WhoisOwner string `json:"whoisOwner,omitempty"`

    // "Is DNSSEC implemented for this domain name's tld"
    DnssecSupported bool `json:"dnssecSupported,omitempty"`

    // "Parent service"
    ParentService *string `json:"parentService,omitempty"`

    // "Domain name"
    Domain string `json:"domain"`

    // "Last update date"
    LastUpdate string `json:"lastUpdate,omitempty"`

    // "Does the registry support multi ip glue record"
    GlueRecordMultiIPSupported bool `json:"glueRecordMultiIpSupported,omitempty"`

    // "Name servers type"
    NameServerType string `json:"nameServerType,omitempty"`
}

Domain ...

type Flavor Uses

type Flavor struct {
    Region            string `json:"region,omitempty"`
    Name              string `json:"name,omitempty"`
    ID                string `json:"id,omitempty"`
    OS                string `json:"osType,omitempty"`
    Vcpus             int    `json:"vcpus,omitempty"`
    MemoryGB          int    `json:"ram,omitempty"`
    DiskSpaceGB       int    `json:"disk,omitempty"`
    Type              string `json:"type,omitempty"`
    InboundBandwidth  int    `json:"inboundBandwidth,omitempty"`
    OutboundBandwidth int    `json:"outboundBandwidth,omitempty"`
}

Flavor is a go representation of Cloud Flavor

type IP Uses

type IP struct {
    IP        string `json:"ip,omitempty"`
    NetworkID string `json:"networkId,omitempty"`
    Version   int    `json:"version,omitempty"`
    Type      string `json:"type,omitempty"`
}

IP is a go representation of a Cloud IP address

type Image Uses

type Image struct {
    Region       string  `json:"region,omitempty"`
    Name         string  `json:"name,omitempty"`
    ID           string  `json:"id,omitempty"`
    OS           string  `json:"type,omitempty"`
    CreationDate string  `json:"creationDate,omitempty"`
    Status       string  `json:"status,omitempty"`
    MinDisk      int     `json:"minDisk,omitempty"`
    Visibility   string  `json:"visibility,omitempty"`
    Size         float32 `json:"size,omitempty"`
    MinRAM       int     `json:"minRam,omitempty"`
    User         string  `json:"user,omitempty"`
}

Image is a go representation of a Cloud Image (VM template)

type Instance Uses

type Instance struct {
    Name           string  `json:"name,omitempty"`
    ID             string  `json:"id,omitempty"`
    Status         string  `json:"status,omitempty"`
    Created        string  `json:"created,omitempty"`
    Region         string  `json:"region,omitemptyn"`
    Image          *Image  `json:"image,omitempty"`
    Flavor         *Flavor `json:"flavor,omitempty"`
    Sshkey         *Sshkey `json:"sshKey,omitempty"`
    IPAddresses    []IP    `json:"ipAddresses,omitempty"`
    MonthlyBilling *string `json:"monthlyBilling,omitempty"`
}

Instance is a go representation of Cloud instance

type InstanceReq Uses

type InstanceReq struct {
    Name     string `json:"name,omitempty"`
    FlavorID string `json:"flavorID,omitempty"`
    ImageID  string `json:"imageID,omitempty"`
    Region   string `json:"region,omitempty"`
    SshkeyID string `json:"sshKeyID,omitempty"`
}

InstanceReq defines the fields for a VM creation

type Network Uses

type Network struct {
    ID      string `json:"id,omitempty"`
    Name    string `json:"name,omitempty"`
    Regions []struct {
        Region string `json:"region,omitempty"`
        Status string `json:"status,omitempty"`
    }   `json:"regions,omitempty"`
    Status string `json:"status,omitempty"`
    Type   string `json:"type,omitempty"`
    VlanID int    `json:"vlanId,omitempty"`
}

Network is a go representation of a Cloud IP address

type Order Uses

type Order struct {
    OrderID   int             `json:"orderId,omitempty"`
    URL       string          `json:"url,omitempty"`
    Details   []OrderDetail   `json:"details,omitempty"`
    Contracts []OrderContract `json:"contracts,omitempty"`
    Prices    OrderPrices     `json:"prices,omitempty"`
}

Order is a go representation of Order instance

type OrderCart Uses

type OrderCart struct {
    CartID      string     `json:"cartId,omitempty"`
    Expire      *time.Time `json:"expire,omitempty"`
    Description string     `json:"description,omitempty"`
    ReadOnly    bool       `json:"readOnly,omitempty"`
    Items       []int      `json:"items,omitempty"`
}

OrderCart is a go representation of Cart instance

type OrderCartConfigurationItem Uses

type OrderCartConfigurationItem struct {
    ID    int    `json:"id,omitempty"`
    Label string `json:"label,omitempty"`
    Value string `json:"value,omitempty"`
}

OrderCartConfigurationItem is a representation of a configuration item for personalizing product

type OrderCartConfigurationRequirements Uses

type OrderCartConfigurationRequirements struct {
    Required bool     `json:"required"`
    Fields   []string `json:"fields"`
    Label    string   `json:"label,omitempty"`
    Type     string   `json:"type,omitempty"`
}

OrderCartConfigurationRequirements is a representation of a configuration requirements

type OrderCartCreateReq Uses

type OrderCartCreateReq struct {
    Expire        *time.Time `json:"expire,omitempty"`
    Description   string     `json:"description,omitempty"`
    OVHSubsidiary string     `json:"ovhSubsidiary,omitempty"`
}

OrderCartCreateReq defines the fields for a Cart creation request

type OrderCartDomainPacksProductInformation Uses

type OrderCartDomainPacksProductInformation struct {
    PlanCode    string                           `json:"planCode,omitempty"`
    Description string                           `json:"description,omitempty"`
    Prices      []OrderCartGenericProductPricing `json:"prices,omitempty"`
}

OrderCartDomainPacksProductInformation is a representation of a domain packs product

type OrderCartDomainSettings Uses

type OrderCartDomainSettings struct {
    Domain   string `json:"domain,omitempty"`
    Phase    string `json:"phase,omitempty"`
    Offer    string `json:"offer,omitempty"`
    Quantity int    `json:"quantity,omitempty"`
}

OrderCartDomainSettings is a representation of domain name order properties

type OrderCartGenericOptionDefinition Uses

type OrderCartGenericOptionDefinition struct {
    ProductType string                           `json:"productType,omitempty"`
    ProductName string                           `json:"productName,omitempty"`
    PlanCode    string                           `json:"planCode,omitempty"`
    Mandatory   bool                             `json:"mandatory,omitempty"`
    Prices      []OrderCartGenericProductPricing `json:"prices,omitempty"`
    Family      string                           `json:"family,omitempty"`
    Exclusive   bool                             `json:"exclusive,omitempty"`
}

OrderCartGenericOptionDefinition is a representation of a generic option

type OrderCartGenericProductDefinition Uses

type OrderCartGenericProductDefinition struct {
    ProductName string                           `json:"productName,omitempty"`
    ProductType string                           `json:"productType,omitempty"`
    PlanCode    string                           `json:"planCode,omitempty"`
    Prices      []OrderCartGenericProductPricing `json:"prices,omitempty"`
}

OrderCartGenericProductDefinition is a representation of a generic product

type OrderCartGenericProductPricing Uses

type OrderCartGenericProductPricing struct {
    PriceInUcents   int        `json:"priceInUcents,omitempty"`
    Capacities      string     `json:"capacities,omitempty"`
    PricingMode     string     `json:"pricingMode,omitempty"`
    Duration        string     `json:"duration,omitempty"`
    Description     string     `json:"description,omitempty"`
    Interval        int        `json:"interval,omitempty"`
    MinimumRepeat   int        `json:"minimumRepeat,omitempty"`
    PricingType     string     `json:"pricingType,omitempty"`
    MaximumQuantity int        `json:"maximumQuantity,omitempty"`
    MaximumRepeat   int        `json:"maximumRepeat,omitempty"`
    MinimumQuantity int        `json:"minimumQuantity,omitempty"`
    Price           OrderPrice `json:"price,omitempty"`
}

OrderCartGenericProductPricing is a representation of a generic product pricing

type OrderCartItem Uses

type OrderCartItem struct {
    OfferID        string                  `json:"offerId,omitempty"`
    Options        []int                   `json:"options,omitempty"`
    ParentItemID   int                     `json:"parentItemId,omitempty"`
    ProductID      string                  `json:"productId,omitempty"`
    Duration       string                  `json:"duration,omitempty"`
    Settings       OrderCartDomainSettings `json:"settings,omitempty"`
    ItemID         int                     `json:"itemID,omitempty"`
    Configurations []int                   `json:"configurations,omitempty"`
    CartID         string                  `json:"cartId,omitempty"`
    Prices         []OrderCartPrice        `json:"prices,omitempty"`
}

OrderCartItem is a representation of a cart item

type OrderCartPrice Uses

type OrderCartPrice struct {
    Label string     `json:"label,omitempty"`
    Price OrderPrice `json:"price,omitempty"`
}

OrderCartPrice is a representation of a cart price

type OrderCartProductInformation Uses

type OrderCartProductInformation struct {
    DeliveryTime   string                               `json:"deliveryTime"`
    ProductID      string                               `json:"productId,omitempty"`
    Offer          string                               `json:"offer,omitempty"`
    OfferID        string                               `json:"offerId,omitempty"`
    Duration       []string                             `json:"duration,omitempty"`
    Orderable      bool                                 `json:"orderable"`
    Configurations []OrderCartConfigurationRequirements `json:"configurations"`
    Phase          string                               `json:"phase,omitempty"`
    QuantityMax    int                                  `json:"quantityMax,omitempty"`
    Prices         []OrderCartPrice                     `json:"prices,omitempty"`
}

OrderCartProductInformation is a representation of a product information

type OrderCartUpdateReq Uses

type OrderCartUpdateReq struct {
    Expire      *time.Time `json:"expire,omitempty"`
    Description string     `json:"description,omitempty"`
}

OrderCartUpdateReq defines the fields for a Cart update request

type OrderContract Uses

type OrderContract struct {
    Name    string `json:"name,omitempty"`
    URL     string `json:"url,omitempty"`
    Content string `json:"content,omitempty"`
}

OrderContract is a go representation of OrderContract instance

type OrderDetail Uses

type OrderDetail struct {
    Domain      string     `json:"domain,omitempty"`
    TotalPrice  OrderPrice `json:"totalPrice,omitempty"`
    DetailType  string     `json:"detailType,omitempty"`
    Quantity    int        `json:"quantity,omitempty"`
    UnitPrice   OrderPrice `json:"unitPrice,omitempty"`
    Description string     `json:"description,omitempty"`
}

OrderDetail is a go representation of OrderDetail instance

type OrderPostDomainOptionReq Uses

type OrderPostDomainOptionReq struct {
    Duration    string `json:"duration,omitempty"`
    ItemID      int    `json:"itemId,omitempty"`
    PlanCode    string `json:"planCode,omitempty"`
    PricingMode string `json:"pricingMode,omitempty"`
    Quantity    int    `json:"quantity,omitempty"`
}

OrderPostDomainOptionReq defines the fields for a Cart creation request

type OrderPostDomainPacksReq Uses

type OrderPostDomainPacksReq struct {
    Domain      string `json:"domain,omitempty"`
    Duration    string `json:"duration,omitempty"`
    PlanCode    string `json:"planCode,omitempty"`
    PricingMode string `json:"pricingMode,omitempty"`
    Quantity    int    `json:"quantity,omitempty"`
}

OrderPostDomainPacksReq defines the fields for a Cart creation request

type OrderPostDomainReq Uses

type OrderPostDomainReq struct {
    Domain   string `json:"domain,omitempty"`
    Duration string `json:"duration,omitempty"`
    OfferID  string `json:"offerId,omitempty"`
    Quantity int    `json:"quantity,omitempty"`
}

OrderPostDomainReq defines the fields for a Cart creation request

type OrderPrice Uses

type OrderPrice struct {
    CurrencyCode string  `json:"currencyCode,omitempty"`
    Value        float32 `json:"value,omitempty"`
    Text         string  `json:"text,omitempty"`
}

OrderPrice is a go representation of OrderPrice instance

type OrderPrices Uses

type OrderPrices struct {
    WithoutTax OrderPrice `json:"withoutTax,omitempty"`
    Tax        OrderPrice `json:"tax,omitempty"`
    WithTax    OrderPrice `json:"withTax,omitempty"`
}

OrderPrices is a go representation of OrderPrices instance

type Project Uses

type Project struct {
    Name         string `json:"description,omitempty"`
    ID           string `json:"project_id"`
    Unleash      bool   `json:"unleash,omitempty"`
    CreationDate string `json:"creationDate,omitempty"`
    OrderID      int    `json:"orderID,omitempty"`
    Status       string `json:"status,omitempty"`
}

Project is a go representation of a Cloud project

type RebootReq Uses

type RebootReq struct {
    Type string `json:"type,omitempty"`
}

RebootReq defines the fields for a VM reboot

type Region Uses

type Region struct {
    Region             string `json:"region,omitempty"`
    Status             string `json:"status,omitempty"`
    ContinentCode      string `json:"continentCode,omitempty"`
    DatacenterLocation string `json:"datacenterLocation,omitempty"`
    Name               string `json:"name,omitempty"`
    Services           []struct {
        Name   string `json:"name,omitempty"`
        Status string `json:"status,omitempty"`
    }   `json:"services,omitempty"`
}

Region is a go representation of Cloud Region

type Sshkey Uses

type Sshkey struct {
    Name        string   `json:"name,omitempty"`
    ID          string   `json:"id,omitempty"`
    PublicKey   string   `json:"publicKey,omitempty"`
    Fingerprint string   `json:"fingerPrint,omitempty"`
    Regions     []string `json:"regions"`
}

Sshkey is a go representation of Cloud SSH Key

type SshkeyReq Uses

type SshkeyReq struct {
    Name      string `json:"name,omitempty"`
    PublicKey string `json:"publicKey,omitempty"`
    Region    string `json:"region,omitempty"`
}

SshkeyReq defines the fields for an SSH Key upload

type Telephony Uses

type Telephony struct {
    // SecurityDeposit contains Security deposit amount
    SecurityDeposit string `json:"securityDeposit"`
    // Status contains Current status of billing account
    Status string `json:"status"`
    //  OverrideDisplayedNumber contains Override number display for calls between services of your billing account
    OverrideDisplayedNumber bool `json:"overrideDisplayedNumber"`
    // CurrentOutplan contains Price with it's currency and textual representation
    CurrentOutplan string `json:"currentOutplan"`
    // Trusted : Is the billing account trusted
    Trusted bool `json:"trusted"`
    // Description of the billing account
    Description string `json:"description"`
    // AllowedOutplan Allowed outplan
    AllowedOutplan string `json:"allowedOutplan"`
    // BillingAccount : Name of the billing account
    BillingAccount string `json:"billingAccount"`
    // CreditThreshold : Allowed threshold credit
    CreditThreshold string `json:"creditThreshold"`
}

Telephony struct

type TelephonyEasyHunting Uses

type TelephonyEasyHunting struct {
    //Max wait time when caller is in queue (in seconds)
    MaxWaitTime float64 `json:"maxWaitTime,omitempty"`

    // FeatureType
    FeatureType string `json:"featureType,omitempty"`

    // Strategy : The calls dispatching strategy
    Strategy string `json:"strategy,omitempty"`

    // QueueSize Max number of callers in queue
    QueueSize float64 `json:"queueSize,omitempty"`

    // ToneOnHold: Tone played when caller is put on hold
    ToneOnHold float64 `json:"toneOnHold,omitempty"`

    // ServiceName containers service Name
    ServiceName string `json:"serviceName,omitempty"`

    // ShowCallerNumber: The presented number when bridging calls
    ShowCallerNumber string `json:"showCallerNumber,omitempty"`

    // Description ...
    Description string `json:"description,omitempty"`

    // AnonymousRejection: Reject (hangup) anonymous calls
    AnonymousRejection bool `json:"anonymousRejection,omitempty"`

    //ToneOnOpening: Tone played when call is picked up
    ToneOnOpening float64 `json:"toneOnOpening,omitempty"`

    // serviceType
    ServiceType string `json:"serviceType,omitempty"`

    // Voicemail: The voicemail used by the EasyPABX
    Voicemail string `json:"voicemail,omitempty"`

    //ToneOnClosing: Tone played just before call is hang up
    ToneOnClosing float64 `json:"toneOnClosing,omitempty"`
}

TelephonyEasyHunting struct

type TelephonyOvhPabxHunting Uses

type TelephonyOvhPabxHunting struct {
    // CrmUrlTemplate: The templated url of your CRM, opened by the banner application of your cloudpabx
    CRMUrlTemplate string `json:"crmUrlTemplate,omitempty"`
    // The name of your callcenter offer
    Name string `json:"name,omitempty"`
    // Enable G729 codec on your callcenter
    G729 bool `json:"g729,omitempty"`
}

TelephonyOvhPabxHunting struct

type TelephonyOvhPabxHuntingAgent Uses

type TelephonyOvhPabxHuntingAgent struct {
    // ID of agent
    AgentID int64 `json:"agentId,omitempty"`
    // The wrap up time (in seconds) after the calls
    WrapUpTime int64 `json:"wrapUpTime,omitempty"`
    // The number of the agent
    Number string `json:"number,omitempty"`
    // The waiting timeout (in seconds) before hangup an assigned called
    Timeout int64 `json:"timeout,omitempty"`
    // The current status of the agent
    Status string `json:"status,omitempty"`
    // The maximum of simultaneous calls that the agent will receive from the hunting
    SimultaneousLines int64 `json:"simultaneousLines,omitempty"`
    // The id of the current break status of the agent
    BreakStatus int64 `json:"breakStatus,omitempty"`
}

TelephonyOvhPabxHuntingAgent ...

type User Uses

type User struct {
    CreationDate time.Time `json:"creationDate"`
    Status       string    `json:"status"`
    ID           int       `json:"id"`
    Description  string    `json:"description"`
    Username     string    `json:"username"`
    Password     string    `json:"password"`
}

User is a go representation of Cloud user instance

type Vrack Uses

type Vrack struct {

    // "Vrack name"
    Name string `json:"name,omitempty"`

    // "Vrack decription"
    Description string `json:"description,omitempty"`
}

Vrack ...

Directories

PathSynopsis
ovhcliovhcli offers to manage your Ovh services
ovhcli/caas
ovhcli/cloud
ovhcli/cloud/instance
ovhcli/cloud/network
ovhcli/cloud/project
ovhcli/cloud/sshkey
ovhcli/common
ovhcli/connect
ovhcli/dbaas
ovhcli/dbaas/queue
ovhcli/dbaas/queue/key
ovhcli/dbaas/queue/metrics
ovhcli/dbaas/queue/region
ovhcli/dbaas/queue/role
ovhcli/dbaas/queue/service
ovhcli/dbaas/queue/topic
ovhcli/dbaas/queue/user
ovhcli/domain
ovhcli/order
ovhcli/order/cart
ovhcli/order/cart/domain
ovhcli/telephony
ovhcli/telephony/easyhunting
ovhcli/telephony/easyhunting/hunting
ovhcli/telephony/easyhunting/hunting/agent
ovhcli/version
ovhcli/vrack

Package ovh imports 6 packages (graph) and is imported by 30 packages. Updated 2017-01-19. Refresh now. Tools for package owners.