Examples ======== Example 1: Authenticate via curl -------------------------------- .. code-block:: bash curl -X POST https://api.veraetime.net/api/auth \ -H "Content-Type: application/json" \ -d '{ "username": "user@example.com", "password": "secret" }' **Response:** .. code-block:: json { "status": "success", "message": "Authentication successful" } Example 2: List available APIs ------------------------------ .. code-block:: bash curl -X GET https://api.veraetime.net/api/list **Response:** .. code-block:: json { "status": "success", "apis": [ { "name": "auth-signin", "method": "POST", "path": "/v1/auth/signin", "description": "Sign in to evercycle" }, { "name": "get-all", "method": "GET", "path": "/v1/asset", "description": "Get all Assets" } ] } Example 3: Get all assets (paginated) ------------------------------------- .. code-block:: bash curl -X GET "https://api.veraetime.net/api/get-all?page_num=1&per_page=10" **Response:** .. code-block:: json { "status": "success", "data": [ { "id": 1, "make": "Apple", "model": "iPhone 14", ... }, { "id": 2, "make": "Samsung", "model": "Galaxy S23", ... } ] } Example 4: Get asset by ID -------------------------- .. code-block:: bash curl -X GET "https://api.veraetime.net/api/get-asset-id?id=12345" **Response:** .. code-block:: json { "status": "success", "data": { "id": 12345, "asset_type_id": 1, "year": 2023, "make": "Apple", "model": "iPhone 14 Pro", "serial_number": "SN-ABC-123", ... } } Example 5: Create a new asset ----------------------------- .. code-block:: bash curl -X POST https://api.veraetime.net/api/create \ -H "Content-Type: application/json" \ -d '{ "asset_type_id": 1, "year": 2023, "make": "Apple", "model": "iPhone 14 Pro", "serial_number": "SN-TEST-9999", "asset_reference": "REF-9999", "asset_damage_type_id": 0, "damage_description": "", "carrier": "Unlocked", "cpu": "A16", "ram": "6GB", "screen": "6.1 inch", "purchase_date": "2023-01-15", "asset_user_first_name": "John", "asset_user_last_name": "Doe", "asset_user_email": "john@example.com", "asset_user_phone": "555-1234", "archived": 0 }' **Response:** .. code-block:: json { "status": "success", "data": { "id": 99999, "created_at": "2024-01-01T00:00:00Z", "updated_at": "2024-01-01T00:00:00Z" } } Example 6: Edit an asset ------------------------ .. code-block:: bash curl -X PUT https://api.veraetime.net/api/edit-asset-id \ -H "Content-Type: application/json" \ -d '{ "id": 12345, "make": "Apple", "model": "iPhone 14 Pro Max", "damage_description": "Minor scratch on screen" }' Example 7: Update grade price ----------------------------- .. code-block:: bash curl -X PUT https://api.veraetime.net/api/grade \ -H "Content-Type: application/json" \ -d '{ "id": 12345, "grade": "A+", "price": 850.00 }' Example 8: CLI usage — generate configs --------------------------------------- .. code-block:: bash cd /opt/evercycle-api/evercycle-api python3 ../src/api_runner.py generate Example 9: CLI usage — authenticate and run an API -------------------------------------------------- .. code-block:: bash cd /opt/evercycle-api/evercycle-api python3 ../src/api_runner.py run auth-signin python3 ../src/api_runner.py run get-all Example 10: Python programmatic usage ------------------------------------- .. code-block:: python import sys sys.path.append('/opt/evercycle-api/src') from evercycle_api import EvercycleApiClient client = EvercycleApiClient(api_dir='/opt/evercycle-api/evercycle-api') # Authenticate client.authenticate('user@example.com', 'secret') # List APIs client.list_apis() # Call an API client.call_api('get-all') client.call_api('get-asset-id', '12345') client.call_api('create', '{"make":"Apple","model":"iPhone 14"}')