CurseforgeAPy


NameCurseforgeAPy JSON
Version 1.0.3 PyPI version JSON
download
home_page
SummaryA wrapper for the Eternal (CurseForge) API
upload_time2022-12-19 18:08:32
maintainer
docs_urlNone
author
requires_python>=3.7
license
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # CurseForgeAPy

[![GitHub issues](https://img.shields.io/github/issues/James2854/CurseForgeAPy?style=for-the-badge)](https://github.com/James2854/CurseForgeAPy/issues)
[![GitHub stars](https://img.shields.io/github/stars/James2854/CurseForgeAPy?style=for-the-badge)](https://github.com/James2854/CurseForgeAPy/stargazers)
[![GitHub license](https://img.shields.io/github/license/James2854/CurseForgeAPy?style=for-the-badge)](https://github.com/James2854/CurseForgeAPy)

CurseForgeAPy is a Python package that provides a wrapper for the CurseForge API / Eternal API. With CurseForgeAPy, you can easily access and interact with the API in your Python scripts and applications.

## Installation

To install CurseForgeAPy, simply use pip:
```bash
pip install CurseForgeAPy
```

## Usage

To use CurseForgeAPy, you will need to obtain an API key from CurseForge. You can do this by creating an account on CurseForge and requesting an API key from [the developer portal](https://console.curseforge.com/#/api-keys).

Once you have obtained an API key, you can use CurseForgeAPy as follows:

```python
from CurseForgeAPy import CurseForgeAPI

# Instantiate the CurseForgeAPy client
client = CurseForgeAPI(api_key='YOUR_API_KEY')

# Use the client to make API requests
response = client.getGames() # -> returns a GetGamesResponse

print(response)
```

## Documentation

For full documentation of the CurseForge API, please see the official CurseForge API documentation at https://docs.curseforge.com/.

## Examples

Here are some examples of how you can use CurseForgeAPy to access and interact with the CurseForge API:


### Games
``` Python
# get all games
games = cf.getGames()

# get specific game
game = cf.getGame(432)

# get version of specific game
versions = cf.getVersions(432)

# get version type of specific game
versionTypes = cf.getVersionTypes(432)

# get all mod categories of specific game
categories = cf.getCategories(432)
```

### Mods
``` Python
import CurseForgeAPy.SchemaClasses as schemas

# search for mods within specific game
searchResults = cf.searchMods(432)

# get specific mod
mod = cf.getMod(729219)

# get an array of mods from ids
mods = cf.getMods([729219])

# initialise GetFeaturedModsRequestBody object for use in get_featured_mods
featuredModsSearch = schemas.GetFeaturedModsRequestBody(432, [], 73242)

# get featured mods within specific game
featuredMods = cf.GetFeaturedMods(featuredModsSearch)

# get string description of specific mod
modDescription = cf.getModDescription(729219)

# get specific file within specific mod
modFile = cf.getModFile(729219, 4159320)

# get files based off of FileId
modFiles = cf.getModFiles(729219)
```

### Files
``` Python
# get files from list of ids
files = cf.getFiles(schemas.GetModFilesRequestBody([4159320]))

# get changelog of a specified mod and file id
changelog = cf.getModFileChangelog(729219, 4159320)

# get download url for a mod file
modFileDownloadUrl = cf.getModFIleDownloadUrl(729219, 4159320)
```

### Fingerprints
``` Python
# get exact matches for a fingerprint
fingerprintsMatches = cf.getFingerprintsMatches(schemas.GetFingerprintMatchesRequestBody([2352728825]))

# get fuzzy matches for a partial fingerprint
fuzzyMatches = cf.getFingerprintsFuzzyMatches(schemas.GetFuzzyMatchesRequestBody(432, [schemas.FolderFingerprint("test", [2352728825])]))

```
### Minecraft
``` Python
# get minecraft versions
minecraftVersions = cf.getMinecraftVersions()

# get a specific minecraft version
minecraftVersion = cf.getSpecificMinecraftVersion("1.16.5")

# get a list of minecraft modloaders
minecraftModloaders = cf.getMinecraftModloaders()

# get a specific minecraft modloader
minecraftModloader = cf.getSpecificMinecraftModloader(0)
```

## Support

If you have any issues or questions while using CurseForgeAPy, please feel free to open an issue on the GitHub repository or contact us through our support channels.

## Contribution

We welcome contributions to CurseForgeAPy! Please feel free to open a pull requests or issue if you would like a new feature.

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "CurseforgeAPy",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "",
    "author": "",
    "author_email": "James O'Grady <jamesmoose2854@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/48/a0/6a8f67e9d05a2b4329e80547447b9a5a5a85a8eae744e666a1c0fe212842/CurseforgeAPy-1.0.3.tar.gz",
    "platform": null,
    "description": "# CurseForgeAPy\r\n\r\n[![GitHub issues](https://img.shields.io/github/issues/James2854/CurseForgeAPy?style=for-the-badge)](https://github.com/James2854/CurseForgeAPy/issues)\r\n[![GitHub stars](https://img.shields.io/github/stars/James2854/CurseForgeAPy?style=for-the-badge)](https://github.com/James2854/CurseForgeAPy/stargazers)\r\n[![GitHub license](https://img.shields.io/github/license/James2854/CurseForgeAPy?style=for-the-badge)](https://github.com/James2854/CurseForgeAPy)\r\n\r\nCurseForgeAPy is a Python package that provides a wrapper for the CurseForge API / Eternal API. With CurseForgeAPy, you can easily access and interact with the API in your Python scripts and applications.\r\n\r\n## Installation\r\n\r\nTo install CurseForgeAPy, simply use pip:\r\n```bash\r\npip install CurseForgeAPy\r\n```\r\n\r\n## Usage\r\n\r\nTo use CurseForgeAPy, you will need to obtain an API key from CurseForge. You can do this by creating an account on CurseForge and requesting an API key from [the developer portal](https://console.curseforge.com/#/api-keys).\r\n\r\nOnce you have obtained an API key, you can use CurseForgeAPy as follows:\r\n\r\n```python\r\nfrom CurseForgeAPy import CurseForgeAPI\r\n\r\n# Instantiate the CurseForgeAPy client\r\nclient = CurseForgeAPI(api_key='YOUR_API_KEY')\r\n\r\n# Use the client to make API requests\r\nresponse = client.getGames() # -> returns a GetGamesResponse\r\n\r\nprint(response)\r\n```\r\n\r\n## Documentation\r\n\r\nFor full documentation of the CurseForge API, please see the official CurseForge API documentation at https://docs.curseforge.com/.\r\n\r\n## Examples\r\n\r\nHere are some examples of how you can use CurseForgeAPy to access and interact with the CurseForge API:\r\n\r\n\r\n### Games\r\n``` Python\r\n# get all games\r\ngames = cf.getGames()\r\n\r\n# get specific game\r\ngame = cf.getGame(432)\r\n\r\n# get version of specific game\r\nversions = cf.getVersions(432)\r\n\r\n# get version type of specific game\r\nversionTypes = cf.getVersionTypes(432)\r\n\r\n# get all mod categories of specific game\r\ncategories = cf.getCategories(432)\r\n```\r\n\r\n### Mods\r\n``` Python\r\nimport CurseForgeAPy.SchemaClasses as schemas\r\n\r\n# search for mods within specific game\r\nsearchResults = cf.searchMods(432)\r\n\r\n# get specific mod\r\nmod = cf.getMod(729219)\r\n\r\n# get an array of mods from ids\r\nmods = cf.getMods([729219])\r\n\r\n# initialise GetFeaturedModsRequestBody object for use in get_featured_mods\r\nfeaturedModsSearch = schemas.GetFeaturedModsRequestBody(432, [], 73242)\r\n\r\n# get featured mods within specific game\r\nfeaturedMods = cf.GetFeaturedMods(featuredModsSearch)\r\n\r\n# get string description of specific mod\r\nmodDescription = cf.getModDescription(729219)\r\n\r\n# get specific file within specific mod\r\nmodFile = cf.getModFile(729219, 4159320)\r\n\r\n# get files based off of FileId\r\nmodFiles = cf.getModFiles(729219)\r\n```\r\n\r\n### Files\r\n``` Python\r\n# get files from list of ids\r\nfiles = cf.getFiles(schemas.GetModFilesRequestBody([4159320]))\r\n\r\n# get changelog of a specified mod and file id\r\nchangelog = cf.getModFileChangelog(729219, 4159320)\r\n\r\n# get download url for a mod file\r\nmodFileDownloadUrl = cf.getModFIleDownloadUrl(729219, 4159320)\r\n```\r\n\r\n### Fingerprints\r\n``` Python\r\n# get exact matches for a fingerprint\r\nfingerprintsMatches = cf.getFingerprintsMatches(schemas.GetFingerprintMatchesRequestBody([2352728825]))\r\n\r\n# get fuzzy matches for a partial fingerprint\r\nfuzzyMatches = cf.getFingerprintsFuzzyMatches(schemas.GetFuzzyMatchesRequestBody(432, [schemas.FolderFingerprint(\"test\", [2352728825])]))\r\n\r\n```\r\n### Minecraft\r\n``` Python\r\n# get minecraft versions\r\nminecraftVersions = cf.getMinecraftVersions()\r\n\r\n# get a specific minecraft version\r\nminecraftVersion = cf.getSpecificMinecraftVersion(\"1.16.5\")\r\n\r\n# get a list of minecraft modloaders\r\nminecraftModloaders = cf.getMinecraftModloaders()\r\n\r\n# get a specific minecraft modloader\r\nminecraftModloader = cf.getSpecificMinecraftModloader(0)\r\n```\r\n\r\n## Support\r\n\r\nIf you have any issues or questions while using CurseForgeAPy, please feel free to open an issue on the GitHub repository or contact us through our support channels.\r\n\r\n## Contribution\r\n\r\nWe welcome contributions to CurseForgeAPy! Please feel free to open a pull requests or issue if you would like a new feature.\r\n",
    "bugtrack_url": null,
    "license": "",
    "summary": "A wrapper for the Eternal (CurseForge) API",
    "version": "1.0.3",
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "md5": "065c29ca2c131a6bf67ac8243caed017",
                "sha256": "d27ce510ad667aeeff05da596a7bcc9f8a5b4d4f93b2913eee3fccf8519063a6"
            },
            "downloads": -1,
            "filename": "CurseforgeAPy-1.0.3-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "065c29ca2c131a6bf67ac8243caed017",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 14064,
            "upload_time": "2022-12-19T18:08:30",
            "upload_time_iso_8601": "2022-12-19T18:08:30.128194Z",
            "url": "https://files.pythonhosted.org/packages/6c/a5/15039f010c59c0beafb7a69193fd22fca0cf0d77e6f32d353bbe73d4bbc7/CurseforgeAPy-1.0.3-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "md5": "9c6d10894bc8b3f793bf28edca99a00f",
                "sha256": "32484386b10d65700f6e043cbfa9f6914333ca6b19298d24b9cafbd1f228b43d"
            },
            "downloads": -1,
            "filename": "CurseforgeAPy-1.0.3.tar.gz",
            "has_sig": false,
            "md5_digest": "9c6d10894bc8b3f793bf28edca99a00f",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 14875,
            "upload_time": "2022-12-19T18:08:32",
            "upload_time_iso_8601": "2022-12-19T18:08:32.079018Z",
            "url": "https://files.pythonhosted.org/packages/48/a0/6a8f67e9d05a2b4329e80547447b9a5a5a85a8eae744e666a1c0fe212842/CurseforgeAPy-1.0.3.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2022-12-19 18:08:32",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "curseforgeapy"
}
        
Elapsed time: 0.01898s