Get project
Returns 404 when the project does not exist in the active tenant, including cross-tenant ids.
Authorization
bearer AuthorizationBearer <token>
In: header
Path Parameters
projectId*string
Response Body
application/json
curl -X GET "https://api.monitoring.crahe-arthur.com/api/v1/projects/string"{
"allowedEnvironments": [
"dev",
"staging",
"prod"
],
"id": "018f7b9a-2fb6-48e4-bc02-2e5d9d9f1f9a",
"tenantId": "018f7b9a-6f8d-4c1d-8d72-1bbecdadc101",
"name": "Production API",
"slug": "production-api",
"retentionDays": 30,
"createdAt": "2026-04-28T19:00:00.000Z",
"updatedAt": "2026-04-28T20:00:00.000Z"
}Get my project role
Resolves the role with the same `org→admin` derivation as `RolesGuard`. Returns `{ role: null }` when the user is neither a project member nor an org owner/admin. Cross-tenant probes return 404 (existence-leak prevention).
Update project
Requires project admin access. Only mutable project settings can be changed; the tenant scope remains derived from the authenticated request context.