Bruno API test updates: - Update test assertions: X-Bookmann-* → X-Bookhoard-* - Update variable names and references in test scripts - Update documentation and comments in API tests This is part 4 of the project rename to Bookhoard.
128 lines
3.4 KiB
Plaintext
128 lines
3.4 KiB
Plaintext
meta {
|
|
name: "Bookhoard Conflicts API"
|
|
type: "collection"
|
|
environment: {
|
|
development: {
|
|
base_url: "http://localhost:8765/api"
|
|
},
|
|
production: {
|
|
base_url: "https://your-domain.com/api"
|
|
}
|
|
}
|
|
}
|
|
|
|
# List Conflicts
|
|
@name("List Unresolved Conflicts")
|
|
GET {{environment.base_url}}/conflicts?status=unresolved
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
@name("List All Conflicts")
|
|
GET {{environment.base_url}}/conflicts?status=all
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
@name("List Resolved Conflicts")
|
|
GET {{environment.base_url}}/conflicts?status=resolved
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
@name("List Progress Conflicts")
|
|
GET {{environment.base_url}}/conflicts?status=unresolved&type=progress
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
@name("List Note Conflicts")
|
|
GET {{environment.base_url}}/conflicts?status=unresolved&type=note
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
@name("List Highlight Conflicts")
|
|
GET {{environment.base_url}}/conflicts?status=unresolved&type=highlight
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
# Get Conflict Details
|
|
@name("Get Conflict Details")
|
|
GET {{environment.base_url}}/conflicts/{{conflict_id}}
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
# Resolve Conflict
|
|
@name("Resolve - Keep KOReader Progress")
|
|
POST {{environment.base_url}}/conflicts/{{conflict_id}}/resolve
|
|
Authorization: Bearer {{jwt_token}}
|
|
Content-Type: application/json
|
|
{
|
|
"winner": "koreader",
|
|
"apply_to_all_future_conflicts": false,
|
|
"reason": "KOReader was most recently updated"
|
|
}
|
|
|
|
@name("Resolve - Keep Kobo Progress")
|
|
POST {{environment.base_url}}/conflicts/{{conflict_id}}/resolve
|
|
Authorization: Bearer {{jwt_token}}
|
|
Content-Type: application/json
|
|
{
|
|
"winner": "kobo",
|
|
"apply_to_all_future_conflicts": false,
|
|
"reason": "Kobo has more progress"
|
|
}
|
|
|
|
@name("Resolve - Keep Web Progress")
|
|
POST {{environment.base_url}}/conflicts/{{conflict_id}}/resolve
|
|
Authorization: Bearer {{jwt_token}}
|
|
Content-Type: application/json
|
|
{
|
|
"winner": "web",
|
|
"apply_to_all_future_conflicts": false,
|
|
"reason": "Web interface has most recent data"
|
|
}
|
|
|
|
@name("Resolve - Manual Override")
|
|
POST {{environment.base_url}}/conflicts/{{conflict_id}}/resolve
|
|
Authorization: Bearer {{jwt_token}}
|
|
Content-Type: application/json
|
|
{
|
|
"winner": "manual",
|
|
"manual_data": {
|
|
"percentage": 0.43,
|
|
"epubcfi": "epubcfi(/6/4/2:20)",
|
|
"chapter": 3
|
|
},
|
|
"apply_to_all_future_conflicts": false,
|
|
"reason": "User specified custom progress"
|
|
}
|
|
|
|
@name("Resolve - Manual Override with Page")
|
|
POST {{environment.base_url}}/conflicts/{{conflict_id}}/resolve
|
|
Authorization: Bearer {{jwt_token}}
|
|
Content-Type: application/json
|
|
{
|
|
"winner": "manual",
|
|
"manual_data": {
|
|
"percentage": 0.43,
|
|
"page": 89,
|
|
"epubcfi": "epubcfi(/6/4/2:20)"
|
|
},
|
|
"apply_to_all_future_conflicts": false,
|
|
"reason": "User specified page number"
|
|
}
|
|
|
|
@name("Resolve - Apply to All Future Conflicts")
|
|
POST {{environment.base_url}}/conflicts/{{conflict_id}}/resolve
|
|
Authorization: Bearer {{jwt_token}}
|
|
Content-Type: application/json
|
|
{
|
|
"winner": "koreader",
|
|
"apply_to_all_future_conflicts": true,
|
|
"reason": "Always prefer KOReader for future conflicts"
|
|
}
|
|
|
|
# Delete Conflict
|
|
@name("Delete Conflict")
|
|
DELETE {{environment.base_url}}/conflicts/{{conflict_id}}
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
@name("Dismiss Conflict")
|
|
DELETE {{environment.base_url}}/conflicts/{{conflict_id}}
|
|
Authorization: Bearer {{jwt_token}}
|
|
|
|
# Batch Operations
|
|
@name("Dismiss All Resolved Conflicts")
|
|
DELETE {{environment.base_url}}/conflicts/dismiss-resolved
|
|
Authorization: Bearer {{jwt_token}}
|