refactor(bruno): reorganize file structure from bruno-yaml to flat bruno directory
- Move all files from bruno-yaml/* to bruno/* - Maintains existing directory structure within categories - Updates bruno/user/auth files with OAuth2 refresh token flow - Updates bruno/user/profile files for user profile management - Adds bruno/dashboard/ directory with dashboard API tests - Preserves all existing test scenarios and OpenCollection YAML format - No functional changes - file reorganization only
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
info:
|
||||
name: Create Media Highlight
|
||||
type: http
|
||||
seq: 2
|
||||
http:
|
||||
method: POST
|
||||
url: '{{base_url}}/api/media-items/{{media_item_id}}/highlights'
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
jsonBody: "{\n \"selection_text\": \"This is the highlighted text from the\
|
||||
\ media item.\",\n \"start_position\": \"page:45:offset:120\",\n \"end_position\"\
|
||||
: \"page:45:offset:145\",\n \"color\": \"#ffff00\",\n \"note_id\": \"\""
|
||||
|
||||
docs: |-
|
||||
## Create Media Highlight
|
||||
|
||||
Creates a new highlight for a specific media item.
|
||||
|
||||
**Method:** POST
|
||||
|
||||
**Endpoint:** /api/media-items/:id/highlights
|
||||
|
||||
**Path Parameters:**
|
||||
- `id` (string): Media item ID
|
||||
|
||||
**Request Body:**
|
||||
- `selection_text` (string): Highlighted text (required, 1-5000 chars)
|
||||
- `start_position` (string): Start position (required, max 100 chars)
|
||||
- `end_position` (string): End position (required, max 100 chars)
|
||||
- `color` (string): Highlight color in hex format (optional, default #ffff00)
|
||||
- `note_id` (string): Optional associated note ID
|
||||
|
||||
**Response:**
|
||||
- Highlight object with all fields including generated ID and timestamps
|
||||
|
||||
**Status Codes:**
|
||||
- 201: Created
|
||||
- 400: Invalid request
|
||||
- 401: Unauthorized
|
||||
- 404: Media item not found
|
||||
@@ -0,0 +1,31 @@
|
||||
info:
|
||||
name: Delete Media Highlight
|
||||
type: http
|
||||
seq: 5
|
||||
http:
|
||||
method: DELETE
|
||||
url: '{{base_url}}/api/media-items/{{media_item_id}}/highlights/{{highlight_id}}'
|
||||
auth: inherit
|
||||
body:
|
||||
type: none
|
||||
|
||||
docs: |-
|
||||
## Delete Media Highlight
|
||||
|
||||
Deletes a specific highlight.
|
||||
|
||||
**Method:** DELETE
|
||||
|
||||
**Endpoint:** /api/media-items/:id/highlights/:highlightId
|
||||
|
||||
**Path Parameters:**
|
||||
- `id` (string): Media item ID
|
||||
- `highlightId` (string): Highlight ID
|
||||
|
||||
**Response:**
|
||||
- 204 No Content on success
|
||||
|
||||
**Status Codes:**
|
||||
- 204: Success
|
||||
- 401: Unauthorized
|
||||
- 404: Highlight not found
|
||||
@@ -0,0 +1,40 @@
|
||||
info:
|
||||
name: Get Media Highlights
|
||||
type: http
|
||||
seq: 1
|
||||
http:
|
||||
method: GET
|
||||
url: '{{base_url}}/api/media-items/{{media_item_id}}/highlights'
|
||||
auth: inherit
|
||||
body:
|
||||
type: none
|
||||
|
||||
docs: |-
|
||||
## Get Media Highlights
|
||||
|
||||
Retrieves all highlights for a specific media item for the authenticated user.
|
||||
|
||||
**Method:** GET
|
||||
|
||||
**Endpoint:** /api/media-items/:id/highlights
|
||||
|
||||
**Path Parameters:**
|
||||
- `id` (string): Media item ID
|
||||
|
||||
**Response:**
|
||||
- Array of highlight objects with fields:
|
||||
- `id` (string): Highlight ID
|
||||
- `media_item_id` (string): Media item ID
|
||||
- `user_id` (string): User ID
|
||||
- `selection_text` (string): Highlighted text
|
||||
- `start_position` (string): Start position
|
||||
- `end_position` (string): End position
|
||||
- `color` (string): Highlight color (hex)
|
||||
- `note_id` (string): Optional associated note ID
|
||||
- `created_at` (string): Creation timestamp
|
||||
- `updated_at` (string): Last update timestamp
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 401: Unauthorized
|
||||
- 404: Media item not found
|
||||
@@ -0,0 +1,31 @@
|
||||
info:
|
||||
name: Get Single Media Highlight
|
||||
type: http
|
||||
seq: 3
|
||||
http:
|
||||
method: GET
|
||||
url: '{{base_url}}/api/media-items/{{media_item_id}}/highlights/{{highlight_id}}'
|
||||
auth: inherit
|
||||
body:
|
||||
type: none
|
||||
|
||||
docs: |-
|
||||
## Get Single Media Highlight
|
||||
|
||||
Retrieves a specific highlight by ID.
|
||||
|
||||
**Method:** GET
|
||||
|
||||
**Endpoint:** /api/media-items/:id/highlights/:highlightId
|
||||
|
||||
**Path Parameters:**
|
||||
- `id` (string): Media item ID
|
||||
- `highlightId` (string): Highlight ID
|
||||
|
||||
**Response:**
|
||||
- Highlight object with all fields
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 401: Unauthorized
|
||||
- 404: Highlight not found
|
||||
@@ -0,0 +1,42 @@
|
||||
info:
|
||||
name: Update Media Highlight
|
||||
type: http
|
||||
seq: 4
|
||||
http:
|
||||
method: PUT
|
||||
url: '{{base_url}}/api/media-items/{{media_item_id}}/highlights/{{highlight_id}}'
|
||||
auth: inherit
|
||||
body:
|
||||
type: json
|
||||
jsonBody: "{\n \"selection_text\": \"This is the updated highlighted text.\"\
|
||||
,\n \"start_position\": \"page:45:offset:125\",\n \"end_position\": \"\
|
||||
page:45:offset:150\",\n \"color\": \"#ffeb3b\",\n \"note_id\": \"\""
|
||||
|
||||
docs: |-
|
||||
## Update Media Highlight
|
||||
|
||||
Updates an existing highlight.
|
||||
|
||||
**Method:** PUT
|
||||
|
||||
**Endpoint:** /api/media-items/:id/highlights/:highlightId
|
||||
|
||||
**Path Parameters:**
|
||||
- `id` (string): Media item ID
|
||||
- `highlightId` (string): Highlight ID
|
||||
|
||||
**Request Body:**
|
||||
- `selection_text` (string): Updated highlighted text (required, 1-5000 chars)
|
||||
- `start_position` (string): Updated start position (required, max 100 chars)
|
||||
- `end_position` (string): Updated end position (required, max 100 chars)
|
||||
- `color` (string): Updated highlight color in hex format (optional)
|
||||
- `note_id` (string): Updated associated note ID (optional)
|
||||
|
||||
**Response:**
|
||||
- Updated highlight object with all fields
|
||||
|
||||
**Status Codes:**
|
||||
- 200: Success
|
||||
- 400: Invalid request
|
||||
- 401: Unauthorized
|
||||
- 404: Highlight not found
|
||||
Reference in New Issue
Block a user