There was a problem loading the comments.

API Endpoints

Support Portal  »  Knowledgebase  »  Viewing Article

  Print

Overview

 

Gozunga Cloud provides RESTful API endpoints for managing your cloud resources. This documentation is centered around our SiouxFalls region.

 

Our platform uses OpenStack at its foundation and thus existing tools that use OpenStack's APIs are compatible with our platform.

 

Base URLs

 

All API endpoints are accessible through the following base URL pattern:

https://cloud.fsd1.gozunga.com:<service-port>

 

Service Endpoints

 

Identity Service (Keystone)

Base URL: https://cloud.fsd1.gozunga.com:5000

 

  • Authentication and token management
  • User management

 

 

Common Operations:

# Get auth token
POST /v3/auth/tokens

# List projects
GET /v3/projects

# List users
GET /v3/users

 

Compute Service (Nova)

Base URL: https://cloud.fsd1.gozunga.com:8774

 

  • Create / Modify / Delete Cloud Instances

 

Common Operations:

# List servers
GET /v2.1/servers

# Create server
POST /v2.1/servers

# Get server details
GET /v2.1/servers/{server_id}

# List flavors
GET /v2.1/flavors

 

Block Storage (Cinder)

Base URL: https://cloud.fsd1.gozunga.com:8776

 

  • Volume management
  • Snapshot operations
  • Volume type management
  • Backup operations

 

Common Operations:

# List volumes
GET /v3/volumes

# Create volume
POST /v3/volumes

# Create snapshot
POST /v3/snapshots

 

Network Service (Neutron)

Base URL: https://cloud.fsd1.gozunga.com:9696

 

  • Network management
  • Subnet operations
  • Security group configuration
  • Router management
  • Load balancer configuration

 

Common Operations:

# List networks
GET /v2.0/networks

# Create port
POST /v2.0/ports

# List security groups
GET /v2.0/security-groups

 

Image Service (Glance)

Base URL: https://cloud.fsd1.gozunga.com:9292

 

  • Used for managing operating system images
  • Modify image metadata

 

Common Operations:

# List images
GET /v2/images

# Create image
POST /v2/images

# Upload image data
PUT /v2/images/{image_id}/file

 

Object Storage (S3)

Base URL: https://files.fsd1.gozunga.com

 

  • Container management
  • Object operations
  • Access control
  • Large object support

 

Note: Use Signature v2 option if available

 

Related Information:

Configuring s3cmd with Gozunga Cloud Files

Using Cyberduck with Gozunga's Object Storage API

 

 

Request Format

 

Headers

Content-Type: application/json
X-Auth-Token: {your_auth_token}

 

Example Request

curl -X GET \
https://cloud.fsd1.gozunga.com:8774/v2.1/servers \
-H 'X-Auth-Token: your_token' \
-H 'Content-Type: application/json'

 

Response Format

 

Success Response

{
"servers": [
{
"id": "server-id",
"name": "server-name",
"status": "ACTIVE"
}
]
}

 

Error Response

{
"error": {
"code": 404,
"message": "Resource not found",
"details": "Additional error details"
}
}

 

Rate Limits

 

  • Default rate limit: 50 requests per second
  • Burst limit: 100 requests
  • Rate limits are per project
  • Exceeded limits return 429 Too Many Requests

 

Headers for rate limit information:

X-Rate-Limit-Limit: 50
X-Rate-Limit-Remaining: 49
X-Rate-Limit-Reset: 1234567890

 

Best Practices

 

  1. Authentication
  • Cache authentication tokens
  • Implement token refresh logic
  • Handle expired tokens gracefully

 

  1. Error Handling
  • Implement exponential backoff
  • Handle rate limits appropriately
  • Log detailed error responses

 

  1. Performance
  • Use pagination for large datasets
  • Minimize API calls
  • Implement caching where appropriate

 

  1. Security
  • Always use HTTPS
  • Protect authentication tokens
  • Implement proper error handling

 

SDK Support

 

We recommend using official OpenStack SDKs using Application Credentials, available from Access → Application Credentials in our Cloud Management Portal:

 

First, install the required packages:

pip install python-openstacksdk

 

# Python OpenStack SDK
from openstack import connection

conn = connection.Connection(
auth_url='https://cloud.fsd1.gozunga.com:5000/v3',
project_name='your_project',
username='your_username',
password='your_password',
region_name='fsd1'
)

# List servers
servers = conn.compute.servers()

 


Share via
Did you find this article useful?  

Related Articles


On-Premise Help Desk Software by SupportPal
© Gozunga