Robot Platform API SDK
Project description
Robot Platform SDK (Python)
Python SDK for Robot Platform with:
- develop-app authentication (
app_id/app_secret), - sync + async clients,
- auto token refresh,
- robot operations and login/hardening task flow.
Installation
pip install robot-wrapper-sdk
Configuration
Set environment variables (recommended):
ROBOT_PLATFORM_BASE_URLROBOT_PLATFORM_APP_IDROBOT_PLATFORM_APP_SECRETROBOT_PLATFORM_PROXY_URL(optional)
Or pass values directly when creating the module.
Quick Start (Sync)
from robot_sdk import RobotPlatformModule, RobotStatus, RobotAuthStatus
sdk = RobotPlatformModule(
base_url="http://localhost:8085",
app_id="your_app_id",
app_secret="your_app_secret",
# proxy_url="socks5h://192.168.3.100:1080", # optional
)
# Read robot
robot = sdk.get_robot("2047631542552334336")
print(robot.platform if robot else "not found")
# Update lifecycle status (prefer enum)
sdk.update_status("2047631542552334336", RobotStatus.LIVE)
# Acquire login tasks
login_tasks = sdk.acquire_need_login(limit=20, lock_minutes=30)
# Update auth status after worker result (prefer enum)
sdk.update_auth_status("2047631542552334336", RobotAuthStatus.AUTHORIZED)
# allowed values: authorized | unauthorized | logged_out
# Acquire hardening tasks
hardening_tasks = sdk.acquire_unhardened(limit=20, lock_minutes=30, min_age_days=0)
# Update hardening status after worker result
sdk.update_security_hardened("2047631542552334336", True)
# Update metadata (partial patch)
sdk.update_metadata("2047631542552334336", {
"country_code": "VN",
"note": "updated by sdk"
})
sdk.close()
Quick Start (Async)
import asyncio
from robot_sdk import AsyncRobotPlatformModule, RobotAuthStatus
async def main():
sdk = AsyncRobotPlatformModule(
base_url="http://localhost:8085",
app_id="your_app_id",
app_secret="your_app_secret",
)
robot = await sdk.get_robot("2047631542552334336")
print(robot.platform if robot else "not found")
await sdk.update_auth_status("2047631542552334336", RobotAuthStatus.AUTHORIZED)
await sdk.update_security_hardened("2047631542552334336", True)
await sdk.update_metadata("2047631542552334336", {
"country_code": "VN",
"note": "updated by async sdk"
})
await sdk.close()
asyncio.run(main())
Response Shape (Placeholder)
Acquire endpoints return:
{
"status": "success",
"code": 200,
"message": "OK",
"data": [
{
"id": "2047631542552334336",
"username": "example_user_1",
"platform": "facebook",
"status": "live",
"auth_status": "unauthorized",
"metadata": {
"security_hardened": false
}
}
]
}
Update endpoints return:
{
"status": "success",
"code": 200,
"message": "OK",
"data": null
}
Main API
RobotPlatformModule (sync)
list_robots(platform=None, status=None, project_id=None, page=1, limit=20)get_robot(robot_id)delete_robot(robot_id)get_secrets(robot_id)update_status(robot_id, status)acquire_need_login(limit=20, lock_minutes=30)acquire_unhardened(limit=20, lock_minutes=30, min_age_days=0)update_auth_status(robot_id, auth_status)update_security_hardened(robot_id, security_hardened)update_metadata(robot_id, metadata)close()
AsyncRobotPlatformModule (async)
Async equivalents of all methods above, plus await close().
Documentation
- Usage guide:
docs/guide.md - Package code:
robot_sdk/
Build & Publish (Maintainers)
make venv
make install
make build
make publish
Requires valid PyPI credentials (Twine).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file robot_wrapper_sdk-0.2.10.tar.gz.
File metadata
- Download URL: robot_wrapper_sdk-0.2.10.tar.gz
- Upload date:
- Size: 9.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1899ced611fa95913e13c15f87297feb3bdfdfe11167bd0ed58fa508bb4c06b0
|
|
| MD5 |
c40255daab291f99e1e45762ef5cf47b
|
|
| BLAKE2b-256 |
fad0c342bc4ba64e59563a02c61af6b3d709662706a0895af32ba7fbb01db5cc
|
File details
Details for the file robot_wrapper_sdk-0.2.10-py3-none-any.whl.
File metadata
- Download URL: robot_wrapper_sdk-0.2.10-py3-none-any.whl
- Upload date:
- Size: 11.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2cc7b9180fdb513711d8c43f31c497abc539dd1807ce3e6bbd09af3adf264663
|
|
| MD5 |
483e7b9991d186d22932c7cb87d80cb1
|
|
| BLAKE2b-256 |
4732ad304c036036249c8fa84851f0ddcf75284f5e445236630c7728b85a8bb1
|