IDCloudHost API

Panduan singkat terkait penggunaan API IDCloudHost untuk memudahkan dalam mengelola resource seperti Virtual Machines dan bucket Object Storage

Sebelum memulai, Anda dapat membuat Token API melalui menu ACCESS.

User

Get User Info

curl "https://api.idcloudhost.com/v1/user-resource/user" \
    -H "apikey: meowmeowmeow" \
    -X GET

Token

Create Token

curl "https://api.idcloudhost.com/v1/user-resource/token" \
    -H "apikey: meowmeowmeow" \
    -X POST \
    -d "description=Token Description" \
    -d "restricted=true" \
    -d "billing_account_id=6"

List Tokens

curl "https://api.idcloudhost.com/v1/user-resource/token/list" \
    -H "apikey: meowmeowmeow" \
    -X GET

Delete Token

curl "https://api.idcloudhost.com/v1/user-resource/token" \
    -H "apikey: meowmeowmeow" \
    -X DELETE \
    -d "token_id=0"

VM

List VMs

curl "https://console.idcloudhost.com/v1/sgp01/user-resource/vm/list" \
    -H "apikey: meowmeowmeow" \
    -X GET

Location: jkt01, jkt02, jkt03, sgp01

Start VM

curl "https://api.idcloudhost.com/v1/sgp01/user-resource/vm/start" \
    -H "apikey: meowmeowmeow" \
    -X POST \
    -d "uuid=971556e6-fe21-47f9-bfd4-92b505aa9504"

Stop VM

curl "https://api.idcloudhost.com/v1/sgp01/user-resource/vm/stop" \
    -H "apikey: meowmeowmeow" \
    -X POST \
    -d "uuid=5052bf02-044a-4d35-a803-d6b156f84beb"
    -d "force=true"

Get VM Info

curl "https://api.idcloudhost.com/v1/sgp01/user-resource/vm?uuid=f80b1d62-ffe4-43ef-9210-60f05445456a" \
    -H "apikey: meowmeowmeow" \
    -X GET

Delete VM

curl "https://api.idcloudhost.com/v1/sgp01/user-resource/vm" \
    -H "apikey: meowmeowmeow" \
    -X DELETE \
    -d "uuid=aaaaaaaa-0000-bbbb-1111-cccccccccccc"

Object Storage

S3 API Info

curl "https://api.idcloudhost.com/v1/storage/api/s3" \
    -H "apikey: meowmeowmeow" \
    -X GET

List Buckets

curl "https://api.idcloudhost.com/v1/storage/bucket/list" \
    -H "apikey: meowmeowmeow" \
    -X GET

Private networks

List Networks

curl "https://console.idcloudhost.com/v1/sgp01/network/networks" \
    -H "apikey: meowmeowmeow" \
    -X GET

Location: jkt01, jkt02, jkt03, sgp01

Floating IP

List Floating IPs

curl "https://console.idcloudhost.com/v1/sgp01/network/ip_addresses" \
    -H "apikey: meowmeowmeow" \
    -X GET

Location: jkt01, jkt02, jkt03, sgp01

Assign Floating IP

curl "https://api.idcloudhost.com/v1/sgp01/network/ip_addresses/1.1.1.1/assign" \
    -H "apikey: meowmeowmeow" \
    -H "Content-Type: application/json" \
    -X POST \
    --data '{"vm_uuid": "88e5a11b-9c89-4986-99c7-90d43499317c"}'

Un-assign Floating IP

curl "https://api.idcloudhost.com/v1/sgp01/network/ip_addresses/1.1.1.1/unassign" \
    -H "apikey: meowmeowmeow" \
    -X POST

Delete Floating IP

curl "https://api.idcloudhost.com/v1/sgp01/network/ip_addresses/1.1.1.1" \
    -H "apikey: meowmeowmeow" \
    -X DELETE

Network Load Balancer

List user load balancers

curl "https://console.idcloudhost.com/v1/sgp01/network/load_balancers" \
    -H "apikey: meowmeowmeow" \
    -X GET

Location: jkt01, jkt02, jkt03, sgp01

Parameters

VM parameters

curl "https://api.idcloudhost.com/v1/api/parameters/vm" \
    -H "apikey: meowmeowmeow" \
    -X GET

VM images list

curl "https://api.idcloudhost.com/v1/config/vm_images" \
    -H "apikey: meowmeowmeow" \
    -X GET

Get Plain OS images

curl "https://api.idcloudhost.com/v1/config/vm_images/plain_os" \
    -H "apikey: meowmeowmeow" \
    -X GET

Get App Catalog images

curl "https://api.idcloudhost.com/v1/config/vm_images/app_catalog" \
    -H "apikey: meowmeowmeow" \
    -X GET

Payment

List billing accounts

curl "https://api.idcloudhost.com/v1/payment/billing_account/list" \
    -H "apikey: meowmeowmeow" \
    -X GET

List credit

curl "https://api.idcloudhost.com/v1/payment/credit/list?billing_account_id=6" \
    -H "apikey: meowmeowmeow" \
    -X GET

List invoices

curl "https://api.idcloudhost.com/v1/payment/invoice/list?billing_account_id=6" \
    -H "apikey: meowmeowmeow" \
    -X GET