TriportRPC

POST /v1/admin/referrals/simulate-paid — (Retired) Simulate paid invoice

POSThttps://api.triport.io/v1/admin/referrals/simulate-paid

**Retired endpoint.** This operator route is no longer offered — it always responds `410 Gone`. It existed only in stage 1, before the automated billing bridge began emitting referral rewards from real `invoice_paid` events. The intended contract is documented below for historical reference.

operator (admin token)

This endpoint is not currently supported. Every request returns 410 Gone with the body {"error": "endpoint_retired", "reason": "billing_bridge_active"}.

Originally this was an operator-only tool used during the early rollout of the referral program, when no billing integration existed yet. It let an operator synthetically mark a referred user's invoice as paid so the referral reward pipeline could be exercised end-to-end. Once the billing bridge went live, referral rewards began emitting automatically from real paid-invoice events, so the manual simulation hook was retired and there is no replacement action — the reward flow is now fully automatic.

The admin token check is still enforced before the retirement response: an anonymous or wrong-token request receives 401 Unauthorized and never learns that the route exists. Only a request with a valid X-Admin-Token proceeds to the 410 Gone response.

Parameters

The endpoint is retired and ignores any request body. The intended contract took the following operator inputs:

Headersobject
X-Admin-Tokenstringrequired
Operator admin token. Still validated; a bad token returns 401 before the 410.
Request body (intended, no longer honored)object
user_idstring (UUID)required
Referred user whose invoice is being simulated as paid.

Response

Any well-authenticated request returns 410 Gone:

errorstring
Always endpoint_retired for this route.
reasonstring
billing_bridge_active — rewards now emit automatically from paid-invoice events.

Errors

CodeMeaningWhen it happens
401 Unauthorized{"error": "admin_token_unset"}The server has no admin token configured.
401 Unauthorized{"error": "admin_token_invalid"}The X-Admin-Token header is missing or does not match.
405 Method Not Allowed{"error": "method_not_allowed"}A method other than POST was used.
410 Gone{"error": "endpoint_retired", "reason": "billing_bridge_active"}The endpoint is retired (returned for every valid-token request).

See the shared errors reference for the full error envelope.

Examples

JavaScript (fetch)

const res = await fetch(
  "https://api.triport.io/v1/admin/referrals/simulate-paid",
  {
    method: "POST",
    headers: {
      "X-Admin-Token": process.env.TRIPORT_API_KEY,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({ user_id: "f3b1c0de-0000-4a00-9c00-000000000001" }),
  }
);


console.log(res.status); // 410
console.log(await res.json()); // { error: "endpoint_retired", reason: "billing_bridge_active" }

TypeScript SDK (@triport/sdk)

// This endpoint is retired and is not exposed by the SDK.
// Referral rewards are emitted automatically from paid-invoice events;
// there is no client call to trigger them.

Python (triport-sdk)

# This endpoint is retired and is not exposed by the SDK.
# Referral rewards are emitted automatically from paid-invoice events;
# there is no client call to trigger them.

Notes

  • Do not integrate against this route. It is kept only so that stale clients receive a clear 410 Gone rather than a silent failure.
  • There is no replacement endpoint. Referral rewards are created automatically when a referred user's invoice is paid — no operator action is required.
  • For the operator routes that are supported, see the admin referral pages: user view (GET /v1/admin/referrals/users/{user_id}), tier override (POST /v1/admin/referrals/users/{user_id}/tier), and the payout lifecycle routes under /v1/admin/referrals/payouts/.