OpenAPI reference · Settings
Read a project's curated settings
/settingsStructured fields only: generation-context knobs (language,
formality, length/formatting/emoji preferences), the project
tone-of-voice fields, the workspace custom-instruction state,
calendar settings (pure read — never inserts), and content
pillars. The rendered prompt context is never returned.
Settings writes have no REST surface; they live on MCP behind
two-phase confirmation. Requires the workspace:read scope.
Authorization
AuthorizationstringrequiredBearer token in the Authorization header.
Pass
Authorization: Bearer scripe_sk_live_<...>(orscripe_sk_test_<...>for test keys) on every request. Keys are scoped to a single workspace and can be revoked from the Scripe dashboard.The same header also accepts an OAuth 2.1 access token (
scripe_oat_*); both credentials share one scope vocabulary and every operation below documents the scope it requires. An API key can hold every scope named on this surface exceptwebhooks:manage, which is grantable to OAuth tokens only today — the webhook-endpoint operations answer403 scope_missingto every API key. Operations that name no scope accept any valid token of the workspace.
Query parameters
projectIdstringrequired
Header parameters
Scripe-Api-VersionstringPin the API version. Format
YYYY-MM-DD. Omit to receive the currently rolling default. Unknown versions return400 version_unsupported.
Responses
- 200
The project's settings.
- 400
Malformed request (bad cursor, bad limit, etc.).
- 401
Missing, malformed, expired, or revoked API key.
- 403
Plan not eligible, scope missing, or workspace mismatch.
- 404
Resource not found in this workspace.
- 429
Sliding-window rate limit exceeded.
Example request
curl --request GET \
--url 'https://api.scripe.io/v1/settings?projectId=<projectId>' \
--header 'Authorization: Bearer <token>'Example response (200)
{
"data": {
"project": {
"id": "proj_a1b2c3d4e5f6g7h8",
"name": "string",
"type": "PERSONAL_BRAND"
},
"context": {
"language": "string",
"germanFormality": "string",
"postLengthPreference": 2,
"postLengthPreferenceLabel": "standard",
"formattingPreference": 0,
"formattingPreferenceLabel": "standard",
"emojiPreference": 3,
"emojiPreferenceLabel": "moderate"
},
"toneOfVoice": {
"customInstructions": "string",
"customInstructionsEnabled": true,
"ctas": "string",
"footer": "string",
"footerEnabled": true,
"emojis": [
"string"
],
"bulletSymbols": [
"string"
],
"userModified": true
},
"organization": {
"customInstructions": "string",
"customInstructionsEnabled": true,
"footer": "string",
"footerEnabled": true,
"allowPersonalBrandCustomInstructions": true
},
"calendar": {
"timezone": "string",
"effectiveTimezone": "Europe/Berlin",
"weekStartsOn": "sunday",
"schedule": {
"slots": [
{
"time": "09:00",
"hour": null,
"minute": null,
"days": [
"monday",
"thursday"
]
}
],
"postsPerWeek": 3
}
},
"pillars": [
{
"title": "string",
"subtopics": [
"string"
],
"order": 0
}
]
}
}