ByCloud Docs
GuidesCLIAPISDK

Go SDK

Databases

Database instances and backups

10 methods

GET

ListDatabaseBackups()

List database backups

Parameters

limit

integer

- Maximum number of items to return

marker

string

- ID of the last item from the previous page (for pagination)

name

string

- Filter by name (exact match or prefix with *)

status

string

- Filter by status

instance_id

string

- Filter by database instance ID

datastore_type

string

- Filter by datastore type

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.ListDatabaseBackups(ctx)
if err != nil {
panic(err)
}
fmt.Println(result)
}
POST

CreateDatabaseBackup()

Create database backup

Parameters

instance_id

string

required
name

string

required
description

string

parent_id

string

- Parent backup ID for incremental backup

incremental

boolean

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.CreateDatabaseBackup(ctx, &bycloud.CreateDatabaseBackupParams{
Instance_id: "550e8400-e29b-41d4-a716-446655440000",
Name: "backup-2024-01-15",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
GET

GetDatabaseBackup()

Get database backup

Parameters

database_backup_id

string

required

- Database Backup ID

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.GetDatabaseBackup(ctx, &bycloud.GetDatabaseBackupParams{
Database_backup_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
DELETE

DeleteDatabaseBackup()

Delete database backup

Parameters

database_backup_id

string

required

- Database Backup ID

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.DeleteDatabaseBackup(ctx, &bycloud.DeleteDatabaseBackupParams{
Database_backup_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
GET

ListDatabaseFlavors()

List database flavors

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.ListDatabaseFlavors(ctx)
if err != nil {
panic(err)
}
fmt.Println(result)
}
GET

ListDatabaseInstances()

List database instances

Parameters

limit

integer

- Maximum number of items to return

marker

string

- ID of the last item from the previous page (for pagination)

name

string

- Filter by name (exact match or prefix with *)

status

string

- Filter by status

datastore_type

string

- Filter by datastore type

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.ListDatabaseInstances(ctx)
if err != nil {
panic(err)
}
fmt.Println(result)
}
POST

CreateDatabaseInstance()

Create database instance

Parameters

name

string

required
flavor_id

string

required
datastore

object

required
volume

object

required
networks

array

databases

array

- Initial databases to create

users

array

- Initial users to create

configuration_id

string

replica_of

string

- Source instance ID (for read replicas)

replica_count

integer

- Number of read replicas to create

public_access

boolean

ssl_enabled

boolean

backup_schedule

object

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.CreateDatabaseInstance(ctx, &bycloud.CreateDatabaseInstanceParams{
Name: "production-db",
Flavor_id: "550e8400-e29b-41d4-a716-446655440000",
Datastore: [object Object],
Volume: [object Object],
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
GET

GetDatabaseInstance()

Get database instance

Parameters

database_instance_id

string

required

- Database Instance ID

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.GetDatabaseInstance(ctx, &bycloud.GetDatabaseInstanceParams{
Database_instance_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
PATCH

UpdateDatabaseInstance()

Update database instance

Parameters

database_instance_id

string

required

- Database Instance ID

name

string

configuration_id

string

public_access

boolean

backup_schedule

object

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.UpdateDatabaseInstance(ctx, &bycloud.UpdateDatabaseInstanceParams{
Database_instance_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}
DELETE

DeleteDatabaseInstance()

Delete database instance

Parameters

database_instance_id

string

required

- Database Instance ID

Example

package main
import (
"context"
"fmt"
"github.com/bycoded/bycloud-go"
)
func main() {
client := bycloud.New(bycloud.WithToken("YOUR_ACCESS_TOKEN"))
ctx := context.Background()
result, err := client.Databases.DeleteDatabaseInstance(ctx, &bycloud.DeleteDatabaseInstanceParams{
Database_instance_id: "550e8400-e29b-41d4-a716-446655440000",
})
if err != nil {
panic(err)
}
fmt.Println(result)
}