Skip to main content

Python wrapper for the Oxford Response API

Project description

oxrpy

A Python wrapper for the Oxford Response API.

Installation

Install from PyPI:

pip install oxrpy

Or from source:

pip install -r requirements.txt

Usage

from oxrpy import OxfordAPI

# Initialize with your server ID and key
api = OxfordAPI(server_id="your_server_id", server_key="your_server_key")

# Get server information
server_info = api.get_server()
print(server_info)

# Get current players
players = api.get_players()
print(players)

# Get queue
queue = api.get_queue()
print(queue)

# Get bans
bans = api.get_bans()
print(bans)

Features

  • Automatic rate limiting (5 requests per second max)
  • Comprehensive error handling with custom exceptions
  • Request timeouts
  • Logging support
  • Input validation

API Endpoints

get_server(): Returns general server information. Example response:

{
  "Name": "Oxford Roleplay",
  "StyledName": "Oxford RP",
  "Description": "UK emergency roleplay server",
  "Tags": ["UK", "RP"],
  "ThemeColour": "#ffffff",
  "OwnerId": 123456789,
  "CurrentPlayers": 18,
  "MaxPlayers": 32,
  "JoinCode": "OXFD-ABCD",
  "CreatedAt": 1700000000,
  "Packages": []
}

get_players(): Returns list of current players. Example response:

[
  {
    "Username": "PlayerOne",
    "DisplayName": "PlayerOne",
    "UserId": 12345,
    "Team": "Civilian",
    "WantedLevel": 0,
    "Permission": "Admin",
    "Callsign": "A12",
    "Location": "Near Oxford City Centre"
  }
]

get_queue(): Returns the reserved server queue. Example response:

{
  "total": 2,
  "users": [12345, 67890]
}

get_bans(): Returns active bans. Example response:

[
  {
    "UserId": 12345,
    "Username": "BannedUser",
    "Reason": "Fail RP",
    "BannedBy": "API",
    "BannedById": 2,
    "Expiry": 1701000000
  }
]

get_killlogs(): Returns recent kill logs (maximum 100 entries). Example response:

[
  {
    "Timestamp": 1700000100,
    "KillerUserId": 123,
    "KillerUsername": "OfficerA",
    "VictimUserId": 456,
    "VictimUsername": "SuspectB",
    "Distance": 42,
    "Weapon": "Taser"
  }
]

get_commandlogs(): Returns recent command execution logs. Example response:

[
  {
    "Timestamp": 1700000200,
    "UserId": 789,
    "Username": "AdminUser",
    "Command": "kick",
    "Args": ["PlayerOne"]
  }
]

get_modcalls(): Returns recent moderator call requests. Example response:

[
  {
    "Timestamp": 1700000300,
    "CallerUserId": 123,
    "CallerUsername": "PlayerOne",
    "CallerDisplayName": "Player One",
    "CaseId": "CASE-001",
    "Responders": [
      {
        "UserId": 789,
        "Username": "ModeratorA"
      }
    ]
  }
]

get_vehicles(): Returns vehicles currently spawned in the server. Example response:

[
  {
    "OwnerUserId": 123,
    "OwnerUsername": "PlayerOne",
    "Registration": "OX12 ABC",
    "Model": "Volvo XC90",
    "Electric": false,
    "ELS": true,
    "ELS_Style": "UK"
  }
]

execute_command(command): Executes a permitted command on the server. Example response:

{
  "message": "Command sent successfully"
}

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oxrpy-0.8.0.tar.gz (4.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

oxrpy-0.8.0-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

Details for the file oxrpy-0.8.0.tar.gz.

File metadata

  • Download URL: oxrpy-0.8.0.tar.gz
  • Upload date:
  • Size: 4.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for oxrpy-0.8.0.tar.gz
Algorithm Hash digest
SHA256 38649206176c48f66c7dba4cd14c4a040bad370be06d431eec79c45279aa6336
MD5 a02a3f3818d4c414763888bdf8d01bdb
BLAKE2b-256 9564ca74db2ee1a1210fe086244fbad5e9ebd6ac01b2bd03a1e61cf30925fb89

See more details on using hashes here.

File details

Details for the file oxrpy-0.8.0-py3-none-any.whl.

File metadata

  • Download URL: oxrpy-0.8.0-py3-none-any.whl
  • Upload date:
  • Size: 4.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.10

File hashes

Hashes for oxrpy-0.8.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5c5fc7dba3aedba79453c9726a92a0056767c80da3e59e3f6990e600a02671ea
MD5 0d18e1126e46c46bd303d5abaac5920f
BLAKE2b-256 a4c4539207c1a62d144bda1980349935a9f8b02256722993a2bdb553e35fae36

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page