@friggframework/schemas 2.0.0--canary.682.d8626c4.0 → 2.0.0--canary.684.0da024b.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@friggframework/schemas",
3
- "version": "2.0.0--canary.682.d8626c4.0",
3
+ "version": "2.0.0--canary.684.0da024b.0",
4
4
  "description": "Canonical JSON Schema definitions for Frigg Framework",
5
5
  "main": "index.js",
6
6
  "author": "",
@@ -41,5 +41,5 @@
41
41
  "middleware/",
42
42
  "index.js"
43
43
  ],
44
- "gitHead": "d8626c44a041edbf421a843c24d6a050cbf8657b"
44
+ "gitHead": "0da024bd724c987e4bc839ab0c302580333466a1"
45
45
  }
@@ -29,10 +29,32 @@
29
29
  "type": "boolean",
30
30
  "description": "Whether the authentication is currently valid"
31
31
  },
32
+ "scope": {
33
+ "type": "string",
34
+ "enum": ["individual", "organization"],
35
+ "description": "Whose the credential is (ADR-056 §3.4), from who owns the credential. `global` ones are not listed to tenants."
36
+ },
37
+ "owner": {
38
+ "type": "object",
39
+ "properties": {
40
+ "type": { "type": "string", "enum": ["individual", "organization"] },
41
+ "id": { "type": "string" }
42
+ },
43
+ "description": "The user that owns it: the person, or the organization's user"
44
+ },
45
+ "organizationId": {
46
+ "type": ["string", "null"],
47
+ "description": "The organization it belongs to. Null for an individual credential connected outside an organization, or under ownership.individualAcross 'all'."
48
+ },
49
+ "access": {
50
+ "type": "string",
51
+ "enum": ["manage", "use", "view"],
52
+ "description": "What the caller may do: manage (reauthorize, delete) or use. A member only uses an organization's credential."
53
+ },
32
54
  "entityCount": {
33
55
  "type": "integer",
34
56
  "minimum": 0,
35
- "description": "Number of entities using this credential"
57
+ "description": "Number of entities using this credential that the caller may see"
36
58
  },
37
59
  "createdAt": {
38
60
  "type": "string",
@@ -115,6 +115,18 @@
115
115
  "description": "DEPRECATED alias of strictMembership; its meaning changed.",
116
116
  "default": false
117
117
  },
118
+ "orgAdminRoles": {
119
+ "type": "array",
120
+ "description": "Organization roles that may manage organization-level things: connect or delete an organization-level account, re-authorize or delete its credential, create, change or delete an organization-owned integration (ADR-056 §3). The role is the adopter token's role claim; when the token carries none, the role stored on the caller's membership of the active organization (OrganizationMembership.orgRole); when there is none, MEMBER, never admin. A shared-secret (x-frigg header) caller needs no role, and so does a Frigg bearer token unless orgAdminGateBearerTokens is true. Compared case-insensitively.",
121
+ "items": { "type": "string", "minLength": 1 },
122
+ "minItems": 1,
123
+ "default": ["ADMIN"]
124
+ },
125
+ "orgAdminGateBearerTokens": {
126
+ "type": "boolean",
127
+ "description": "Judge Frigg bearer-token callers (/user/login) by organization role like adopter-token callers. Default false: a bearer token carries no role and keeps its behaviour from before organization roles, so it may manage the organization it acts in.",
128
+ "default": false
129
+ },
118
130
  "authModes": {
119
131
  "type": "object",
120
132
  "description": "Authentication mode configuration - enables multiple authentication strategies. x-frigg-appUserId and x-frigg-appOrgId headers are automatically supported for user identification with any auth mode.",