#### PREREQUISITES ####
-
Python.
-
Read API documentation (https://latch.tu.com/www/developers/doc_api).
-
To get the "Application ID" and "Secret", (fundamental values for integrating Latch in any application), it’s necessary to register a developer account in Latch's website: https://latch.tu.com. On the upper right side, click on "Developer area"
- Install "latch-sdk-telefonica"
pip install latch-sdk-telefonica
- Import "latch" module.
import latch
- Create a Latch object with the "Application ID" and "Secret" previously obtained.
api = latch.Latch("APP_ID_HERE", "SECRET_KEY_HERE")
- Optional settings:
latch.Latch.set_proxy("PROXY_HOST_HERE", port)
- Call to Latch Server. Pairing will return an account id that you should store for future api calls
response = api.pair("PAIRING_CODE_HERE")
response = api.status("ACCOUNT_ID_HERE")
response = api.unpair("ACCOUNT_ID_HERE")
- After every API call, get Latch response data and errors and handle them.
responseData = response.get_data()
responseError = response.get_error()
For using the Python SDK within an Web3 service, you must complain with the following:
- It is necessary to have a developer subscription that allows you to create web3 apps.
- You need metamask extension for Google Chrome Download metamask
- You need a wallet to operate on Polygon. You can easily create one through Metamask.
Once you have your developer Latch account created, you must logging in the website.
Steps to add new web3 app in latch-website
We add a new method to pair the web3 applications, now we have two new parameters. The two additional parameters are:
- WEB3WALLET: The Ethereum-based address wallet for the user that wants to pair the service.
- WEB3SIGNATURE: A proof-of-ownership signature of a constant, in order to verify that the user owns the private key of the wallet. You can use https://etherscan.io/verifiedSignatures# to sign the following message:
- MESSAGE TO SIGN : "Latch-Web3"
- Call to Latch Server for pairing as usual, but with the newly methods:
api = latch.Latch(APP_ID, SECRET_KEY)
# PAIR
response = api.pair(pairing_code, WEB3WALLET, WEB3SIGNATURE)
You have an example of use in the file example for web3 app
To run the tests you need a latch account with a paired user and an activated TOTP server, and fill an .env file with the following
user_id = <user_id>
user_secret = <user_secret>
app_id = <app_id>
secret_id = <secret_id>
account_id = <account_id>
API User Access Keys: user_id, user_secret
From the app: app_id, secret_id
From the paired user: account_id (Id obtained when the user ir paired)
You can run the tests with the command
python3 -m venv ./.venv
.\.venv\Scripts\Activate.ps1
pip install -r .\requirements.txt
python3 -m unittest