Skip to main content

ATOM API | R11

Project description

🇬🇧 English | 🇷🇺 Русский | 🇷🇴 Română

atomfoxapi

A small Python API of ATOM Mobility.

Installation

Install python >= 3.9 version and install atomfoxapi with pip:

pip install atomfoxapi

For Mac/Linux you may need to create a virtual environment (venv):

python3 -m venv .venv
source .venv/bin/activate

How to use

How to get all vehicles:

import atomfoxapi

atom = atomfoxapi.Atom('Basic ZX...') # Authorization token

vehicles = atom.get_vehicles(load_all=True) # load all vehicles (or load_all=False for load 100 vehicles)

for vehicle in vehicles:
    print(f'{vehicle.vehicle_number} - {vehicle.vehicle_battery}%')

# this script will show the charge of all vehicles
# example output:
# F0001 - 51%
# F0002 - 79%...

How to set status to vehicle:

import atomfoxapi

atom = atomfoxapi.Atom('Basic ZX...') # Authorization token

vehicles = atom.get_vehicles(search='FF0001') # get vehicle with num FF0001 (return List[])
vehicle = vehicles[0]

response = atom.set_status('TRANSPORTATION', vehicle.id)
if response:
    print(f'Status for vehicle {vehicle.vehicle_number} successfully changed!')
else:
    print('An error occurred.')

# this script changes the status on vehicle FF0001
# example output:
# Status for vehicle FF0001 successfully changed!

How to send command to vehicle

import atomfoxapi

atom = atomfoxapi.Atom('Basic ZX...') # Authorization token

vehicles = atom.get_vehicles(search='FF0001') # get vehicle with num FF0001 | return List[]
vehicle = vehicles[0]

response = atom.send_command('UNLOCK', vehicle.id)
if response:
    print(f'Command successfully sent to {vehicle.vehicle_number}!')
else:
    print(f'An error occurred.')

# this script sends a command to vehicle FF0001
# example output:
# Command successfully sent to FF0001!

How to create task in vehicle

import atomfoxapi

atom = atomfoxapi.Atom('Basic ZX...') # Authorization token

vehicles = atom.get_vehicles(search='FF0001') # get vehicle with num FF0001 | return List[]
vehicle = vehicles[0]

response = atom.set_task('vehicle is damaged', 'HIGH', 'vehicle not working', vehicle.id)
if response:
    print(f'Task successfully created in {vehicle.vehicle_number}!')
else:
    print(f'An error occurred.')

# this script creates a task on the vehicle FF0001
# example output:
# Task successfully created in FF0001!

How to get alerts

import atomfoxapi

atom = atomfoxapi.Atom('Basic ZX...') # Authorization token

alerts = atom.get_alerts('LAST_1_DAY') # get alerts for last 1 day | return List[]

for alert in alerts:
    print(f'{alert.vehicle_nr} - {alert.alert_type} | {alert.timestamp}')

# this gets alerts for the last day
# example output:
# F0001 - NEED_REBALANCING | 17.04.2025 15:28:47
# F0002 - OVERTURNED | 17.04.2025 15:04:43

How to get statistics

import atomfoxapi

atom = atomfoxapi.Atom('Basic ZX...') # Authorization token

stats = atom.get_statistics()
print(f'Avaliable: {stats.available_vehicles}\nIn use: {stats.in_use_vehicles}\n',
      f'Total: {stats.total_vehicles}\n Maintenance: {stats.in_service_vehicles}\n')

# this sctipt get statistics of vehicles
# example output:
# Avaliable: 444
# In use: 19
# Total: 490
# Maintenance: 30

How to get Employee activity log

import main as atomfoxapi

atom = atomfoxapi.Atom('Basic ZX...') # Authorization token

logs = atom.get_employee_activity_log()

for log in logs:
    print(f'{log.admin_email} - {log.vehicle_nr} | {log.status_from}{log.status_to}')

# this sctipt get employee activity log of atom
# example output:
# office@foxscooters.md - FF0001 | Maintenance → Available
# office@foxscooters.md - FF0001 | Available → Transportation

Authors

License

MIT

Moldavskie Technologies | 17.04.2025

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

atomfoxapi-1.3.0.tar.gz (10.2 kB view details)

Uploaded Source

Built Distribution

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

atomfoxapi-1.3.0-py3-none-any.whl (10.0 kB view details)

Uploaded Python 3

File details

Details for the file atomfoxapi-1.3.0.tar.gz.

File metadata

  • Download URL: atomfoxapi-1.3.0.tar.gz
  • Upload date:
  • Size: 10.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for atomfoxapi-1.3.0.tar.gz
Algorithm Hash digest
SHA256 e351f0b1e56068e54fda9e8a5e1a51a768d4170a7a4bd97ee929d3f94753a38f
MD5 1928b1ed6463bc1a0504a1c01724711f
BLAKE2b-256 994c9c49aa4dda99a67a2596a037fbf468ff48d12580107f529385a1731d8cc5

See more details on using hashes here.

File details

Details for the file atomfoxapi-1.3.0-py3-none-any.whl.

File metadata

  • Download URL: atomfoxapi-1.3.0-py3-none-any.whl
  • Upload date:
  • Size: 10.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.2

File hashes

Hashes for atomfoxapi-1.3.0-py3-none-any.whl
Algorithm Hash digest
SHA256 194c421d7c7b17e82cb95190dee41d1730d9c8a5d96b2b7a0f3937b691697825
MD5 71b415447b966406c0f400436b5b4e00
BLAKE2b-256 419cb8df90ce7656a6695b95e37b62a666cc5bae8b8510aa15cc51ace6663554

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