4.7 KiB
4.7 KiB
API Endpoints Documentation
This document provides a comprehensive list of all API endpoints available in the OpenEventDatabase (OEDB) backend.
Main API Endpoints
Root Endpoint
- URL:
/
- Method: GET
- Description: Provides general information about the API, including version and available endpoints.
- Response: JSON object with API information.
Event Endpoints
Get Events
- URL:
/event
- Method: GET
- Description: Retrieves a collection of events based on query parameters.
- Query Parameters:
what
: Filter events by type (e.g.,sport.match.football
)when
: Filter events by time period (e.g.,last7days
,today
,tomorrow
)limit
: Maximum number of events to return (default: 100)bbox
: Bounding box for geographic filtering (format:min_lon,min_lat,max_lon,max_lat
)
- Response: GeoJSON FeatureCollection of events.
Create Event
- URL:
/event
- Method: POST
- Description: Creates a new event.
- Request Body: GeoJSON Feature representing the event.
- Response: JSON object with the created event ID.
Get Event by ID
- URL:
/event/{id}
- Method: GET
- Description: Retrieves a specific event by its ID.
- Response: GeoJSON Feature of the requested event.
Update Event
- URL:
/event/{id}
- Method: PUT
- Description: Updates an existing event.
- Request Body: GeoJSON Feature with updated event data.
- Response: JSON object with the updated event ID.
Delete Event
- URL:
/event/{id}
- Method: DELETE
- Description: Deletes an event by its ID.
- Response: JSON object confirming deletion.
Search Events
- URL:
/event/search
- Method: GET
- Description: Advanced search for events with more complex filtering options.
- Query Parameters: Various search parameters (see
/doc/api_search.md
for details). - Response: GeoJSON FeatureCollection of matching events.
Statistics Endpoint
- URL:
/stats
- Method: GET
- Description: Provides statistics about the database, including event counts and recent updates.
- Response: JSON object with statistics.
RSS Feeds
Latest Events RSS
- URL:
/rss
- Method: GET
- Description: Provides an RSS feed of the latest 200 events.
- Response: XML RSS feed.
Events by Family RSS
- URL:
/rss/by/{family}
- Method: GET
- Description: Provides an RSS feed of events filtered by family (e.g., sport, culture).
- Response: XML RSS feed.
Database Dumps
List Database Dumps
- URL:
/db/dumps
- Method: GET
- Description: Lists all available database dumps.
- Response: JSON object with list of dumps.
Create Database Dumps
- URL:
/db/dumps/create
- Method: POST
- Description: Creates new database dumps in SQL and GeoJSON formats.
- Response: JSON object with information about the created dumps.
Demo/UI Endpoints
These endpoints provide web interfaces for interacting with the API:
Main Demo Page
- URL:
/demo
- Method: GET
- Description: Main demo page with a map interface to explore events.
Event Submission Form
- URL:
/demo/add
- Method: GET
- Description: Form for submitting new events.
Events by Type
- URL:
/demo/by-what
- Method: GET
- Description: Page showing events grouped by their type.
Map by Event Type
- URL:
/demo/map-by-what
- Method: GET
- Description: Map interface showing events colored by their type.
Event Editing
- URL:
/demo/edit/{id}
- Method: GET
- Description: Interface for editing an existing event.
View Event by ID
- URL:
/demo/by_id/{id}
- Method: GET
- Description: Page showing details of a specific event.
Traffic Jam Reporting
- URL:
/demo/traffic
- Method: GET
- Description: Interface for reporting traffic jams.
View Saved Events
- URL:
/demo/view-events
- Method: GET
- Description: Page showing events saved by the user.
Statistics by Event Type
- URL:
/demo/stats
- Method: GET
- Description: Page showing statistics grouped by event type.
Live Events
- URL:
/demo/live
- Method: GET
- Description: Real-time view of events with auto-refresh.
Static Files
- URL:
/static/
- Method: GET
- Description: Serves static files (CSS, JavaScript, images) for the demo interfaces.
Additional Documentation
For more detailed information about specific aspects of the API, refer to these documents: