Skip to main content

API

This is a custom API, written in Python using FastAPI, to help me accomplish tasks the can be improved through a RESTful API

Setup

Simplest setup is to start from compose.yml and template.env, which should be renamed to .env

Environment Vairables

  • API_KEY - Any long, random string. Keep this secret as this is the only form of authentication for the API. All routes require it, except /health-check/
  • DATABASE_URL - The URL to connect to postgres DB. Must start with postgresql+psycopg://. Should be in the format specifiec in template.env
  • TZ - Timezone of the container
  • PGTZ - Timezone the Postgres container should use
  • NEXTCLOUD_URL - Base URL (must be https://) of the Nextcloud instance used by /webhook/nextcloud-talk
  • NEXTCLOUD_TALK_TOKEN - Conversation token of the registered Nextcloud Talk bot used by /webhook/nextcloud-talk
  • NEXTCLOUD_TALK_SECRET - Shared secret of the registered Nextcloud Talk bot used by /webhook/nextcloud-talk

Webhooks

  • POST /webhook/nextcloud-talk - Forwards a header and message to a Nextcloud Talk conversation via the Nextcloud Talk Bot API, using the nctalk package. Requires the X-API-KEY header and a JSON body: {"header": "...", "message": "..."}

How to Access

Using the compose.yml file, you can access the API at http://<IP>:5000/health-check. If everything is setup correctly, you should see {"status":"ok"}

Release files for js-api 0.2.100

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for js-api 0.2.100
File Size Uploaded
js_api-0.2.100.tar.gz 22.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for js-api 0.2.100
File Interpreter ABI Platform
js_api-0.2.100-py3-none-any.whl Python 3 none any Details

Total release size: 44.7 kB

Release files / js_api-0.2.100.tar.gz

Download URL js_api-0.2.100.tar.gz
Size 22.6 kB
Tags Source
SHA-256 checksum
How to use checksums
a704967052ca2481ac4eb3f443817aa6e7598ddc848073a92a3ed0d4513d19e4
BLAKE2b-256 checksum
How to use checksums
647be075f2393f8e9a2f4c8bc44d6aedadbb1c36df83f21c9ab593cce0abb4e1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release files / js_api-0.2.100-py3-none-any.whl

Download URL js_api-0.2.100-py3-none-any.whl
Size 22.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
07dea6ebbbd47687a5ce0ec077f8ed2aa65b60c4f882172e9e3c9f8120b11945
BLAKE2b-256 checksum
How to use checksums
0f21a2ea11cbdc86f66150a3a849a171f7957319b8a3a9aa270e97c2a02b8196
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Sep 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.2.100 This release

2 release files

0.2.99

2 release files

0.2.98

2 release files

0.2.97

2 release files

0.2.96

2 release files

0.2.93

2 release files

0.2.92

2 release files

0.2.91

2 release files

0.2.90

2 release files

0.2.88

2 release files

0.2.87

2 release files

0.2.86

2 release files

0.2.85

2 release files

0.2.84

2 release files

0.2.83

2 release files

0.2.81

2 release files

0.2.80

2 release files

0.2.79

2 release files

0.2.78

2 release files

0.2.77

2 release files

0.2.76

2 release files

0.2.75

2 release files

0.2.74

2 release files

0.2.73

2 release files

0.2.72

2 release files

0.2.71

2 release files

0.2.70

2 release files

0.2.69

2 release files

0.2.68

2 release files

0.2.67

2 release files

0.2.64

2 release files

0.2.61

2 release files

0.2.60

2 release files

0.2.59

2 release files

0.2.58

2 release files

0.2.57

2 release files

0.2.56

2 release files

0.2.55

2 release files

0.2.54

2 release files

0.2.50

2 release files

0.2.42

2 release files

0.2.41

2 release files

0.2.40

2 release files

0.2.30

2 release files

0.2.29

2 release files

0.2.28

2 release files

0.2.27

2 release files

0.2.26

2 release files

0.2.22

2 release files

0.2.21

2 release files

0.2.20

2 release files

0.2.19

2 release files

0.2.16

2 release files

0.2.15

2 release files

0.2.14

2 release files

0.2.13

2 release files

0.2.10

2 release files

0.2.9

2 release files

0.2.8

2 release files

0.2.7

2 release files

0.2.6

2 release files

0.2.5

2 release files

0.2.4

2 release files

0.2.3

2 release files

0.2.2

2 release files

0.2.1

2 release files

0.2.0

2 release files

0.1.16

2 release files

0.1.15

2 release files

0.1.14

2 release files

0.1.13

2 release files

0.1.10

2 release files

0.1.9

2 release files

0.1.8

2 release files

0.1.7

2 release files

0.1.6

2 release files

0.1.5

2 release files

0.1.4

2 release files

0.1.3

2 release files

0.1.2

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page