Skip to main content

Python wrapper for the Oxford Response API

Project description

oxrpy

A Python wrapper for the Oxford RP 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)

Execute a command

result = api.execute_command("announce Hello from API!") print(result)

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.7.0.tar.gz (4.1 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.7.0-py3-none-any.whl (4.5 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for oxrpy-0.7.0.tar.gz
Algorithm Hash digest
SHA256 00624cca4502cbf5905a7f815236c881eff1fd50df2bd771fb89e8a0bf710b33
MD5 9afef511811bb2efa43a91bd93a706d3
BLAKE2b-256 b51c02d617eda52fc739a0be04ed95d703c1338d03943f543ffe7aa48558288a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: oxrpy-0.7.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.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 66932b57d5a7073986ece6514c88f8ef0789498cb7f2660d22b8dd05167343de
MD5 78f031f0765b77e1da83a2759b98cd95
BLAKE2b-256 c4061e5c4f5a5b6b7b8bd0f420f9bbf843ff711611c4b88c4149bfc788de2ebc

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