Initial commit
This commit is contained in:
@@ -0,0 +1,189 @@
|
||||
# Marketing Assistant AI - API Documentation
|
||||
|
||||
## API Endpoints
|
||||
|
||||
### Generate Copy
|
||||
|
||||
Generates marketing copy based on the provided prompt and parameters.
|
||||
|
||||
**Endpoint**: `/generate-copy`
|
||||
**Method**: POST
|
||||
**Content-Type**: application/json
|
||||
|
||||
**Request Body**:
|
||||
```json
|
||||
{
|
||||
"prompt": "Write a social media post for our new product launch",
|
||||
"content_type": "social_media",
|
||||
"tone": "professional",
|
||||
"length": "medium",
|
||||
"include_cta": true,
|
||||
"reference_similar_content": true,
|
||||
"max_tokens": 1000
|
||||
}
|
||||
```
|
||||
|
||||
**Response**:
|
||||
```json
|
||||
{
|
||||
"content": "Generated marketing content",
|
||||
"metadata": {
|
||||
"content_type": "social_media",
|
||||
"timestamp": "2024-01-01T12:00:00Z",
|
||||
"alignment_score": 0.95
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### List User Queries
|
||||
|
||||
Retrieves historical user queries with pagination.
|
||||
|
||||
**Endpoint**: `/user-queries`
|
||||
**Method**: GET
|
||||
**Query Parameters**:
|
||||
- `page` (optional, default: 1): Page number
|
||||
- `limit` (optional, default: 10): Items per page
|
||||
- `content_type` (optional): Filter by content type
|
||||
|
||||
**Response**:
|
||||
```json
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"prompt": "Write a social media post...",
|
||||
"parameters": {
|
||||
"content_type": "social_media",
|
||||
"tone": "professional",
|
||||
"length": "medium",
|
||||
"include_cta": true
|
||||
},
|
||||
"timestamp": "2024-01-01T12:00:00Z"
|
||||
}
|
||||
],
|
||||
"pagination": {
|
||||
"total": 45,
|
||||
"page": 1,
|
||||
"limit": 10,
|
||||
"pages": 5
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
### Update Brand Style
|
||||
|
||||
Updates the brand style guidelines.
|
||||
|
||||
**Endpoint**: `/brand-style`
|
||||
**Method**: PUT
|
||||
**Content-Type**: application/json
|
||||
|
||||
**Request Body**:
|
||||
```json
|
||||
{
|
||||
"tone": ["professional", "friendly", "inspiring"],
|
||||
"voice_characteristics": ["clear", "direct", "empowering"],
|
||||
"taboo_words": ["cheap", "discount", "bargain"],
|
||||
"preferred_terms": {
|
||||
"customers": "clients",
|
||||
"products": "solutions",
|
||||
"problems": "challenges"
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Response**:
|
||||
```json
|
||||
{
|
||||
"status": "success",
|
||||
"message": "Brand style updated successfully",
|
||||
"timestamp": "2024-01-01T12:00:00Z"
|
||||
}
|
||||
```
|
||||
|
||||
### Add Training Data
|
||||
|
||||
Adds new marketing content for AI training.
|
||||
|
||||
**Endpoint**: `/training-data`
|
||||
**Method**: POST
|
||||
**Content-Type**: application/json
|
||||
|
||||
**Request Body**:
|
||||
```json
|
||||
{
|
||||
"content_type": "email",
|
||||
"content": "Dear valued client...",
|
||||
"metadata": {
|
||||
"campaign_name": "Spring Launch 2024",
|
||||
"performance_metrics": {
|
||||
"open_rate": 0.42,
|
||||
"click_rate": 0.15
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
**Response**:
|
||||
```json
|
||||
{
|
||||
"status": "success",
|
||||
"message": "Training data added successfully",
|
||||
"data_id": "unique-identifier"
|
||||
}
|
||||
```
|
||||
|
||||
### List Training Data
|
||||
|
||||
Retrieves available training data with pagination.
|
||||
|
||||
**Endpoint**: `/training-data`
|
||||
**Method**: GET
|
||||
**Query Parameters**:
|
||||
- `page` (optional, default: 1): Page number
|
||||
- `limit` (optional, default: 10): Items per page
|
||||
- `content_type` (optional): Filter by content type
|
||||
|
||||
**Response**:
|
||||
```json
|
||||
{
|
||||
"items": [
|
||||
{
|
||||
"id": "unique-identifier",
|
||||
"content_type": "email_campaign",
|
||||
"preview": "Dear valued client...",
|
||||
"added_at": "2024-01-01T12:00:00Z",
|
||||
"performance_metrics": {
|
||||
"open_rate": 0.42,
|
||||
"click_rate": 0.15
|
||||
}
|
||||
}
|
||||
],
|
||||
"pagination": {
|
||||
"total": 45,
|
||||
"page": 1,
|
||||
"limit": 10,
|
||||
"pages": 5
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
## Error Handling
|
||||
|
||||
All endpoints return appropriate HTTP status codes:
|
||||
|
||||
- 200: Success
|
||||
- 400: Bad Request (invalid parameters)
|
||||
- 401: Unauthorized
|
||||
- 404: Not Found
|
||||
- 500: Internal Server Error
|
||||
|
||||
Error responses include detailed messages:
|
||||
|
||||
```json
|
||||
{
|
||||
"status": "error",
|
||||
"message": "Detailed error message",
|
||||
"code": "ERROR_CODE"
|
||||
}
|
||||
```
|
||||
Reference in New Issue
Block a user