This is a sample application to demonstrate the capabilities of the Semrush App Center API. It was built on Python backend and React TypeScript frontend, because it's the most popular stack. You can use any other technologies—for example, vanilla JS.
- Node.js version
20
or higher. - Python version
3.11
or higher. - Registered test app in Semrush App Center. Learn how to register ›.
python3 -m venv .venv
. .venv/bin/activate
pip install -r requirements.txt
cd frontend; npm install; npm run build
- Using your test application ID and secret, as a quick solution, replace the
SEMRUSH_APP_ID
andSEMRUSH_APP_SECRET
"default" field in config.py. For a more secure solution, set them as environment variables. This step is necessary to make JWT validation work properly. Without this step, Semrush iframe will be creating JWTs signed with your app secret, and this app will try to verify them using the incorrect app secret value. - Start the backend:
python3 app.py
The default backend port is 8080
, defined in config.py.
- Ask the App Center Team to change your test app iframe URL in Semrush to
http://localhost:8080
. - Open your application page in Semrush and see this app running in the iframe.
When editing the frontend, rebuild it after each edit:
cd frontend; npm run build