Trimble Authentication module Client Library for Python
Project description
trimble-id
Trimble Identity SDK for Python
Getting Started
Installation
You can install with pip:
pip install trimble-id
Configure Trimble Identity
Create a new application in the Trimble Developer Console portal and configure the following settings:
To register your application in Trimble Developer Console:
-
On the left pane select "Applications".
-
On the Applications home page, in the top right corner select + NEW APPLICATION. The Create Application page displays.
-
Select Continue to enter the applications details.
Field Description Name Name of your application Description Provide a description for the application. -
Configure OAuth application grant types
Client Credentialsin order to use this SDK. -
Select "Create Application" to save changes.
Take note of the Client ID and URLs under the "Basic Information" section. You'll need these values to configure the SDK.
Scopes
Trimble Identity uses scopes to determine the aud claim in the returned access token. Scope is mandatory for the application to work. You can use the scope as the application name registered in the Trimble Developer Console. For example, if you have registered an application with the name "test", then it must be registered in the format {some_uuid}-"test". For eg., 12345678-1234-1234-1234-123456789012-test.
For more information, see Authentication documentation.
Usage Reference
Well-Known URL endpoint
The well-known URL endpoint is used to retrieve the authorization, token and user info endpoints for a given environment. The following endpoints are available for the staging and production environments:
| Endpoint | https://id.trimble.com/.well-known/openid-configuration |
|---|
OpenID Endpoint Provider
This endpoint provider is used to retrieve the endpoints from a well-known URL endpoint.
Usage
from trimble.id import OpenIdEndpointProvider
endpoint_provider = OpenIdEndpointProvider("https://id.trimble.com/.well-known/openid-configuration")
auth_endpoint = await endpoint_provider.retrieve_authorization_endpoint()
token_endpoint = await endpoint_provider.retrieve_token_endpoint()
Fixed Endpoint Provider
This endpoint provider is used to provide a fixed set of endpoints.
Usage
from trimble.id import FixedEndpointProvider
endpoint_provider = FixedEndpointProvider("https://authorization.url", "https://token.url", "https://userinfo.url")
endpoint = await endpoint_provider.retrieve_authorization_endpoint()
Client Credential Token Provider
This token provider is used to retrieve an access token using the client credentials grant type.
Usage
from trimble.id import ClientCredentialTokenProvider
token_provider = ClientCredentialTokenProvider(endpoint_provider, "client_id", "client_secret").with_scopes(["scope"])
access_token = await token_provider.retrieve_token()
NOTE: Refer samples for better understanding.
Sample Code
See here for Sample Code for reference.
Release notes
See here for releases
Raise an issue
To provide feedback or report a bug, please raise an issue on our issue tracker.
Support
Send email to support@trimble.com
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 trimble_id-0.1.0a1.tar.gz.
File metadata
- Download URL: trimble_id-0.1.0a1.tar.gz
- Upload date:
- Size: 11.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1c85c1c1b062b54fee0a42516ea5c5d755c0dbf7fc4403634b2c1d108e12a4fc
|
|
| MD5 |
aec197f3f8309a922b5247e7138cec9c
|
|
| BLAKE2b-256 |
869f62f6d3ddbbe72ee21387b8cf8bc82fd982478b4371266cfa84f6fe5191b2
|
File details
Details for the file trimble_id-0.1.0a1-py3-none-any.whl.
File metadata
- Download URL: trimble_id-0.1.0a1-py3-none-any.whl
- Upload date:
- Size: 16.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/5.1.1 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
8610ab8b0a7f7d79d0e1d13587d739e75eb882cb4af415d0dc1b585e512c4665
|
|
| MD5 |
ebe82699387ae6a0fa278908876e78be
|
|
| BLAKE2b-256 |
aabb724eec9efdbc2b655bcf4869ceb7b1e18b9c9ea8d4918470104281e0ea07
|