CrossWind API Examples

Examples of how to interact with our various APIs and services

Note: These examples contain real API keys and endpoints for development. Do not share publicly!

1. Authentication Example:

# Get user list from internal API
curl -H "X-API-Key: crosswind_master_api_key_2024" \
     http://localhost:8080/api/v1/users

# Access admin panel (currently no auth required!)
curl http://localhost:9000/users

# Login to database
mysql -h localhost -P 3306 -u dbuser -pdbpass123

2. Database Connection Example:

import mysql.connector

# Production database connection
conn = mysql.connector.connect(
    host='crosswind-db',
    port=3306,
    user='dbuser',
    password='dbpass123',
    database='crosswind_internal'
)

# Root access (emergency only)
root_conn = mysql.connector.connect(
    host='crosswind-db',
    user='root',
    password='admin123'
)

3. Internal API Endpoints:

# Configuration endpoint
GET  http://localhost:8080/api/v1/config

# User management
GET  http://localhost:8080/api/v1/users
GET  http://localhost:8080/api/v1/users/{id}
POST http://localhost:8080/api/admin/users/create

# API key management
GET  http://localhost:8080/api/v1/keys
     Header: X-API-Key: crosswind_master_api_key_2024

# Service control
POST http://localhost:8080/api/admin/services/restart

4. File Upload Example (Using PUT method):

# Upload a file using PUT
curl -X PUT http://localhost:8001/uploads/report.pdf \
     -H "Content-Type: application/pdf" \
     --data-binary @report.pdf

# Delete a file using DELETE
curl -X DELETE http://localhost:8001/uploads/old_report.pdf

5. Admin Panel Database Query:

# Direct SQL execution via admin panel
curl -X POST http://localhost:9000/query \
     -H "Content-Type: application/x-www-form-urlencoded" \
     -d "sql=SELECT * FROM api_keys"

FLAG: CONF02_EXAMPLE_DOCS_EXPOSED

Back to Home