OpenCourt Developers
API ReferenceSignals

Retrieve a signal

GET/v1/signals/{id}

One signal by id — the payload exactly as it was stored at emit time, which is what was delivered. Useful when reconciling a delivery you are not sure you processed.

Membership limitation. subscription.* signals cover memberships on the subscription billing engine. A club still on the legacy membership model emits none of them — the absence is expected, not a fault. Ask the club which model it is on before wiring a membership automation.

Authorization

bearerAuth
AuthorizationBearer <token>

Your club API key. Send it as Authorization: Bearer oc_live_….

In: header

Path Parameters

id*string

The signal id.

Response Body

application/json

application/json

application/json

application/json

curl -X GET "https://api.getopencourt.com/v1/signals/sig_1KpQ2rXvN8mZ4tYb"
{
  "id": "sig_1KpQ2rXvN8mZ4tYb",
  "object": "signal",
  "type": "customer.updated",
  "created": "2026-08-28T14:30:00.000Z",
  "sequence": 4821,
  "api_version": "v1",
  "data": {
    "object": {
      "id": "b2c3d4e5-f6a7-4b8c-9d0e-1f2a3b4c5d6e",
      "object": "customer",
      "first_name": "Jordan",
      "last_name": "Reyes",
      "email": "jordan.reyes@example.com"
    }
  },
  "previous_attributes": {
    "phone": "+15551234567"
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string",
    "param": "string",
    "request_id": "string"
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string",
    "param": "string",
    "request_id": "string"
  }
}
{
  "error": {
    "type": "string",
    "code": "string",
    "message": "string",
    "param": "string",
    "request_id": "string"
  }
}