SDKs & samples

PropSocket does not ship an official SDK. We ship runnable samples instead — a handful of small apps that show idiomatic auth, pagination, and webhook handling, each runnable in a couple of minutes. This is a deliberate choice, not a gap; the reasoning is below.

Why samples, not an SDK

The REST surface is small and predictable — five entities, read-only, one auth header, one pagination envelope. A typed client over that is roughly thirty lines of glue you can read in one sitting. An SDK, by contrast, is a permanent commitment: versioning, a release pipeline, breaking-change discipline, and the language-coverage politics of "why Python and not Node?" Samples deliver the part you actually want — a correct, runnable starting point — without that overhead, and we can offer them in more than one language without picking a favorite.

If your team would genuinely rather pip install or npm install a client than copy a sample, tell us — that signal is exactly what we're watching to decide whether an official SDK is worth the commitment.

The samples

REST consumer

Authenticate, list an entity, page to the end, and print results. The minimal correct read loop — copy it as the basis for any pull-based integration.

Webhook receiver

Capture the raw body, verify the HMAC-SHA256 signature, dedupe on the event id, acknowledge fast, process async. The receiver scaffolding from thewebhooks guide, wired up end to end. Webhooks are on theScale plan and above (pricing).

Backfill paginator

Page every entity by created_at:asc, honor Retry-After, and upsert idempotently. The backfill recipe as a runnable app.

Running a sample

Each sample ships in seven languages — Python, Node, Go, Ruby, PHP, Java, and .NET — laid out as<sample>/<language>. Pick a sample, then your language, drop in yourps_test_ key, and run:

Run a sample
git clone https://github.com/propsocket/propsocket-samples
cd propsocket-samples/rest-consumer/python   # pick a sample, then a language
cp .env.example .env          # paste your ps_test_ key
make run

Each ships with a .env.example and a make run target, and runs againstapi.propsocket.io with a ps_test_ key — reads return your real connected data and writes are dry-run, so samples never mutate your PMS. The repository is Apache-2.0; fork it, gut it, ship it.

Generate your own client

Prefer a typed client today? PropSocket publishes an OpenAPI description of the REST API atapi.propsocket.io/openapi.yaml, so you can generate a client in your language with openapi-generator or equivalent. That keeps you in control of versioning and language choice — which is the same trade-off that led us to samples over a hand-maintained SDK.

Next

New here? The quickstart walks the same paths as the REST consumer and webhook receiver, inline. For task-specific code, browse the recipes.