Initial commit: loc_az_hci (smom-dbis-138 excluded via .gitignore)
Some checks failed
Test / test (push) Has been cancelled
Some checks failed
Test / test (push) Has been cancelled
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
111
docs/reference/api-reference.md
Normal file
111
docs/reference/api-reference.md
Normal file
@@ -0,0 +1,111 @@
|
||||
# API Reference
|
||||
|
||||
API documentation for the Azure Stack HCI project.
|
||||
|
||||
## Proxmox API
|
||||
|
||||
### Authentication
|
||||
|
||||
```bash
|
||||
# Get ticket
|
||||
curl -k -d "username=root@pam&password=YOUR_PASSWORD" \
|
||||
https://PROXMOX_HOST:8006/api2/json/access/ticket
|
||||
|
||||
# Use ticket in subsequent requests
|
||||
curl -k -H "Cookie: PVEAuthCookie=TICKET" \
|
||||
-H "CSRFPreventionToken: TOKEN" \
|
||||
https://PROXMOX_HOST:8006/api2/json/version
|
||||
```
|
||||
|
||||
### Common Endpoints
|
||||
|
||||
- `GET /api2/json/version` - Get Proxmox version
|
||||
- `GET /api2/json/cluster/status` - Get cluster status
|
||||
- `GET /api2/json/nodes` - List nodes
|
||||
- `GET /api2/json/nodes/{node}/qemu` - List VMs on node
|
||||
- `POST /api2/json/nodes/{node}/qemu` - Create VM
|
||||
- `GET /api2/json/nodes/{node}/qemu/{vmid}/config` - Get VM config
|
||||
- `PUT /api2/json/nodes/{node}/qemu/{vmid}/config` - Update VM config
|
||||
|
||||
## Azure Arc API
|
||||
|
||||
### Connected Machines
|
||||
|
||||
```bash
|
||||
# List connected machines
|
||||
az connectedmachine list --resource-group HC-Stack
|
||||
|
||||
# Get machine details
|
||||
az connectedmachine show \
|
||||
--resource-group HC-Stack \
|
||||
--name MACHINE_NAME
|
||||
|
||||
# Delete machine
|
||||
az connectedmachine delete \
|
||||
--resource-group HC-Stack \
|
||||
--name MACHINE_NAME
|
||||
```
|
||||
|
||||
### Kubernetes Clusters
|
||||
|
||||
```bash
|
||||
# List connected clusters
|
||||
az connectedk8s list --resource-group HC-Stack
|
||||
|
||||
# Get cluster details
|
||||
az connectedk8s show \
|
||||
--resource-group HC-Stack \
|
||||
--name CLUSTER_NAME
|
||||
```
|
||||
|
||||
## Kubernetes API
|
||||
|
||||
### Common kubectl Commands
|
||||
|
||||
```bash
|
||||
# Get nodes
|
||||
kubectl get nodes
|
||||
|
||||
# Get pods
|
||||
kubectl get pods --all-namespaces
|
||||
|
||||
# Get services
|
||||
kubectl get services --all-namespaces
|
||||
|
||||
# Get deployments
|
||||
kubectl get deployments --all-namespaces
|
||||
|
||||
# Describe resource
|
||||
kubectl describe pod POD_NAME -n NAMESPACE
|
||||
|
||||
# Get logs
|
||||
kubectl logs POD_NAME -n NAMESPACE
|
||||
|
||||
# Execute command in pod
|
||||
kubectl exec -it POD_NAME -n NAMESPACE -- COMMAND
|
||||
```
|
||||
|
||||
## Cloudflare API
|
||||
|
||||
### Tunnel Management
|
||||
|
||||
```bash
|
||||
# List tunnels
|
||||
curl -X GET "https://api.cloudflare.com/client/v4/accounts/ACCOUNT_ID/cfd_tunnel" \
|
||||
-H "Authorization: Bearer API_TOKEN" \
|
||||
-H "Content-Type: application/json"
|
||||
|
||||
# Create tunnel
|
||||
curl -X POST "https://api.cloudflare.com/client/v4/accounts/ACCOUNT_ID/cfd_tunnel" \
|
||||
-H "Authorization: Bearer API_TOKEN" \
|
||||
-H "Content-Type: application/json" \
|
||||
-d '{"name":"tunnel-name","config_src":"cloudflare"}'
|
||||
```
|
||||
|
||||
## Additional Resources
|
||||
|
||||
- [Proxmox VE API Documentation](https://pve.proxmox.com/pve-docs/api-viewer/index.html)
|
||||
- [Azure Arc REST API](https://docs.microsoft.com/rest/api/azurearc/)
|
||||
- [Kubernetes API Documentation](https://kubernetes.io/docs/reference/kubernetes-api/)
|
||||
- [Cloudflare API Documentation](https://developers.cloudflare.com/api/)
|
||||
|
||||
Reference in New Issue
Block a user