Skip to main content

Python library simplifies the process of authenticating accounts with TP Servers.

Project description

tj-tpauth

tj-tpauth is a Python library for managing user authentication through an API. The library supports both synchronous and asynchronous methods for login and token-based authentication.

Installation

To install the library, use pip:

pip install tj-tpauth

Usage

Synchronous (Sync)

from tj_tpauth import TJTPAuth

# Initialize TJTPAuth object with API URL and optional timeout
tpauth = TJTPAuth(
    host='http://localhost:3000',
    timeout=10
)

# Log in with username and password
login_status = tpauth.login(
    username='username',
    password='password'
)

# Check login status
if not login_status.status:
    exit(0)

# Authenticate with token
auth_status = tpauth.from_token(login_status.data.token)

# Check authentication status
if not auth_status.status:
    exit(0)

# Print authentication data
print(auth_status.data)

Asynchronous (Async)

import asyncio
from tj_tpauth import TJTPAuth

# Initialize TJTPAuth object with API URL and optional timeout
tpauth = TJTPAuth(
    host='http://localhost:3000',
    timeout=10
)


async def main():
    # Log in with username and password
    login_status = await tpauth.aio_login(
        username='username',
        password='password'
    )

    # Check login status
    if not login_status.status:
        exit(0)

    # Authenticate with token
    auth_status = await tpauth.aio_from_token(login_status.data.token)

    # Check authentication status
    if not auth_status.status:
        exit(0)

    # Print authentication data
    print(auth_status.data)


# Run asynchronous function
asyncio.run(main())

Main Classes

  • TPAuthData: Contains user authentication information.
  • TPAuthStatus: Represents the authentication status, including error information.
  • TJTPAuth: Provides synchronous and asynchronous methods for login and token-based authentication.

Error Handling

  • Error.NOTHING: No error.
  • Error.TIMEOUT: Timeout error.
  • Error.UNAUTHORIZED: Unauthorized error.
  • Error.PARSING: Data parsing error.

References

For more information about requests and aiohttp, refer to their official documentation:

License

This library is released under the MIT License.

Contact

If you have any questions or issues, please open an issue on GitHub or email us at duynguyen02.dev@gmail.com.

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

tj_tpauth-1.1.0.tar.gz (3.5 kB view details)

Uploaded Source

Built Distribution

tj_tpauth-1.1.0-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file tj_tpauth-1.1.0.tar.gz.

File metadata

  • Download URL: tj_tpauth-1.1.0.tar.gz
  • Upload date:
  • Size: 3.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-41-generic

File hashes

Hashes for tj_tpauth-1.1.0.tar.gz
Algorithm Hash digest
SHA256 be6623f1b7552968ae4ee4f0c51412eeec8bfe7463fd0f06117027524ce528aa
MD5 2f9a69bed9af094130a5ebc0a8b6a877
BLAKE2b-256 8a9a1357ffee244d14b59139eaa3e13744c2f8bf68be1a34280e51aaa578bdbb

See more details on using hashes here.

File details

Details for the file tj_tpauth-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: tj_tpauth-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 4.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.8.0-41-generic

File hashes

Hashes for tj_tpauth-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 60f26b54f5939f47c8e5d605889cd037989e32a6f15e3f85d9caea812660e3be
MD5 47e769d10987665a9e813ef9079783d0
BLAKE2b-256 a5ce3df1d9284fa29edfda0d32d9221c2d4aec16ce780bb608b1a4fadb09a998

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page