Shared components
These services are defined in org-runink/ui, not in PULSE. PULSE registers the
shared Go handlers with its own hooks. For message fields, read the .proto
files in that repository; this page covers what PULSE does with each service.
runink.ui.billing.v1.BillingService
The Billing page. See Billing.
| Method | In PULSE |
|---|---|
ListPlans, QuotePlan | Work. Pure price arithmetic. |
GetOverview | The subscription from TENANT_ID and SUBSCRIPTION_*. Usage is stated as not metered. |
StartCheckout, OpenPortal | No payment provider: the answer is “not configured”, never an error or a fake URL. |
ListSeats, AssignSeat, RevokeSeat | PULSE keeps no seat roster. |
runink.ui.datasources.v1.ConnectionsService
The Data sources tab. PULSE serves it over its own integrations table and
narrows the catalog to HubSpot and GitHub.
| Method | Purpose |
|---|---|
ListConnectionTypes | The connector types offered: HubSpot and GitHub |
ListConnections, ListConnectionNames, GetConnection | Read your connections |
CreateConnection, UpdateConnection, DeleteConnection | Manage them |
RotateCredentials | Replace the stored token |
TestConnection | Check the token against the platform |
A connection that sets a runner, an environment, or properties is refused, and nothing is stored.
runink.ui.datasources.v1.RunnersService
PULSE runs its connectors inside the server and has no remote runners. The service is registered so the shared page can say so. It reports no runners.
runink.ui.profile.v1.ProfileService
The Account page.
| Method | In PULSE |
|---|---|
GetProfile | Your email, display name, and role from the users table, plus your session. Tenant from TENANT_ID. |
ListInstances | The one instance this deployment serves, with your role. The app’s Admin menu entry reads this. |
EndAllSessions | Ends all of your own sessions on every device |
runink.ui.access.v1.AccessService
The Admin page. Admins only; the role is read fresh on every call. See Users and access.
| Method | Purpose |
|---|---|
ListMembers | Members and their roles |
InviteMember | Grant a person a role. PULSE does not limit invites by seats. |
SetMemberRole | Change a role. Not your own, and never the last admin. |
RemoveMember | Remove a member. Not yourself, and never the last admin. |