Secure token generation for Pica AuthKit
Project description
authkit-token
Secure token generation for Pica's AuthKit using Python.
Install
pip install authkit-token
Creating a token endpoint
You'll want to create an internal endpoint that's used to generate secure tokens for your frontend. You can do so by adding code that looks like the below snippet.
Synchronous Usage
from authkit_token import AuthKitToken
# In your Flask/FastAPI/Django endpoint
@app.post("/authkit-token")
async def create_authkit_token(request):
authkit_token = AuthKitToken("sk_live_1234")
token = authkit_token.create(
identity_type="user",
identity="user_123"
)
return token
Asynchronous Usage
from authkit_token import AuthKitToken
# In your async endpoint
@app.post("/authkit-token")
async def create_authkit_token(request):
authkit_token = AuthKitToken("sk_live_1234")
token = await authkit_token.create_async(
identity_type="user",
identity="user_123"
)
return token
You can get your API key from the Pica dashboard.
If you pass an identity or identity_type (user, team, organization, or project), you'll be able to query for all connections scoped to that identity. The identity is used to generate the unique Connection Key for the user once they successfully connect an account.
Frontend Implementation
To implement the AuthKit component in your frontend, you'll need to use the @picahq/authkit package. It's fully compatible with popular frameworks such as React, Next.js, Vue, Svelte, and more.
- NPM package: https://www.npmjs.com/package/@picahq/authkit
- Documentation: https://docs.picaos.com/authkit
- Setup guide: https://docs.picaos.com/authkit/setup
Diagram
sequenceDiagram
participant User
participant YourApp as Your Application
participant YourBackend as Your Backend
participant Pica as Pica AuthKit
participant Integration as Third-party Integration
User->>YourApp: Clicks "Connect Integration"
YourApp->>Pica: Open AuthKit modal
Pica->>YourBackend: Request AuthKit token
YourBackend->>Pica: Generate token with user identity
Pica->>Pica: Display integrations list
User->>Pica: Select integration & authenticate
Pica->>Integration: OAuth handshake
Integration->>Pica: Access token
Pica->>Pica: Store encrypted credentials
Pica->>YourApp: Return connection details
YourApp->>User: Connection successful!
Full Documentation
Please refer to the official Pica AuthKit docs for a more holistic understanding of AuthKit.
License
GPL-3.0
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 authkit_token-1.0.1.tar.gz.
File metadata
- Download URL: authkit_token-1.0.1.tar.gz
- Upload date:
- Size: 22.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b03efeef7d47c67f973eaa420ee4185a89872ea071f0e0e9c081cacb58a4332e
|
|
| MD5 |
5c24c21defb9e0c0555f16c8c3f52191
|
|
| BLAKE2b-256 |
0a8a4d4990aefb984b815af524ae292c1486c8a0bc33526b0d46952dfeb8b1a4
|
File details
Details for the file authkit_token-1.0.1-py3-none-any.whl.
File metadata
- Download URL: authkit_token-1.0.1-py3-none-any.whl
- Upload date:
- Size: 20.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
cb885f01de83c44e054f28bb98f1081eb241b7791a491382372fd34a41ca4f6b
|
|
| MD5 |
3221e708b5014654d46507ada1606220
|
|
| BLAKE2b-256 |
bf65d955e8e868409d8edda0dd8b6cb1fcaae043166d43fd54fcb4611fd10694
|