| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="UTF-8"> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| <title>Image Generation API</title> |
| <style> |
| body { |
| font-family: 'Arial', sans-serif; |
| background-color: #0d1117; |
| color: #c9d1d9; |
| padding: 20px; |
| } |
| .container { |
| max-width: 850px; |
| margin: auto; |
| background: #161b22; |
| padding: 25px; |
| border-radius: 10px; |
| box-shadow: 0px 4px 10px rgba(0, 0, 0, 0.5); |
| border: 1px solid #30363d; |
| } |
| h1 { |
| color: #58a6ff; |
| text-align: center; |
| } |
| h2, h3 { |
| color: #1f6feb; |
| } |
| p { |
| line-height: 1.6; |
| } |
| .endpoint { |
| padding: 15px; |
| border-bottom: 1px solid #30363d; |
| } |
| code, pre { |
| display: block; |
| background-color: #0d1117; |
| color: #58a6ff; |
| padding: 10px; |
| border-radius: 5px; |
| font-family: 'Courier New', monospace; |
| white-space: pre-wrap; |
| word-wrap: break-word; |
| border-left: 4px solid #58a6ff; |
| } |
| .footer { |
| text-align: center; |
| margin-top: 20px; |
| color: #8b949e; |
| } |
| |
| h1{ |
| font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif; |
| color: rgb(3, 234, 219); |
| padding: 1em; |
| font-size: 3em; |
| font-weight: bolder; |
| } |
| |
| .baseurl{ |
| font-family: 'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif; |
| text-transform:inherit; |
| position: relative; |
| text-align: center; |
| font-size: 1.3em; |
| } |
| |
| .h3{ |
| font-size: 1.5em; |
| color: #58a6ff; |
| |
| } |
| |
| </style> |
| </head> |
| <body> |
| <div class="container"> |
| <h1>Image Generation API</h1> |
| <h2>β‘ Available Endpoints</h2> |
|
|
| <div class="baseurl"> |
| <div> |
| <span class="h3" >[</span> |
| <span>BASEURL</span> |
| <span class="h3">]</span> |
| <span class="h3">:</span> |
| <span> |
| <span class="h3">"</span> |
| <span>HTTPS://ADARSHJI-API.HF.SPACE/</span> |
| <span class="h3">"</span> |
| </span> |
| </div> |
| </div> |
| |
| <div class="endpoint"> |
| <h3>π Generate Image</h3> |
| <p><strong>Endpoint:</strong> <code>[POST] /generate/image</code></p> |
| <p><strong>Description:</strong> Generates an AI image based on the given prompt.</p> |
| <p><strong>Request Body:</strong></p> |
| <pre>{ |
| "prompt": "A futuristic cityscape", |
| "model": "black-forest-labs-flux-1-dev", |
| "width": 1024, |
| "height": 1024, |
| "guidance_scale": 3.5, |
| "seed": 0, |
| "provider": "blackforestlabs" |
| }</pre> |
| <p><strong>Response Example:</strong></p> |
| <pre>{ |
| "Result": "http://adarshji-api.hf.space/images/1234567890.jpg" |
| }</pre> |
| </div> |
|
|
| <div class="endpoint"> |
| <h3>π Get Available Providers</h3> |
| <p><strong>Endpoint:</strong> <code>[POST] /providers</code></p> |
| <p><strong>Description:</strong> Retrieves a list of supported image providers.</p> |
| <p><strong>Response Example:</strong></p> |
| <pre>{ |
| "providers": ["blackforestlabs", "flux", "blackforestlabs-schnell"] |
| }</pre> |
| </div> |
|
|
| <div class="endpoint"> |
| <h3>π Get Models by Provider</h3> |
| <p><strong>Endpoint:</strong> <code>GET /generate/image/model</code></p> |
| <p><strong>Description:</strong> Retrieves available models for a given provider.</p> |
| <p><strong>Request Body:</strong></p> |
| <pre>{ |
| "provider": "blackforestlabs" |
| }</pre> |
| <p><strong>Response Example:</strong></p> |
| <pre>{ |
| "models": ["flux-1", "flux-2", "hyper-realistic-v3"] |
| }</pre> |
| </div> |
|
|
| <div class="endpoint"> |
| <h3>π Homepage</h3> |
| <p><strong>Endpoint:</strong> <code>GET /</code></p> |
| <p><strong>Description:</strong> Returns this documentation page.</p> |
| </div> |
|
|
| <h2>π Python Usage Example</h2> |
| <p>Here is how you can use the API in Python to generate an image:</p> |
| <pre><code> |
| import requests |
|
|
| BASE_URL = "https://adarshji-api.hf.space/" |
|
|
| def generate_image( |
| prompt, |
| model="black-forest-labs-flux-1-dev", |
| width=1024, |
| height=1024, |
| guidance_scale=3.5, |
| seed=0, |
| provider="blackforestlabs" |
| ): |
| |
| url = f"{BASE_URL}/generate/image" |
| |
| payload = { |
| "prompt": prompt, |
| "model": model, |
| "width": width, |
| "height": height, |
| "guidance_scale": guidance_scale, |
| "seed": seed, |
| "provider": provider |
| } |
| |
| headers = {'Content-Type': 'application/json'} |
| |
| response = requests.post(url, json=payload, headers=headers) |
| |
| if response.status_code == 200: |
| |
| try: |
| data = response.json() |
| print("Image URL:", data) |
| except requests.exceptions.JSONDecodeError: |
| print("Error: Failed to decode JSON response.") |
| |
| else: |
| print(f"Error: {response.status_code}, {response.text}") |
|
|
| def get_providers(): |
|
|
| url = f"{BASE_URL}/providers" |
|
|
| headers = {'Content-Type': 'application/json'} |
| |
| response = requests.get(url, headers=headers) |
| |
| if response.status_code == 200: |
| try: |
| data = response.json() |
| print("Available Providers:", data.get("providers")) |
| except requests.exceptions.JSONDecodeError: |
| print("Error: Failed to decode JSON response.") |
| else: |
| print(f"Error: {response.status_code}, {response.text}") |
| |
| def get_models(provider="blackforestlabs"): |
| url = f"{BASE_URL}/generate/image/model" |
| payload = {"provider": provider} |
| headers = {'Content-Type': 'application/json'} |
| |
| response = requests.post(url, json=payload, headers=headers) |
| |
| if response.status_code == 200: |
| try: |
| data = response.json() |
| print(f"Models for {provider}:", data.get("models")) |
| except requests.exceptions.JSONDecodeError: |
| print("Error: Failed to decode JSON response.") |
| else: |
| print(f"Error: {response.status_code}, {response.text}") |
|
|
| if __name__ == "__main__": |
| print("Getting providers:") |
| get_providers() |
|
|
| print("\nGetting models for 'blackforestlabs':") |
| get_models("blackforestlabs") |
|
|
| print("\nGenerating image:") |
| generate_image(prompt="A beautiful sunset over the ocean.") |
| |
| </code></pre> |
|
|
| <div class="footer"> |
| <p>π API v1.0 | Designed By ADARSH β€β€</p> |
| </div> |
| </div> |
| </body> |
| </html> |
|
|