Update
Rename the workspace, move its slug, set its fiscal year, the years
OKR Hub offers, the default time zone, LaunchCal’s holiday markets,
whether seats grow as people join (autoGrowSeats), whether
LaunchCal’s calendar feeds are allowed (allowCalendarFeeds) or
whether Slack commands take Slack’s word while Google is required
(slackCommandsWithoutGoogle). Requires
organization:write, which a signed-in session never has: this takes
a key. Everything is checked before anything is written.
requireGoogleSignIn can be read but not changed here: it is turned
on in Settings → Workspace, by a workspace admin signed in with Google, so
nobody locks the workspace against the way they came in. Sending it
is a 422 validation_error. Errors: 409 slug_taken,
422 validation_error.
Authentication
Bearer authentication of the form Bearer <token>, where token is your auth token.
Request
Turned into a slug the way the settings page does it: lowercased,
every run of other characters made one hyphen, and cut at 48
characters. Acme Corp becomes acme-corp.
1 to 12. Objectives keep the year and quarter they were filed under; only the dates those cover move. LaunchCal’s “this quarter” moves with it.
Replaces the years OKR Hub offers besides the current one: each 2000 to 2100. Empty or null for the current year alone.
Replaces LaunchCal’s holiday markets: ISO country codes, at most 20.
Empty for none, null for the default (the United States). A code no
holidays are known for is a 422 validation_error naming it.
Whether a full app’s seats grow for people who join while auto-join is on. Turned on, nobody waits: everybody on a waiting list is given a seat at once, and the seats paid for rise to fit them. Each change is in the audit log and the activity feed, as it is from Settings → Domains.
Whether members may subscribe to LaunchCal from a calendar app. Turned off, every feed stops answering at once, and none is deleted: turned on again, they work as before. Each change is in the audit log, as it is from Settings → Workspace.
Whether Taktoria’s Slack commands take Slack’s confirmed address while Google is required, rather than asking each person to connect with Google. Turned off, everybody who has not connected is asked to at their next command; connections already made keep working. Each change is in the audit log, as it is from Settings → Workspace.
Response
The workspace’s address, as in taktoria.com/app/{slug}. Unique across Taktoria.
The calendar month (1 to 12) the fiscal year, and so Q1, starts in. Every app that talks in quarters reads it: OKR Hub’s periods, and LaunchCal’s “Launched this quarter”.
The fiscal years OKR Hub offers in its period pickers and on the scorecard besides the current one, which it always offers. Newest first; empty for the current year alone.
The countries, as ISO codes (US, GB), whose public holidays
LaunchCal shows on its calendar and warns about when a launch is
planned on one. The United States until somebody picks; empty for
none. See GET /holidays.
Members must be signed in with Google to open the workspace. A
session made any other way is refused by the API with
google_sign_in_required; keys are unaffected. It also makes every
go link and Dory event set to DOMAIN take Google’s word alone,
whatever its own requireGoogle says: their requireGoogle then
reads true.
Allow Slack commands without Google sign-in, under Require
sign-in with Google in Settings → Workspace. Slack cannot sign in
with Google, so while Google is required, Taktoria’s Slack commands
act only for somebody who has connected their Slack account by
signing in with Google once (see GET /slack-connections). On,
they take the address Slack has confirmed instead, as in a
workspace that does not require Google. It means nothing while
requireGoogleSignIn is false. Off by default.
Whether Google sign-in is set up on this installation, so it can be required.
Add seats as people join, in Settings → Domains. While a verified
domain has autoJoin on, somebody who joins gets their default seat
on an app even when its seats are all taken, and the seats paid for
rise by one (seatsPaid on the subscription; Stripe’s quantity
follows, prorated). Off, that app is skipped: the newcomer goes on
its waiting list (GET /seats/waiting), and owners and admins are
emailed who is waiting. It does nothing while no domain has
autoJoin on. On by default.
Allow calendar feeds, in Settings → Workspace: whether members may subscribe to LaunchCal from Google Calendar, Outlook or Apple Calendar. A feed is a private address read with no sign-in, around Require Google sign-in and single sign-on, so a workspace that holds every way in to those turns it off: every feed then answers 404 and none can be made, until it is on again. On by default. Feeds themselves have no API: each address is a person’s secret.
The IANA zone picked to start with wherever a time zone is asked, such as a Dory event’s, and what an event created through the API without one is given. Absent for none (UTC there).