## Roblox Open Cloud API in Python
Roblox Open Cloud is an addition to the roblox developer workspace that allows automation of workflows to improve the efficiency of content creation and adds support for your needs to develop games on Roblox.
Open Cloud allows you to build your own tools and applications to access your roblox resources through web apis. Open Cloud is accessed through API keys or OAuth applications, and permissions can be set on api keys and authentications to determine the accessibility level of those authenticated applications and utilized api keys.
Additionally, webhooks can also be utilized to receive real-time notifications on third-party tools or custom endpoints.
## Installation
To install with pip, simply run the **one** of the following in a command prompt:
``pip install roblox-cloud-api``
``pip3 install roblox-cloud-api``
or if those do not work, **one** of the following;
``py -m pip install roblox-cloud-api``
``python -m pip install roblox-cloud-api``
``py3 -m pip install roblox-cloud-api``
``python3 -m pip install roblox-cloud-api``
*covers the scenarios where the command prompt python keyword differs*
You can then import the package via
```py
import roblox_open_cloud
```
## Usage
**Use python's autocomplete to see what endpoints allow both or either USER_ACCOUNTs and API_KEYs.**
### Importing essentials
```py
from roblox_open_cloud import (
API_KEY, # api keys
USER_ACCOUNT, # roblox accounts
KeyAPI, # validate api keys
UserAPI, # validate roblox accounts
OpenCloudAPI # open cloud api
)
```
#### Utilizing API Keys
```py
# Create an api key instance.
# Used to access resources.
api_key = API_KEY(
api_key="", # api key credential
creator_id="", # userId / groupId that owns the api key
)
# check if the api key is valid, only need to do once.
try:
is_key_valid = KeyAPI.is_api_key_valid( api_key )
except Exception as e:
print("Failed to check API_KEY validity with KeyAPI.")
raise e # if the request itself failed, tell us why
if not is_key_valid:
raise Exception("API Key is invalid.")
# now the key has been validated, we can do stuff with it.
# request to the MessagingService api and post a message
# raises an Exception if failed
try:
OpenCloudAPI.MessagingService.publish_async(
api_key, # api_key
000000, # universe id
"topic", # topic
"message" # message
)
print("Published message using API Key!")
except Exception as e:
print("Failed MessagingService message publish!")
print(e)
```
#### Utilizing Roblox Accounts
```py
# Create an api key instance.
# Used to access resources.
account = USER_ACCOUNT(
cookie="", # cookie
user_id="", # userId
)
# check if the account is valid, only need to do once.
try:
is_account_valid = UserAPI.is_user_account_valid( account )
except Exception as e:
print("Failed to check USER_ACCOUNT validity with UserAPI.")
raise e # if the request itself failed, tell us why
if not is_account_valid:
raise Exception(f"User Account is invalid.")
# now the user account has been validated, we can do stuff with it.
# request to the MessagingService api and post a message
# raises an Exception if failed
try:
OpenCloudAPI.MessagingService.publish_async(
account, # user account
000000, # universe id
"topic", # topic
"message" # message
)
print("Published message using User Account!")
except Exception as e:
print("Failed MessagingService message publish!")
print(e) # tells us the reason (Exceptions are raised based on webpoint responses.)
```
## Links
- Roblox Open Cloud Credentials Page:
https://create.roblox.com/dashboard/credentials
- Roblox Open Cloud Overview Page:
https://create.roblox.com/docs/cloud/open-cloud
- Roblox Open Cloud OAuth Page:
https://create.roblox.com/docs/cloud/open-cloud/oauth2-overview
- Roblox Open Cloud Webhooks Page:
https://create.roblox.com/docs/cloud/webhooks/webhook-notifications
- **TEST** PyPi Package Page
https://test.pypi.org/project/roblox-cloud-api/
- **LIVE** PyPi Package Page
https://www.pypi.org/project/roblox-cloud-api/
## Credits
**Package by SPOOK_EXE**
https://github.com/SPOOKEXE
https://www.roblox.com/users/1041213550/profile
**Anamius - 'rbxmk' for parsing roblox files**
https://github.com/Anaminus/rbxmk
## Additional Documentation
[View Here (Local)](docs/docs.md)
[View Here (GitHub)](https://github.com/SPOOKEXE/PyPi_RobloxOpenCloud/blob/main/docs/docs.md)
Raw data
{
"_id": null,
"home_page": "https://github.com/SPOOKEXE/PyPi_RobloxOpenCloud",
"name": "roblox-cloud-api",
"maintainer": "",
"docs_url": null,
"requires_python": "",
"maintainer_email": "",
"keywords": "roblox,open-cloud,roblox open cloud,open cloud,roblox opencloud",
"author": "SPOOK_EXE (Declan)",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/ab/c8/dce293572b2596f8d6806399e0089e9c4307d548a707f54fedc4f744a149/roblox_cloud_api-0.0.10.tar.gz",
"platform": null,
"description": "\r\n## Roblox Open Cloud API in Python\r\n\r\nRoblox Open Cloud is an addition to the roblox developer workspace that allows automation of workflows to improve the efficiency of content creation and adds support for your needs to develop games on Roblox.\r\n\r\nOpen Cloud allows you to build your own tools and applications to access your roblox resources through web apis. Open Cloud is accessed through API keys or OAuth applications, and permissions can be set on api keys and authentications to determine the accessibility level of those authenticated applications and utilized api keys.\r\n\r\nAdditionally, webhooks can also be utilized to receive real-time notifications on third-party tools or custom endpoints.\r\n\r\n## Installation\r\n\r\nTo install with pip, simply run the **one** of the following in a command prompt:\r\n\r\n``pip install roblox-cloud-api`` \r\n``pip3 install roblox-cloud-api`` \r\n\r\nor if those do not work, **one** of the following; \r\n\r\n``py -m pip install roblox-cloud-api`` \r\n``python -m pip install roblox-cloud-api`` \r\n``py3 -m pip install roblox-cloud-api`` \r\n``python3 -m pip install roblox-cloud-api`` \r\n\r\n*covers the scenarios where the command prompt python keyword differs*\r\n\r\nYou can then import the package via\r\n```py\r\nimport roblox_open_cloud\r\n```\r\n\r\n## Usage\r\n\r\n**Use python's autocomplete to see what endpoints allow both or either USER_ACCOUNTs and API_KEYs.**\r\n\r\n### Importing essentials\r\n```py\r\nfrom roblox_open_cloud import (\r\n\tAPI_KEY, # api keys\r\n\tUSER_ACCOUNT, # roblox accounts\r\n\tKeyAPI, # validate api keys\r\n\tUserAPI, # validate roblox accounts\r\n\tOpenCloudAPI # open cloud api\r\n)\r\n```\r\n\r\n#### Utilizing API Keys\r\n\r\n```py\r\n# Create an api key instance.\r\n# Used to access resources.\r\napi_key = API_KEY(\r\n\tapi_key=\"\", # api key credential\r\n\tcreator_id=\"\", # userId / groupId that owns the api key\r\n)\r\n\r\n# check if the api key is valid, only need to do once.\r\ntry:\r\n\tis_key_valid = KeyAPI.is_api_key_valid( api_key )\r\nexcept Exception as e:\r\n\tprint(\"Failed to check API_KEY validity with KeyAPI.\")\r\n\traise e # if the request itself failed, tell us why\r\n\r\nif not is_key_valid:\r\n\traise Exception(\"API Key is invalid.\")\r\n\r\n# now the key has been validated, we can do stuff with it.\r\n\r\n# request to the MessagingService api and post a message\r\n# raises an Exception if failed\r\ntry:\r\n\tOpenCloudAPI.MessagingService.publish_async(\r\n\t\tapi_key, # api_key\r\n\t\t000000, # universe id\r\n\t\t\"topic\", # topic\r\n\t\t\"message\" # message\r\n\t)\r\n\tprint(\"Published message using API Key!\")\r\nexcept Exception as e:\r\n\tprint(\"Failed MessagingService message publish!\")\r\n\tprint(e)\r\n```\r\n\r\n#### Utilizing Roblox Accounts\r\n\r\n```py\r\n# Create an api key instance.\r\n# Used to access resources.\r\naccount = USER_ACCOUNT(\r\n\tcookie=\"\", # cookie\r\n\tuser_id=\"\", # userId\r\n)\r\n\r\n# check if the account is valid, only need to do once.\r\ntry:\r\n\tis_account_valid = UserAPI.is_user_account_valid( account )\r\nexcept Exception as e:\r\n\tprint(\"Failed to check USER_ACCOUNT validity with UserAPI.\")\r\n\traise e # if the request itself failed, tell us why\r\n\r\nif not is_account_valid:\r\n\traise Exception(f\"User Account is invalid.\")\r\n\r\n# now the user account has been validated, we can do stuff with it.\r\n\r\n# request to the MessagingService api and post a message\r\n# raises an Exception if failed\r\ntry:\r\n\tOpenCloudAPI.MessagingService.publish_async(\r\n\t\taccount, # user account\r\n\t\t000000, # universe id\r\n\t\t\"topic\", # topic\r\n\t\t\"message\" # message\r\n\t)\r\n\tprint(\"Published message using User Account!\")\r\nexcept Exception as e:\r\n\tprint(\"Failed MessagingService message publish!\")\r\n\tprint(e) # tells us the reason (Exceptions are raised based on webpoint responses.)\r\n```\r\n\r\n## Links\r\n\r\n- Roblox Open Cloud Credentials Page: \r\nhttps://create.roblox.com/dashboard/credentials\r\n\r\n- Roblox Open Cloud Overview Page: \r\nhttps://create.roblox.com/docs/cloud/open-cloud\r\n\r\n- Roblox Open Cloud OAuth Page: \r\nhttps://create.roblox.com/docs/cloud/open-cloud/oauth2-overview\r\n\r\n- Roblox Open Cloud Webhooks Page: \r\nhttps://create.roblox.com/docs/cloud/webhooks/webhook-notifications\r\n\r\n- **TEST** PyPi Package Page \r\nhttps://test.pypi.org/project/roblox-cloud-api/\r\n\r\n- **LIVE** PyPi Package Page \r\nhttps://www.pypi.org/project/roblox-cloud-api/\r\n\r\n## Credits\r\n\r\n**Package by SPOOK_EXE** \r\nhttps://github.com/SPOOKEXE \r\nhttps://www.roblox.com/users/1041213550/profile \r\n\r\n**Anamius - 'rbxmk' for parsing roblox files** \r\nhttps://github.com/Anaminus/rbxmk\r\n\r\n## Additional Documentation\r\n\r\n[View Here (Local)](docs/docs.md)\r\n[View Here (GitHub)](https://github.com/SPOOKEXE/PyPi_RobloxOpenCloud/blob/main/docs/docs.md)\r\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "Roblox API for open cloud and assets.",
"version": "0.0.10",
"project_urls": {
"Homepage": "https://github.com/SPOOKEXE/PyPi_RobloxOpenCloud"
},
"split_keywords": [
"roblox",
"open-cloud",
"roblox open cloud",
"open cloud",
"roblox opencloud"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "e22e1c0f7c472e398544b9bf7b20e34c9e0b60e237cd1f255be6141861264190",
"md5": "63d5a13c530261f7ef7657dbdcf0653c",
"sha256": "817c2804cb922cb1c78b7b68597e41b8706800ddd5a5f4584354ca3d438ac6f5"
},
"downloads": -1,
"filename": "roblox_cloud_api-0.0.10-py3-none-any.whl",
"has_sig": false,
"md5_digest": "63d5a13c530261f7ef7657dbdcf0653c",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": null,
"size": 11734,
"upload_time": "2023-09-05T20:16:44",
"upload_time_iso_8601": "2023-09-05T20:16:44.379199Z",
"url": "https://files.pythonhosted.org/packages/e2/2e/1c0f7c472e398544b9bf7b20e34c9e0b60e237cd1f255be6141861264190/roblox_cloud_api-0.0.10-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "abc8dce293572b2596f8d6806399e0089e9c4307d548a707f54fedc4f744a149",
"md5": "b2ccdf3315c46cf80fb4ca8a4e32e56e",
"sha256": "0f79f1a242955a4f53a21016dec574be89f970ecc77266ffa1609f4f2ad7602b"
},
"downloads": -1,
"filename": "roblox_cloud_api-0.0.10.tar.gz",
"has_sig": false,
"md5_digest": "b2ccdf3315c46cf80fb4ca8a4e32e56e",
"packagetype": "sdist",
"python_version": "source",
"requires_python": null,
"size": 12576,
"upload_time": "2023-09-05T20:16:48",
"upload_time_iso_8601": "2023-09-05T20:16:48.495439Z",
"url": "https://files.pythonhosted.org/packages/ab/c8/dce293572b2596f8d6806399e0089e9c4307d548a707f54fedc4f744a149/roblox_cloud_api-0.0.10.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-09-05 20:16:48",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "SPOOKEXE",
"github_project": "PyPi_RobloxOpenCloud",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "roblox-cloud-api"
}