Commit be2e2f
2024-08-22 15:54:25 admin: -/-home.md .. | |
@@ 1,223 1,1 @@ | |
- | # AI-Now Image and Video Generation API Documentation |
- | ## Table of Contents |
- | |
- | 1. [Introduction](#introduction) |
- | 2. [Authentication](#authentication) |
- | 3. [API Endpoints](#api-endpoints) |
- | - [Ping](#ping) |
- | - [Generate](#generate) |
- | 4. [Models](#models) |
- | 5. [Styles](#styles) |
- | 6. [Error Handling](#error-handling) |
- | 7. [Rate Limiting and Tokens](#rate-limiting-and-tokens) |
- | 8. [Examples](#examples) |
- | |
- | ## Introduction |
- | |
- | This API provides access to various AI models for generating music, images, and videos based on text prompts. It supports multiple models with different capabilities and token costs. |
- | |
- | ## Authentication |
- | |
- | Authentication is required for all API requests. Use Bearer token authentication by including an API key in the Authorization header: |
- | |
- | ``` |
- | Authorization: Bearer YOUR_API_KEY |
- | ``` |
- | |
- | To obtain an API key, contact [email protected]. |
- | |
- | ## API Endpoints |
- | |
- | ### Ping |
- | |
- | Endpoint: `GET /api/ping` |
- | |
- | Use this endpoint to check if the API is operational. |
- | |
- | **Response:** |
- | ``` |
- | pong |
- | ``` |
- | |
- | ### Generate |
- | |
- | Endpoint: `POST /api/generate` |
- | |
- | This endpoint generates music, images, or videos based on the specified model and prompt. |
- | |
- | **Request Body:** |
- | |
- | ```json |
- | { |
- | "model": "string", |
- | "prompt": "string", |
- | "style": "string" (optional) |
- | } |
- | ``` |
- | |
- | - `model`: The AI model to use (e.g., "suno", "luma", "pika", "run") |
- | - `prompt`: The text prompt for generation |
- | - `style`: Optional style parameter for some models |
- | |
- | **Response:** |
- | |
- | The response is a server-sent event stream. Events include: |
- | |
- | - Processing updates |
- | - Error messages |
- | - Final result with generated content URL |
- | |
- | ## Models |
- | |
- | 1. **Suno** (Music Generation) |
- | - Token Cost: 10 |
- | - Generation Time: 1-3 minutes |
- | |
- | 2. **Luma** (Video Generation) |
- | - Token Cost: 30 |
- | - Generation Time: Variable, may fail during peak hours |
- | |
- | 3. **Pika** (Video Generation) |
- | - Token Cost: 10 |
- | - Generation Time: 1-3 minutes |
- | |
- | 4. **Run** (Video Generation) |
- | - Token Cost: 30 |
- | - Generation Time: 1-3 minutes |
- | |
- | ## Styles |
- | |
- | ### Pika API Styles |
- | |
- | - Anime (value: '1') |
- | - Moody (value: '2') |
- | - 3D (value: '3') |
- | - Watercolor (value: '4') |
- | - Natural (value: '5') |
- | - Claymation (value: '6') |
- | - Black & White (value: '7') |
- | |
- | ### Run API Styles |
- | |
- | - Abandoned (value: 'abandoned') |
- | - Abstract Sculpture (value: 'abstract_sculpture') |
- | - Anime (value: 'anime') |
- | - Cartoon (value: 'cartoon') |
- | - Cine Lens (value: 'cine_lens') |
- | - Claymation (value: 'claymation') |
- | - Concept Art (value: 'concept_art') |
- | - Digital Art (value: 'digital_art') |
- | - Forestpunk (value: 'forestpunk') |
- | - Frost (value: 'frost') |
- | - Graphic Novel (value: 'graphic_novel') |
- | - Graphite (value: 'graphite') |
- | - Isometric 3D (value: 'isometric_3d') |
- | - Low Poly 3D (value: 'low_poly_3d') |
- | - Marker Drawing (value: 'marker_drawing') |
- | - Moody Film (value: 'moody_film') |
- | - Pixel Art (value: 'pixel_art') |
- | - Retro (value: 'retro') |
- | - Sci-fi Art (value: 'sci_fi_art') |
- | - Stickers (value: 'stickers') |
- | - Storyboard (value: 'storyboard') |
- | - Thriller (value: 'thriller') |
- | - 3D Cartoon (value: '3d_cartoon') |
- | - 3D Render (value: '3d_render') |
- | - 80s Vaporwave (value: '80s_vaporwave') |
- | |
- | ## Error Handling |
- | |
- | The API returns appropriate HTTP status codes and error messages: |
- | |
- | - 401: Unauthorized (missing or invalid API key) |
- | - 418: Insufficient tokens |
- | - 500: Internal Server Error |
- | |
- | Error responses are in JSON format: |
- | |
- | ```json |
- | { |
- | "status": "Error", |
- | "message": "Error description" |
- | } |
- | ``` |
- | |
- | ## Rate Limiting and Tokens |
- | |
- | Each API key has a token balance. Tokens are deducted for each generation request based on the model used. Ensure your account has sufficient tokens before making requests. |
- | |
- | ## Examples |
- | |
- | ### Generate a song using Suno |
- | |
- | **Request:** |
- | |
- | ```bash |
- | curl -X POST https://api.ai-now.space/api/generate \ |
- | -H "Authorization: Bearer YOUR_API_KEY" \ |
- | -H "Content-Type: application/json" \ |
- | -d '{ |
- | "model": "suno", |
- | "prompt": "A upbeat pop song about summer" |
- | }' |
- | ``` |
- | |
- | **Response:** |
- | |
- | The response is a server-sent event stream. Here's an example of the events you might receive: |
- | |
- | ``` |
- | data: {"status": "Processing started"} |
- | |
- | data: {"status": "Processing"} |
- | |
- | data: {"status": "Cookie generated"} |
- | |
- | data: {"status": "Processing"} |
- | |
- | data: {"status": "Completed", "url": "https://dl.ai-now.space/summer_pop_song_12345.mp3"} |
- | ``` |
- | |
- | ### Generate a video using Pika with a specific style |
- | |
- | **Request:** |
- | |
- | ```bash |
- | curl -X POST https://api.ai-now.space/api/generate \ |
- | -H "Authorization: Bearer YOUR_API_KEY" \ |
- | -H "Content-Type: application/json" \ |
- | -d '{ |
- | "model": "pika", |
- | "prompt": "A serene lake surrounded by mountains", |
- | "style": "4" |
- | }' |
- | ``` |
- | |
- | **Response:** |
- | |
- | ``` |
- | data: {"status": "Processing started"} |
- | |
- | data: {"status": "Processing"} |
- | |
- | data: {"status": "Cookie generated"} |
- | |
- | data: {"status": "Processing"} |
- | |
- | data: {"status": "Processing"} |
- | |
- | data: {"status": "Completed", "url": "https://dl.ai-now.space/serene_lake_mountains_67890.mp4"} |
- | ``` |
- | |
- | In these examples, the final event contains a `url` field with the download link for the generated content. The URL structure is: |
- | |
- | ``` |
- | https://dl.ai-now.space/<generated_file_name>.<extension> |
- | ``` |
- | |
- | Where: |
- | - `<generated_file_name>` is a unique identifier for the generated content |
- | - `<extension>` is the appropriate file extension for the content type (e.g., ".mp3" for audio, ".mp4" for video) |
- | |
- | Note that the actual file names and identifiers will vary with each generation. |