{
	"item": [
		{
			"id": "2c34b34a-cb60-402f-883a-f3e723631440",
			"name": "Auth",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "38e86296-be29-4a81-982d-3a6869a32d16",
					"name": "Logout (no-op — session revocation is managed by WorkOS)",
					"request": {
						"name": "Logout (no-op — session revocation is managed by WorkOS)",
						"description": {
							"content": "Ends the current session. This is a no-op on the API side — session lifecycle and token revocation are managed by WorkOS. Included for client symmetry and safe to call idempotently; it always returns `204`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"auth",
								"logout"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "d938d2e9-bb7a-44df-8557-2179be50788c",
							"name": "Logged out",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"logout"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"method": "POST",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "ce4050a1-9afd-48cc-8180-60480eeff7d9",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"logout"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "760f4709-4dfb-4ee2-8abf-f09ba88fc40a",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"logout"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "830dca4b-af75-4c2c-b3f2-731971bf0b8f",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"logout"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "fc2a4a4c-d086-4fd2-9a21-7e37d7a37186",
					"name": "Get current user",
					"request": {
						"name": "Get current user",
						"description": {
							"content": "Returns the authenticated user behind the current `{{apiKey}}` — user id, email, and the families they belong to. Use it to confirm a key is valid and to discover the caller's `familyId`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"auth",
								"me"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "2a285f7e-f9d9-4d0e-8584-13fc0e56f828",
							"name": "Current user",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"me"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"9f8b2a14-6c3d-4e51-8a72-1f0b9c4d2e63\",\n  \"email\": \"parent@example.com\",\n  \"name\": \"Ada Rivera\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9d196935-b3f4-4722-9eba-135656a526df",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"me"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "77374c5e-cb5e-45ad-a2ec-c3e1928bc58a",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"me"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "097fa80b-b8d5-42de-99c1-de0856fa84e0",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"auth",
										"me"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "adb1dc1c-11c6-4f10-b8fe-f45e475e2c26",
			"name": "Quick Setup",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "8558c3b3-2d52-4983-a472-0bb11b4281c0",
					"name": "One-step onboarding",
					"request": {
						"name": "One-step onboarding",
						"description": {
							"content": "Creates a family (or uses existing), adds a child, generates age-appropriate policy rules, and activates the policy.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"setup",
								"quick"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"child_name\": \"Mia Rivera\",\n  \"birth_date\": \"2013-05-14\",\n  \"family_name\": \"Rivera Household\",\n  \"strictness\": \"recommended\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "e379bb60-956e-4454-8666-173351560d7d",
							"name": "Setup complete",
							"originalRequest": {
								"url": {
									"path": [
										"setup",
										"quick"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_name\": \"string\",\n  \"birth_date\": \"1998-01-15\",\n  \"family_id\": \"d188b82f-c1e7-26e8-d614-1578ef99bbc2\",\n  \"family_name\": \"string\",\n  \"strictness\": \"relaxed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"family\": {\n    \"id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"name\": \"Ada's Family\",\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  },\n  \"child\": {\n    \"id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"name\": \"Ada\",\n    \"birth_date\": \"2015-04-10T00:00:00Z\",\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  },\n  \"policy\": {\n    \"id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n    \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"name\": \"Ada's Protection Policy\",\n    \"status\": \"active\",\n    \"priority\": 0,\n    \"version\": 1,\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  },\n  \"age_group\": \"elementary\",\n  \"max_ratings\": {\n    \"esrb\": \"E10+\",\n    \"mpaa\": \"PG\"\n  },\n  \"rule_summary\": {\n    \"screen_time_minutes\": 120,\n    \"bedtime_hour\": 21,\n    \"web_filter_level\": \"moderate\",\n    \"content_rating\": \"PG\",\n    \"total_rules_enabled\": 14\n  }\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a5806626-24cf-470b-88b4-613e21974142",
							"name": "Invalid request (missing child_name or birth_date)",
							"originalRequest": {
								"url": {
									"path": [
										"setup",
										"quick"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_name\": \"string\",\n  \"birth_date\": \"1998-01-15\",\n  \"family_id\": \"d188b82f-c1e7-26e8-d614-1578ef99bbc2\",\n  \"family_name\": \"string\",\n  \"strictness\": \"relaxed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "f4c4944b-3a60-4cdc-b6fd-caf6e6b0628b",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"setup",
										"quick"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_name\": \"string\",\n  \"birth_date\": \"1998-01-15\",\n  \"family_id\": \"d188b82f-c1e7-26e8-d614-1578ef99bbc2\",\n  \"family_name\": \"string\",\n  \"strictness\": \"relaxed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ceefd2ba-54fe-4a29-bfef-f02e5fa74536",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"setup",
										"quick"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_name\": \"string\",\n  \"birth_date\": \"1998-01-15\",\n  \"family_id\": \"d188b82f-c1e7-26e8-d614-1578ef99bbc2\",\n  \"family_name\": \"string\",\n  \"strictness\": \"relaxed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c7b60444-b857-446f-8762-e0f04cd17a4c",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"setup",
										"quick"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_name\": \"string\",\n  \"birth_date\": \"1998-01-15\",\n  \"family_id\": \"d188b82f-c1e7-26e8-d614-1578ef99bbc2\",\n  \"family_name\": \"string\",\n  \"strictness\": \"relaxed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j) {",
									"  if (j.family && j.family.id) pm.collectionVariables.set('familyId', j.family.id);",
									"  if (j.child && j.child.id) pm.collectionVariables.set('childId', j.child.id);",
									"  if (j.policy && j.policy.id) pm.collectionVariables.set('policyId', j.policy.id);",
									"  if (j.rules && j.rules[0] && j.rules[0].id) pm.collectionVariables.set('ruleId', j.rules[0].id);",
									"}"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "8e3ae595-8796-43c9-befe-cf86d2372693",
			"name": "Families",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "5d1a1434-eb2f-425e-bf1f-d22b22aaa4b7",
					"name": "List user's families",
					"request": {
						"name": "List user's families",
						"description": {
							"content": "Lists every family the authenticated user is a member of, with each family's id, name, and the caller's role. The first entry is the usual source of `{{familyId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "6e98a3c9-15b5-45dc-a15d-ef51855b274f",
							"name": "Family list",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"name\": \"Ada's Family\",\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "390f956c-9abe-420f-b4f9-61de66f521ab",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b110f503-cc7c-44c0-9ce3-f4d7c1feec00",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "99931e61-3636-4f97-aee9-e180d4439d21",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "e1b7e588-c68f-4106-91aa-2157b88f1b68",
					"name": "Create a family",
					"request": {
						"name": "Create a family",
						"description": {
							"content": "Creates a new family owned by the authenticated user. Returns the new family object; its `id` is captured into `{{familyId}}` by this request's post-response script, so later family-scoped requests resolve automatically.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"name\": \"Rivera Household\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "345c870b-3362-4048-a252-6a7cf48393e7",
							"name": "Family created",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"name\": \"Ada's Family\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "56808b70-d965-49ec-93d6-0f0df1f72f15",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fbdac688-773c-4da8-8355-bd379c355b52",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "73524d8d-ebfe-4c71-843b-f558a6aeb95a",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8fe83f1d-8814-4306-93f5-2c533b15d2b4",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "885f9369-5bc1-44c3-ac81-ea733f8f7792",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('familyId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "cbf4480d-6d10-4dd1-9c32-d111e630111e",
					"name": "Get family",
					"request": {
						"name": "Get family",
						"description": {
							"content": "Fetches a single family by id, including members and child counts. Returns `403 not a member of this family` if the caller does not belong to `{{familyId}}` — run **Setup → One-step onboarding** or **Create a family** first so the id points at a family your session owns.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "fe1ffdc8-7646-4c73-affe-2f64c3a20d61",
							"name": "Family details",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"name\": \"Ada's Family\",\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a4f1b00b-4e0f-4c77-bd7e-d62e6edc954e",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8534cb78-6c3f-4f52-b92d-98bbca1f5834",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "177a63dd-0f33-4fde-bf02-fe58343c4929",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "da50429d-d3ff-4ec9-98e1-3266df84b194",
							"name": "Family not found",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "c0d9225b-6f44-4965-836b-d1fdfb441de7",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "dfd6b171-d6fc-4a86-8a51-59176021c25c",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "003c564d-d0d8-40d4-9bdf-646819f7c008",
					"name": "Update family",
					"request": {
						"name": "Update family",
						"description": {
							"content": "Updates a family's mutable fields (e.g. `name`). Restricted to members with an owner or parent role. Returns the updated family.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PUT",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"name\": \"Rivera Household\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "f9457980-7ecf-4087-aa65-d11325e44d55",
							"name": "Updated",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"name\": \"Ada's Family\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f6e64a35-98c6-4be8-adf5-29a2453412ff",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c0b0a866-6d7d-4f3d-987d-75d089065272",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2a6bf177-7f7e-4c92-a7ad-bbc14f96950c",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0d19c275-427c-4907-9596-42025b746825",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "573354cc-8ff4-45c7-9bee-357f362e68d1",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6b39e7b7-92bf-4ef5-b20c-607df5d27aee",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "28d60633-afc9-487c-91e0-204be2f26add",
					"name": "Delete family",
					"request": {
						"name": "Delete family",
						"description": {
							"content": "Permanently deletes a family and cascades to its children, policies, and rules. Owner-only and irreversible — the sandbox is the safe place to exercise it.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "0f3f4778-532b-4482-94b8-1de94c790c3e",
							"name": "Deleted",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "0e708b6f-7dee-46f5-bd72-13d9664afabe",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "45218673-22ef-45c6-8944-7d6fb7cecdba",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "915bba4e-71b3-4386-ab05-53950cea7fc6",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "412b854f-e0a3-43c8-a1d7-aa6e80472429",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3dad033b-96d7-4ea5-b4a0-4953ab43af18",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6fe0c86b-3593-4db9-af13-0ee2db70d404",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "8b50a82a-fcaf-4265-870e-2cceaa7ba6ea",
					"name": "List family members",
					"request": {
						"name": "List family members",
						"description": {
							"content": "List all members of a family with their roles (owner, parent, guardian).",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"members"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "b816eb27-b21a-4722-99d0-2738b8ebbf93",
							"name": "Member list",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"aa03f1c7-5d29-4b60-8e14-2f7a9c0d6b85\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"user_id\": \"9f8b2a14-6c3d-4e51-8a72-1f0b9c4d2e63\",\n    \"role\": \"owner\",\n    \"joined_at\": \"2026-06-18T14:33:10Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "59a6d4c9-75ed-4a1d-8f93-7e3e54be4d23",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "745fe1af-2217-43eb-baea-f38ce36b032b",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "095207a0-faf4-49a5-8cd1-a430e95ed306",
							"name": "Not a member of this family",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "b32aa410-e847-4df6-931d-475ea63c7050",
							"name": "Family not found",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "29bd3692-78aa-41d5-9450-6c2bcab73849",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f4fb9f63-748f-40b2-b455-d4f31e2d1a7f",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "1a779f90-59b8-48da-8494-d85e077fa6b5",
					"name": "Add a member to a family",
					"request": {
						"name": "Add a member to a family",
						"description": {
							"content": "Add a user to a family with a specific role.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"members"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"user_id\": \"{{userId}}\",\n  \"role\": \"parent\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "f1e8d581-18bc-45ac-81e7-02d00b69e69a",
							"name": "Member added",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"status\": \"active\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b64389df-50a4-48a8-9610-df45b13f7191",
							"name": "Invalid request body",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "388654c2-ea8c-47dd-bfb6-355f22c50d00",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "771d3704-f3d8-4a94-ad06-08010551dc6f",
							"name": "Insufficient role to add members",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "70cb4d6f-c036-4acd-8d77-7bb22fb94016",
							"name": "Family or user not found",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "ba0aa84d-61a2-4214-ac71-96f52d317ed4",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "799bff43-8a80-454a-9ef6-a298b951a333",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1aa4e4d7-5e5f-4e11-8ada-e70b041bffd2",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"user_id\": \"2de7876c-1cc6-a6f7-f359-b9d6779465b2\",\n  \"role\": \"owner\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('memberId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "66a71af7-e934-47c3-898b-b584e9b38ff7",
					"name": "Remove a member from a family",
					"request": {
						"name": "Remove a member from a family",
						"description": {
							"content": "Removes a member from a family. Requires both `{{familyId}}` and the target `{{memberId}}` (captured when you add a member). The family owner cannot be removed.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"members",
								":memberID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								},
								{
									"disabled": false,
									"type": "any",
									"value": "{{memberId}}",
									"key": "memberID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "66336942-3eb8-45ff-a9ef-164d20750644",
							"name": "Member removed",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members",
										":memberID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{memberId}}",
											"key": "memberID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "34da796d-0fec-4d7f-882e-9b47f15868c2",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members",
										":memberID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{memberId}}",
											"key": "memberID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3212a54b-9a6a-4f98-bd2e-34af2913eeaf",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members",
										":memberID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{memberId}}",
											"key": "memberID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e0687e1d-9a2b-4195-be26-46646be1cb6e",
							"name": "Insufficient role to remove members",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members",
										":memberID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{memberId}}",
											"key": "memberID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "eb082406-be28-4185-8c2e-eec5e0688a33",
							"name": "Family or member not found",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members",
										":memberID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{memberId}}",
											"key": "memberID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "5ff09428-5dcb-477e-b438-68b82b7ed39f",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members",
										":memberID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{memberId}}",
											"key": "memberID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "254511a2-4621-44f3-a4b8-2ca181d8eb22",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"members",
										":memberID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{memberId}}",
											"key": "memberID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "42fbe8e9-c850-4774-9329-b54dd02c37c0",
			"name": "Children",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "b50acd9d-f7cc-4ec5-9dce-adcf5633ba1d",
					"name": "List children in family",
					"request": {
						"name": "List children in family",
						"description": {
							"content": "Lists all children in a family with their ids, names, and birth dates. This is the usual source of `{{childId}}` for the child-scoped requests below.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"children"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "1effe3b9-2198-4a24-8dbc-7a95c9e8cf7f",
							"name": "Children list",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"name\": \"Ada\",\n    \"birth_date\": \"2015-04-10T00:00:00Z\",\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2e2474fa-2550-489b-a180-a3b6c2c2c0a0",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5cea811a-4a9a-4ac3-9176-c918d7012a98",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "661c3af8-b90f-4dbb-b3bf-9d1486befd68",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a55ae448-02cf-4aaa-bd5a-0e6add2d5cf6",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4690494f-8558-45dc-bc8b-b77b0f8a3d39",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "10f1b4c2-5ecd-4d79-8676-39f52fed09df",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "8b8e7938-6a83-4000-8049-3f96dc443ba6",
					"name": "Add child to family",
					"request": {
						"name": "Add child to family",
						"description": {
							"content": "Adds a child to a family. Requires `name` and `birth_date` (ISO `YYYY-MM-DD`) — the birth date drives age-appropriate rule generation. Captures the new child id into `{{childId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"children"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"name\": \"Leo Rivera\",\n  \"birth_date\": \"2016-09-02\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "72d899de-ae30-453d-ac9f-08f4f055ac5e",
							"name": "Child added",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"name\": \"Ada\",\n  \"birth_date\": \"2015-04-10T00:00:00Z\",\n  \"avatar_url\": \"https://cdn.phosra.com/avatars/ada.png\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fe56bfb1-896e-4b6e-8d6c-8e2f05f59289",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fa53452a-a379-48dd-98b2-9aab4245178e",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "edcdfe7d-c3af-4e87-aa98-50488302c959",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "31146b39-5c51-4df2-bd88-c735a4ce7e3a",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7b41d901-d846-4a03-bf07-cc87d467d1fa",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4bf9ef96-ae01-42e1-9617-d7a4c408f245",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9bd143fc-2f59-4303-8e0d-df2ffd016f1d",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"children"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-12-09\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('childId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "9aa4e27d-7c97-4512-944f-ee0a89dd173d",
					"name": "Get child",
					"request": {
						"name": "Get child",
						"description": {
							"content": "Fetches a single child by id, including name, birth date, computed age, and family membership.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "e2ed5b3a-ccce-4f61-9b8d-72b79a2ee2fb",
							"name": "Child details",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"name\": \"Ada\",\n  \"birth_date\": \"2015-04-10T00:00:00Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "66dfd63a-901e-4172-9f5a-ff9b2c7d5691",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b2948c02-be1c-4602-aa1b-c0937d9f7c0b",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ad614a5f-5955-4db1-9ed1-f9b699a63766",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5f9167e3-f9e3-4067-8ec6-7fee4cf0d00f",
							"name": "Child not found",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "1617e96a-dd46-4d3c-a9a8-d2be4f306841",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4f57b1d1-097f-42f6-ac1a-5ef6ef593784",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "dd54a953-83c6-4c28-a149-58722cf7fec0",
					"name": "Update child",
					"request": {
						"name": "Update child",
						"description": {
							"content": "Updates a child's mutable fields (`name`, `birth_date`). Changing the birth date can shift which age-based rules apply on the next generation.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PUT",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"name\": \"Leo Rivera\",\n  \"birth_date\": \"2016-09-02\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "ffd8e864-592f-4932-b08c-f1adb187ab1e",
							"name": "Updated",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-06-04\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"name\": \"Ada\",\n  \"birth_date\": \"2015-04-10T00:00:00Z\",\n  \"avatar_url\": \"https://cdn.phosra.com/avatars/ada.png\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e3c2b38d-5c0e-458f-be4f-07ca6c79e938",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-06-04\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fcc36c0d-879b-4bec-89c4-6268f418da30",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-06-04\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "be7378c7-7a28-41f3-a7dc-f1f807dcc4cd",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-06-04\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "156c0862-9da1-40f1-b9d5-195f7adbedc4",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-06-04\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "049b03af-0de5-4279-a922-0d4e6370f0a0",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-06-04\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9d9cae0a-4268-4361-80fc-0cc4799373b4",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"birth_date\": \"1974-06-04\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "e8f3803b-38ca-41e6-941d-f607e9cc9aa0",
					"name": "Delete child",
					"request": {
						"name": "Delete child",
						"description": {
							"content": "Permanently deletes a child along with their policies, rules, and enforcement history. Irreversible.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "d19cdfe0-40b8-4e98-8d4c-6d591a9f519f",
							"name": "Deleted",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "0740827a-7111-4c4e-a6ef-2e1e849514d9",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4d719fe1-cc2f-486a-aa9f-4f5289483ceb",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f9d9c10d-6044-4491-a165-b71541c41db3",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "05010141-a0e2-4173-89ec-74c63d3275fb",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6511422a-d689-4b30-9a68-2e4e08b12235",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "360236f7-45ef-4d13-a4c9-955ece352b61",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "ffc32d07-2953-418e-8cda-5608f0c9db6e",
					"name": "Get age-appropriate ratings for child",
					"request": {
						"name": "Get age-appropriate ratings for child",
						"description": {
							"content": "Returns the age-appropriate content ratings for a child across every rating system (MPAA, TV, ESRB, PEGI, CSM), derived from the child's current age. No request body.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"age-ratings"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "42ffad0d-d9f9-4b41-adbb-8f085ee2d5ba",
							"name": "Age ratings",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"age-ratings"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"age\": 11,\n  \"ratings\": {\n    \"csm\": {\n      \"id\": \"00000000-0000-0000-0005-000000000004\",\n      \"system_id\": \"csm\",\n      \"code\": \"10+\",\n      \"name\": \"Age 10+\",\n      \"description\": \"Appropriate for ages 10 and up\",\n      \"min_age\": 10,\n      \"display_order\": 4,\n      \"restrictive_idx\": 4\n    },\n    \"esrb\": {\n      \"id\": \"00000000-0000-0000-0003-000000000002\",\n      \"system_id\": \"esrb\",\n      \"code\": \"E10+\",\n      \"name\": \"Everyone 10+\",\n      \"description\": \"Content generally suitable for ages 10 and up\",\n      \"min_age\": 10,\n      \"display_order\": 2,\n      \"restrictive_idx\": 2\n    },\n    \"mpaa\": {\n      \"id\": \"00000000-0000-0000-0001-000000000002\",\n      \"system_id\": \"mpaa\",\n      \"code\": \"PG\",\n      \"name\": \"Parental Guidance\",\n      \"description\": \"Some material may not be suitable for children\",\n      \"min_age\": 0,\n      \"display_order\": 2,\n      \"restrictive_idx\": 2\n    },\n    \"pegi\": {\n      \"id\": \"00000000-0000-0000-0004-000000000002\",\n      \"system_id\": \"pegi\",\n      \"code\": \"7\",\n      \"name\": \"PEGI 7\",\n      \"description\": \"Suitable for ages 7 and older\",\n      \"min_age\": 7,\n      \"display_order\": 2,\n      \"restrictive_idx\": 2\n    },\n    \"tvpg\": {\n      \"id\": \"00000000-0000-0000-0002-000000000004\",\n      \"system_id\": \"tvpg\",\n      \"code\": \"TV-PG\",\n      \"name\": \"Parental Guidance Suggested\",\n      \"description\": \"May contain some material parents find unsuitable\",\n      \"min_age\": 0,\n      \"display_order\": 4,\n      \"restrictive_idx\": 2\n    }\n  }\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5d5766d9-bd7a-46cf-a765-f1f9611ac650",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"age-ratings"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "58371c27-a161-4648-a49e-c1f866cd6f08",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"age-ratings"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "38a553be-86c8-4b5d-92ee-c179036ffcec",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"age-ratings"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0bc4c1a0-8a04-45d3-8d45-1aeb85999fa3",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"age-ratings"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6cd01b80-0c63-4f40-adc6-7f072a609975",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"age-ratings"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "84b4d00e-7245-48c3-9cac-d50cef2b0b42",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"age-ratings"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "72b1a6b4-6536-4459-9248-76b53d772816",
			"name": "Policies",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "92e5ca14-1ef1-4a78-b69c-1cbdd64d1247",
					"name": "List child's policies",
					"request": {
						"name": "List child's policies",
						"description": {
							"content": "Lists all policies attached to a child, with each policy's status (`draft`, `active`, `paused`) and priority.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"policies"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "f0cd6998-5664-4c2e-82a0-3fa09a291bed",
							"name": "Policy list",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n    \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"name\": \"Ada's Protection Policy\",\n    \"status\": \"active\",\n    \"priority\": 0,\n    \"version\": 42,\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6ae0553f-4fcc-4ce8-968f-bda177f08c76",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "83a524d5-585e-42f9-bb65-4fcba15a6e47",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ea502f6e-18a1-4155-8214-b5a98247e080",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "da32604f-b89d-4412-a803-17f7cfe9a8c1",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ad500d5d-bf1c-48b0-b303-45dbfc2b269b",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f3584429-b51f-45f8-afbf-b5a3f24cacb4",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "d150ab5a-410c-4abc-a699-547b705a20d5",
					"name": "Create policy for child",
					"request": {
						"name": "Create policy for child",
						"description": {
							"content": "Create a new policy for a child. Policies start in 'draft' status.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"policies"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"name\": \"School Day\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "298e4062-9ad8-4b80-9189-3ced62336ce3",
							"name": "Policy created",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"name\": \"Ada's Protection Policy\",\n  \"status\": \"active\",\n  \"priority\": 0,\n  \"version\": 1,\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a296f413-f787-4a48-b9b5-dac7052f0f18",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f60ad140-3b93-428d-b8ba-aac1ec8147e0",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9edeee7f-3624-4fba-8662-28bbdcf0e76a",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4644f7e7-2771-492a-8805-4e2f3576ca98",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7123d4e4-bd3d-4da6-a608-bff8ed3e2d68",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4b0d0664-e599-4dc9-8ffe-d3cac5b601b9",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2cd9ff0c-3cee-4ff2-8524-5e7f18d0b014",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"policies"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('policyId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "89d7be92-69dc-4305-a884-4907f0a5ceda",
					"name": "Get policy details",
					"request": {
						"name": "Get policy details",
						"description": {
							"content": "Fetches a single policy by id, including its status, priority, and rule count.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "b6b21f0a-05c7-40b3-b89b-cd92953133a4",
							"name": "Policy details",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"name\": \"Ada's Protection Policy\",\n  \"status\": \"active\",\n  \"priority\": 0,\n  \"version\": 42,\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e1e16a9b-c86d-4a96-b742-677632dfb492",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cc52580d-ca4e-4af5-8abe-b7df6141b17f",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e2f89700-bb4e-4547-9e5d-d4a9f051505e",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "10fc4a45-616c-4468-892a-056d6417542b",
							"name": "Policy not found",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "4f021350-df66-4eab-8ee2-721b2b8d8289",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e10d9d64-6185-48fd-80f3-65ad1d3acaf6",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "102ec39c-f593-4780-ba62-7adf13a2bcdd",
					"name": "Update a policy's name or priority",
					"request": {
						"name": "Update a policy's name or priority",
						"description": {
							"content": "Updates a policy's `name` or `priority`. This does not change rules — use the **Policy Rules** endpoints for that.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PUT",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"name\": \"School Day\",\n  \"priority\": 10\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "59f7392d-5ee2-4ad9-b880-9c1dba0a5468",
							"name": "Policy updated",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"priority\": 285\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"name\": \"Ada's Protection Policy\",\n  \"status\": \"active\",\n  \"priority\": 0,\n  \"version\": 1,\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "65abebc6-8e23-41c9-bd44-4e0de2c8bb91",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"priority\": 285\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "53d219c5-3831-4456-b84a-56af23297f19",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"priority\": 285\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f3e96e59-2bb1-43c7-85d7-8cc2624c9e89",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"priority\": 285\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "525da494-a057-4092-a1c5-3a5bd21a6e7d",
							"name": "Policy not found",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"priority\": 285\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "6c7ba262-0713-4444-a0ad-ab529c84f115",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"priority\": 285\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0f5e042a-4d94-47f4-9ec1-8f7b3383d115",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"name\": \"string\",\n  \"priority\": 285\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "9220f340-06ac-49bb-ad36-2e3b7f115b1b",
					"name": "Delete a policy and all its rules",
					"request": {
						"name": "Delete a policy and all its rules",
						"description": {
							"content": "Deletes a policy and every rule attached to it. Irreversible; any enforcement that referenced it stops.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "d48359fe-d87d-4e7b-b1cb-33ea2fb1981d",
							"name": "Deleted",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "66226d38-604a-4a8d-a1b0-99d2e67baa5b",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "49e82a79-ef6f-4495-869c-a32951259280",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "598fc42f-086e-4b02-a7a9-6d5f1bffdc42",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "386f62a2-d834-4207-b87e-9c19a362e394",
							"name": "Policy not found",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "3c8db093-4a7e-4c40-bf5b-475514a15425",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ab057cf9-6eb1-4937-8809-af3d851175f5",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "967a52ca-1787-429d-a054-d3f67d3ded8e",
					"name": "Activate policy",
					"request": {
						"name": "Activate policy",
						"description": {
							"content": "Transitions a policy to `active` so its rules become eligible for enforcement. Safe to call on an already-active policy.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID",
								"activate"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "daf80dbf-6557-4a8d-9a90-8b4dd2167195",
							"name": "Policy activated",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"activate"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"name\": \"Ada's Protection Policy\",\n  \"status\": \"active\",\n  \"priority\": 0,\n  \"version\": 1,\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1c703ca9-b403-4982-8e5e-273fe5fa204e",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"activate"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7c20d404-b463-477b-acfd-e939c43a7df9",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"activate"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "80454335-c9ce-45f3-ac65-964de2eed566",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"activate"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "24d76f36-de79-48cc-9c7f-f2eeb99afef7",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"activate"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d5c89ca0-ef9d-4e13-b89c-31544d158b73",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"activate"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7d7ad403-b7b3-476f-b1ad-f8dc81686cac",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"activate"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "157a6a20-c07f-4dfc-8c31-baff71e92d2b",
					"name": "Pause policy",
					"request": {
						"name": "Pause policy",
						"description": {
							"content": "Transitions a policy to `paused`, suspending enforcement without deleting any rules. Re-enable it with **Activate policy**.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID",
								"pause"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "9646ee55-7cb2-4320-be26-c263294480c5",
							"name": "Policy paused",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"pause"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"name\": \"Ada's Protection Policy\",\n  \"status\": \"active\",\n  \"priority\": 0,\n  \"version\": 1,\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0831dc31-0231-416a-af3c-98298f43c0aa",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"pause"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4dd85c4e-3baf-4e8c-b58d-38a9e1de9ff6",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"pause"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ce14ee63-8b05-41e2-95ad-c6ba0fd73f78",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"pause"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "86d212d8-fa2f-401d-b524-793b5cae8cb1",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"pause"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5d223619-ca43-49a3-bebb-ce74979665ef",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"pause"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "49a59386-fd36-41ce-8b1c-0945d71b8aef",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"pause"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "ac7365e5-5760-4c80-a089-5267e8230527",
					"name": "Auto-generate rules based on child's age",
					"request": {
						"name": "Auto-generate rules based on child's age",
						"description": {
							"content": "Populates the policy with a starter rule set chosen for the child's current age — a fast way to bootstrap a sensible default instead of hand-authoring every rule.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID",
								"generate-from-age"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "0410f938-84aa-4837-8271-052a3590cb80",
							"name": "Rules generated",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"generate-from-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"3d92f6b1-8e04-4a7c-b1d5-6f2093c8ae41\",\n    \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n    \"category\": \"rating_age_gate\",\n    \"enabled\": true,\n    \"config\": {},\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "97295139-9513-41e7-a578-0a43358e6bef",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"generate-from-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5cc5af6c-fa4e-404d-8ceb-829ed1778f53",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"generate-from-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "23707d3b-a967-4d8b-8815-effd977f4d9f",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"generate-from-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b2258a98-4895-45ec-8f56-9621a963f67e",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"generate-from-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "35344eaf-6af0-4d4a-bea6-a9981ee82afd",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"generate-from-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a2230605-abda-40c1-a5c5-1d05d8522de5",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"generate-from-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "cfc456dd-18eb-4d1f-9baa-792ba947f2e5",
			"name": "Policy Rules",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "cf2ef23e-0092-489c-bb51-471b87f91338",
					"name": "List policy rules",
					"request": {
						"name": "List policy rules",
						"description": {
							"content": "Lists every rule on a policy — OCSS `category`, `enabled` flag, and `config`. This is the read side of the Create / Bulk-upsert rule endpoints.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID",
								"rules"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "d775c0f5-ad17-4cdb-91e4-4d4c344e2153",
							"name": "Rule list",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"d1aa00db-2dca-4e73-a8d5-63200ff56fc1\",\n    \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n    \"category\": \"addictive_design_control\",\n    \"enabled\": true,\n    \"config\": {\n      \"disable_streaks\": true,\n      \"disable_autoplay\": true,\n      \"disable_like_counts\": true,\n      \"disable_daily_rewards\": true,\n      \"disable_infinite_scroll\": true\n    },\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  },\n  {\n    \"id\": \"851d8344-cc17-458e-9c1b-1a4633267e1b\",\n    \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n    \"category\": \"age_gate\",\n    \"enabled\": true,\n    \"config\": {\n      \"enabled\": true,\n      \"min_age\": 13\n    },\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "32253fb4-6a0e-4ce8-b1cb-306ab7b50b72",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c022c061-9d56-4b61-8275-f0233bebebc3",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2f49fb52-b87c-4de1-a206-88bd26dc120c",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "daa5e421-fcf2-4774-9516-ef2f0546474d",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "43172219-59f7-4da6-9017-b2ac886793af",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "dc1a4a23-58be-4055-93e3-39dbacf4182a",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "63b5824c-0861-4c64-9a71-4c497230dfb5",
					"name": "Create rule",
					"request": {
						"name": "Create rule",
						"description": {
							"content": "Adds a single rule to a policy. The body requires an OCSS `category`, an `enabled` flag, and a category-specific `config` object. Captures the new rule id into `{{ruleId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID",
								"rules"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"category\": \"content_rating\",\n  \"enabled\": true,\n  \"config\": {\n    \"max_ratings\": {\n      \"mpaa\": \"PG-13\",\n      \"esrb\": \"T\",\n      \"tvpg\": \"TV-14\"\n    }\n  }\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "a7dd085b-e00b-4ea8-9fec-acf575c0e376",
							"name": "Rule created",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"3d92f6b1-8e04-4a7c-b1d5-6f2093c8ae41\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"category\": \"rating_age_gate\",\n  \"enabled\": true,\n  \"config\": {},\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2683deaa-3239-44e8-bdf8-269910a73eb4",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e9a286dd-926c-4fdc-bc92-f6cc7a9075b4",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "587849ae-6ccc-4b4f-b54e-7585d43f9df7",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "df043727-f1ce-454d-a040-6acef58121c4",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b1f89000-1ee5-4928-abc8-ab61f20e5b4b",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9dc53491-296f-4963-be96-58624e08e6ef",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8441c990-a098-4aff-8c32-8c178429fa44",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"ai_toy_safety_cert\",\n  \"enabled\": false,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('ruleId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "66c31417-f3c2-4af4-ac9a-133a5d9fd6c8",
					"name": "Bulk upsert rules",
					"request": {
						"name": "Bulk upsert rules",
						"description": {
							"content": "Create or update multiple rules at once for a policy. Each rule in the array must include category, enabled, and config.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"policies",
								":policyID",
								"rules",
								"bulk"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{policyId}}",
									"key": "policyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PUT",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"time_daily_limit\",\n      \"enabled\": true,\n      \"config\": {\n        \"daily_minutes\": 120\n      }\n    },\n    {\n      \"category\": \"notification_curfew\",\n      \"enabled\": true,\n      \"config\": {\n        \"start\": \"22:00\",\n        \"end\": \"06:00\"\n      }\n    }\n  ]\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "704763ee-f780-4dad-84ba-dfb5e5113bfd",
							"name": "Rules upserted",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules",
										"bulk"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"purchase_approval\",\n      \"enabled\": true,\n      \"config\": {}\n    },\n    {\n      \"category\": \"crisis_resource_surface\",\n      \"enabled\": true,\n      \"config\": {}\n    }\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"3d92f6b1-8e04-4a7c-b1d5-6f2093c8ae41\",\n    \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n    \"category\": \"rating_age_gate\",\n    \"enabled\": true,\n    \"config\": {},\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0dca1183-883c-430a-96ae-dba947363583",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules",
										"bulk"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"purchase_approval\",\n      \"enabled\": true,\n      \"config\": {}\n    },\n    {\n      \"category\": \"crisis_resource_surface\",\n      \"enabled\": true,\n      \"config\": {}\n    }\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e72a327f-9bc9-43f6-9ecf-ac86bb05489a",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules",
										"bulk"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"purchase_approval\",\n      \"enabled\": true,\n      \"config\": {}\n    },\n    {\n      \"category\": \"crisis_resource_surface\",\n      \"enabled\": true,\n      \"config\": {}\n    }\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c89d1c8f-63ab-4adf-8669-6eeac9c689f9",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules",
										"bulk"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"purchase_approval\",\n      \"enabled\": true,\n      \"config\": {}\n    },\n    {\n      \"category\": \"crisis_resource_surface\",\n      \"enabled\": true,\n      \"config\": {}\n    }\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "24089076-aa28-41e6-a002-d56670d4ea10",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules",
										"bulk"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"purchase_approval\",\n      \"enabled\": true,\n      \"config\": {}\n    },\n    {\n      \"category\": \"crisis_resource_surface\",\n      \"enabled\": true,\n      \"config\": {}\n    }\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "05c349af-e858-45c5-9e5f-4120c46dd88a",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules",
										"bulk"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"purchase_approval\",\n      \"enabled\": true,\n      \"config\": {}\n    },\n    {\n      \"category\": \"crisis_resource_surface\",\n      \"enabled\": true,\n      \"config\": {}\n    }\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a3babc3c-6ddf-4c6f-8455-117f8810e6db",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"policies",
										":policyID",
										"rules",
										"bulk"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{policyId}}",
											"key": "policyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"rules\": [\n    {\n      \"category\": \"purchase_approval\",\n      \"enabled\": true,\n      \"config\": {}\n    },\n    {\n      \"category\": \"crisis_resource_surface\",\n      \"enabled\": true,\n      \"config\": {}\n    }\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "fcaa5725-2df0-4849-8e6b-21e7146f4b1b",
					"name": "Update a rule's enabled status or config",
					"request": {
						"name": "Update a rule's enabled status or config",
						"description": {
							"content": "Updates one rule's `enabled` flag or `config` in place. Requires `{{ruleId}}` (captured by **Create rule**).",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"rules",
								":ruleID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{ruleId}}",
									"key": "ruleID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PUT",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"enabled\": true,\n  \"config\": {\n    \"daily_minutes\": 90\n  }\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "290e44bc-8552-415c-816a-505e8a15b246",
							"name": "Rule updated",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"enabled\": true,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"3d92f6b1-8e04-4a7c-b1d5-6f2093c8ae41\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"category\": \"rating_age_gate\",\n  \"enabled\": true,\n  \"config\": {},\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "94838822-3413-4347-b871-1bef4834aeaa",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"enabled\": true,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "44633816-46c4-48d3-b2dc-1cc6aea36331",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"enabled\": true,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d11d99f8-34b6-43de-bc56-5d92490615bc",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"enabled\": true,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "92c9a7bf-35d1-49f2-9e0d-26139679c1f2",
							"name": "Rule not found",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"enabled\": true,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "c6762e6d-1706-4263-8c98-923b58725dce",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"enabled\": true,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "12786d2b-8b06-41f0-8968-fb04c032da8a",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"enabled\": true,\n  \"config\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "5d54e863-9a39-4e80-96b9-107b3ef8f9c6",
					"name": "Delete a rule",
					"request": {
						"name": "Delete a rule",
						"description": {
							"content": "Deletes a single rule from its policy. Requires `{{ruleId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"rules",
								":ruleID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{ruleId}}",
									"key": "ruleID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "ddbe17eb-9eed-48c9-9481-28554ecad788",
							"name": "Rule deleted",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "2e73fd46-941d-4789-9119-044c6357d0c7",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e3817d86-337c-4cec-9f91-94c8fd18897b",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6bbd6d30-f222-48f6-9ce0-535971ff6b68",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ecbb9b13-6708-4d4f-86c3-0be3040d6c99",
							"name": "Rule not found",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "0acabbbf-b76f-4141-93e9-f07f3c29c8a6",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d6f172ce-f8bf-42f7-ab95-7895f7a4d4ed",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"rules",
										":ruleID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ruleId}}",
											"key": "ruleID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "7738fc3b-3b8c-4cd3-a52f-4e1578f51f1b",
			"name": "Platforms",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "b123f40f-4edd-4005-a762-6e81925ca889",
					"name": "List all platforms",
					"request": {
						"name": "List all platforms",
						"description": {
							"content": "List all platforms Phosra can integrate with, including category, compliance tier, auth type, and capabilities.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"platforms"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "351e841d-01cf-44dc-90d8-72a919087490",
							"name": "Platform list",
							"originalRequest": {
								"url": {
									"path": [
										"platforms"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"fire_tablet\",\n    \"name\": \"Amazon Fire Tablet\",\n    \"category\": \"device\",\n    \"tier\": \"pending\",\n    \"description\": \"Amazon Fire Tablet Kids parental controls\",\n    \"icon_url\": \"\",\n    \"auth_type\": \"manual\",\n    \"enabled\": true,\n    \"capabilities\": [\n      \"content_rating\",\n      \"time_limit\",\n      \"scheduled_hours\",\n      \"web_filtering\",\n      \"safe_search\",\n      \"app_control\",\n      \"purchase_control\"\n    ],\n    \"enforcement_mode\": \"manual_attested\",\n    \"rule_support\": {\n      \"addictive_design_control\": \"unsupported\",\n      \"addictive_pattern_block\": \"unsupported\",\n      \"adult_site_av_required\": \"unsupported\",\n      \"age_appropriate_profile_mode\": \"unsupported\",\n      \"age_gate\": \"unsupported\",\n      \"age_signal_broadcast\": \"unsupported\",\n      \"ai_chatbot_age_assertion\": \"unsupported\",\n      \"ai_chatbot_tier_gate\": \"unsupported\",\n      \"ai_companion_block\": \"unsupported\",\n      \"ai_data_responsibility_rating_threshold\": \"unsupported\",\n      \"ai_minor_interaction\": \"unsupported\",\n      \"ai_no_csam_generation\": \"unsupported\",\n      \"ai_no_engagement_dark_patterns\": \"unsupported\",\n      \"ai_no_personhood_deception\": \"unsupported\",\n      \"ai_no_self_harm_promotion\": \"unsupported\",\n      \"ai_no_simulated_companionship\": \"unsupported\",\n      \"ai_no_unsupervised_therapy\": \"unsupported\",\n      \"ai_product_classification_gate\": \"unsupported\",\n      \"ai_safety_rating_threshold\": \"unsupported\",\n      \"ai_synthetic_media_disclosure\": \"unsupported\",\n      \"ai_toy_safety_cert\": \"unsupported\",\n      \"ai_training_data_opt_out\": \"unsupported\",\n      \"ai_transparency_rating_threshold\": \"unsupported\",\n      \"algo_feed_control\": \"unsupported\",\n      \"algorithmic_audit\": \"unsupported\",\n      \"app_install_block\": \"unsupported\",\n      \"app_store_age_attestation\": \"unsupported\",\n      \"autoplay_disable\": \"unsupported\",\n      \"cipa_filter_attestation\": \"unsupported\",\n      \"commercial_data_ban\": \"unsupported\",\n      \"commercial_pressure_threshold\": \"unsupported\",\n      \"content_allow_title\": \"guided\",\n      \"content_allowlist_mode\": \"guided\",\n      \"content_block_title\": \"guided\",\n      \"content_descriptor_block\": \"guided\",\n      \"content_rating\": \"guided\",\n      \"crisis_resource_surface\": \"unsupported\",\n      \"csam_reporting\": \"unsupported\",\n      \"data_deletion_request\": \"unsupported\",\n      \"data_minimization_enforce\": \"unsupported\",\n      \"digital_literacy_curriculum_link\": \"unsupported\",\n      \"dm_feature_disable\": \"unsupported\",\n      \"dm_restriction\": \"unsupported\",\n      \"dpia_request_generator\": \"unsupported\",\n      \"dumbphone_migration_mode\": \"unsupported\",\n      \"educational_credit\": \"unsupported\",\n      \"ephemeral_message_disable\": \"unsupported\",\n      \"esafety_commission_reporting\": \"unsupported\",\n      \"firearm_content_block\": \"unsupported\",\n      \"flagged_content_digest\": \"unsupported\",\n      \"gambling_mechanics_block\": \"unsupported\",\n      \"geolocation_opt_in\": \"unsupported\",\n      \"geolocation_precision_cap\": \"unsupported\",\n      \"hard_id_verification_escalation\": \"unsupported\",\n      \"harm_report_intake\": \"unsupported\",\n      \"image_content_monitoring\": \"unsupported\",\n      \"image_rights_minor\": \"unsupported\",\n      \"infinite_scroll_block\": \"unsupported\",\n      \"library_filter_compliance\": \"unsupported\",\n      \"message_content_monitoring\": \"unsupported\",\n      \"minor_data_sale_audit_log\": \"unsupported\",\n      \"monitoring_activity\": \"unsupported\",\n      \"monitoring_alerts\": \"unsupported\",\n      \"named_contact_block\": \"unsupported\",\n      \"ncii_takedown\": \"unsupported\",\n      \"not_for_minors_block\": \"unsupported\",\n      \"notification_curfew\": \"unsupported\",\n      \"os_age_signal_ingest\": \"unsupported\",\n      \"parental_attestation_cert\": \"unsupported\",\n      \"parental_consent_gate\": \"unsupported\",\n      \"parental_event_notification\": \"unsupported\",\n      \"phone_free_school_hours\": \"unsupported\",\n      \"platform_liability_evidence_capture\": \"unsupported\",\n      \"presence_status_hide\": \"unsupported\",\n      \"privacy_account_creation\": \"unsupported\",\n      \"privacy_data_sharing\": \"unsupported\",\n      \"privacy_location\": \"unsupported\",\n      \"privacy_profile_visibility\": \"unsupported\",\n      \"privacy_rating_dimension_gate\": \"unsupported\",\n      \"privacy_rating_score_threshold\": \"unsupported\",\n      \"privacy_rating_tier_gate\": \"unsupported\",\n      \"privacy_seal_required\": \"unsupported\",\n      \"profanity_threshold\": \"unsupported\",\n      \"prosocial_weight\": \"unsupported\",\n      \"purchase_approval\": \"guided\",\n      \"purchase_block_iap\": \"guided\",\n      \"purchase_spending_cap\": \"guided\",\n      \"rating_age_gate\": \"unsupported\",\n      \"recognized_seal_allowlist\": \"unsupported\",\n      \"representation_weight\": \"unsupported\",\n      \"role_model_weight\": \"unsupported\",\n      \"school_alert_routing\": \"unsupported\",\n      \"screen_time_report\": \"unsupported\",\n      \"search_query_monitoring\": \"unsupported\",\n      \"sexual_content_threshold\": \"unsupported\",\n      \"social_account_content_monitoring\": \"unsupported\",\n      \"social_chat_control\": \"unsupported\",\n      \"social_contacts\": \"unsupported\",\n      \"social_media_min_age\": \"unsupported\",\n      \"social_media_warning_label_render\": \"unsupported\",\n      \"social_multiplayer\": \"unsupported\",\n      \"stranger_dm_block\": \"unsupported\",\n      \"stranger_outreach_friction\": \"unsupported\",\n      \"streaming_age_rating_enforce\": \"unsupported\",\n      \"student_privacy_school_mode\": \"unsupported\",\n      \"substance_content_threshold\": \"unsupported\",\n      \"targeted_ad_block\": \"unsupported\",\n      \"teen_minimum_age_16_gate\": \"unsupported\",\n      \"third_party_tracker_block\": \"unsupported\",\n      \"time_daily_limit\": \"guided\",\n      \"time_downtime\": \"guided\",\n      \"time_per_app_limit\": \"guided\",\n      \"time_scheduled_hours\": \"guided\",\n      \"ugc_world_age_gate\": \"unsupported\",\n      \"unrated_privacy_default\": \"unsupported\",\n      \"usage_timer_notification\": \"unsupported\",\n      \"violence_threshold\": \"unsupported\",\n      \"voice_chat_minor_limit\": \"unsupported\",\n      \"web_category_block\": \"guided\",\n      \"web_custom_allowlist\": \"guided\",\n      \"web_custom_blocklist\": \"guided\",\n      \"web_filter_level\": \"guided\",\n      \"web_safesearch\": \"guided\"\n    }\n  },\n  {\n    \"id\": \"fire_tv\",\n    \"name\": \"Amazon Fire TV Stick\",\n    \"category\": \"device\",\n    \"tier\": \"pending\",\n    \"description\": \"Amazon Fire TV parental controls\",\n    \"icon_url\": \"\",\n    \"auth_type\": \"manual\",\n    \"enabled\": true,\n    \"capabilities\": [\n      \"content_rating\",\n      \"app_control\",\n      \"purchase_control\"\n    ],\n    \"enforcement_mode\": \"manual_attested\",\n    \"rule_support\": {\n      \"addictive_design_control\": \"unsupported\",\n      \"addictive_pattern_block\": \"unsupported\",\n      \"adult_site_av_required\": \"unsupported\",\n      \"age_appropriate_profile_mode\": \"unsupported\",\n      \"age_gate\": \"unsupported\",\n      \"age_signal_broadcast\": \"unsupported\",\n      \"ai_chatbot_age_assertion\": \"unsupported\",\n      \"ai_chatbot_tier_gate\": \"unsupported\",\n      \"ai_companion_block\": \"unsupported\",\n      \"ai_data_responsibility_rating_threshold\": \"unsupported\",\n      \"ai_minor_interaction\": \"unsupported\",\n      \"ai_no_csam_generation\": \"unsupported\",\n      \"ai_no_engagement_dark_patterns\": \"unsupported\",\n      \"ai_no_personhood_deception\": \"unsupported\",\n      \"ai_no_self_harm_promotion\": \"unsupported\",\n      \"ai_no_simulated_companionship\": \"unsupported\",\n      \"ai_no_unsupervised_therapy\": \"unsupported\",\n      \"ai_product_classification_gate\": \"unsupported\",\n      \"ai_safety_rating_threshold\": \"unsupported\",\n      \"ai_synthetic_media_disclosure\": \"unsupported\",\n      \"ai_toy_safety_cert\": \"unsupported\",\n      \"ai_training_data_opt_out\": \"unsupported\",\n      \"ai_transparency_rating_threshold\": \"unsupported\",\n      \"algo_feed_control\": \"unsupported\",\n      \"algorithmic_audit\": \"unsupported\",\n      \"app_install_block\": \"unsupported\",\n      \"app_store_age_attestation\": \"unsupported\",\n      \"autoplay_disable\": \"unsupported\",\n      \"cipa_filter_attestation\": \"unsupported\",\n      \"commercial_data_ban\": \"unsupported\",\n      \"commercial_pressure_threshold\": \"unsupported\",\n      \"content_allow_title\": \"guided\",\n      \"content_allowlist_mode\": \"guided\",\n      \"content_block_title\": \"guided\",\n      \"content_descriptor_block\": \"guided\",\n      \"content_rating\": \"guided\",\n      \"crisis_resource_surface\": \"unsupported\",\n      \"csam_reporting\": \"unsupported\",\n      \"data_deletion_request\": \"unsupported\",\n      \"data_minimization_enforce\": \"unsupported\",\n      \"digital_literacy_curriculum_link\": \"unsupported\",\n      \"dm_feature_disable\": \"unsupported\",\n      \"dm_restriction\": \"unsupported\",\n      \"dpia_request_generator\": \"unsupported\",\n      \"dumbphone_migration_mode\": \"unsupported\",\n      \"educational_credit\": \"unsupported\",\n      \"ephemeral_message_disable\": \"unsupported\",\n      \"esafety_commission_reporting\": \"unsupported\",\n      \"firearm_content_block\": \"unsupported\",\n      \"flagged_content_digest\": \"unsupported\",\n      \"gambling_mechanics_block\": \"unsupported\",\n      \"geolocation_opt_in\": \"unsupported\",\n      \"geolocation_precision_cap\": \"unsupported\",\n      \"hard_id_verification_escalation\": \"unsupported\",\n      \"harm_report_intake\": \"unsupported\",\n      \"image_content_monitoring\": \"unsupported\",\n      \"image_rights_minor\": \"unsupported\",\n      \"infinite_scroll_block\": \"unsupported\",\n      \"library_filter_compliance\": \"unsupported\",\n      \"message_content_monitoring\": \"unsupported\",\n      \"minor_data_sale_audit_log\": \"unsupported\",\n      \"monitoring_activity\": \"unsupported\",\n      \"monitoring_alerts\": \"unsupported\",\n      \"named_contact_block\": \"unsupported\",\n      \"ncii_takedown\": \"unsupported\",\n      \"not_for_minors_block\": \"unsupported\",\n      \"notification_curfew\": \"unsupported\",\n      \"os_age_signal_ingest\": \"unsupported\",\n      \"parental_attestation_cert\": \"unsupported\",\n      \"parental_consent_gate\": \"unsupported\",\n      \"parental_event_notification\": \"unsupported\",\n      \"phone_free_school_hours\": \"unsupported\",\n      \"platform_liability_evidence_capture\": \"unsupported\",\n      \"presence_status_hide\": \"unsupported\",\n      \"privacy_account_creation\": \"unsupported\",\n      \"privacy_data_sharing\": \"unsupported\",\n      \"privacy_location\": \"unsupported\",\n      \"privacy_profile_visibility\": \"unsupported\",\n      \"privacy_rating_dimension_gate\": \"unsupported\",\n      \"privacy_rating_score_threshold\": \"unsupported\",\n      \"privacy_rating_tier_gate\": \"unsupported\",\n      \"privacy_seal_required\": \"unsupported\",\n      \"profanity_threshold\": \"unsupported\",\n      \"prosocial_weight\": \"unsupported\",\n      \"purchase_approval\": \"guided\",\n      \"purchase_block_iap\": \"guided\",\n      \"purchase_spending_cap\": \"guided\",\n      \"rating_age_gate\": \"unsupported\",\n      \"recognized_seal_allowlist\": \"unsupported\",\n      \"representation_weight\": \"unsupported\",\n      \"role_model_weight\": \"unsupported\",\n      \"school_alert_routing\": \"unsupported\",\n      \"screen_time_report\": \"unsupported\",\n      \"search_query_monitoring\": \"unsupported\",\n      \"sexual_content_threshold\": \"unsupported\",\n      \"social_account_content_monitoring\": \"unsupported\",\n      \"social_chat_control\": \"unsupported\",\n      \"social_contacts\": \"unsupported\",\n      \"social_media_min_age\": \"unsupported\",\n      \"social_media_warning_label_render\": \"unsupported\",\n      \"social_multiplayer\": \"unsupported\",\n      \"stranger_dm_block\": \"unsupported\",\n      \"stranger_outreach_friction\": \"unsupported\",\n      \"streaming_age_rating_enforce\": \"unsupported\",\n      \"student_privacy_school_mode\": \"unsupported\",\n      \"substance_content_threshold\": \"unsupported\",\n      \"targeted_ad_block\": \"unsupported\",\n      \"teen_minimum_age_16_gate\": \"unsupported\",\n      \"third_party_tracker_block\": \"unsupported\",\n      \"time_daily_limit\": \"unsupported\",\n      \"time_downtime\": \"unsupported\",\n      \"time_per_app_limit\": \"unsupported\",\n      \"time_scheduled_hours\": \"unsupported\",\n      \"ugc_world_age_gate\": \"unsupported\",\n      \"unrated_privacy_default\": \"unsupported\",\n      \"usage_timer_notification\": \"unsupported\",\n      \"violence_threshold\": \"unsupported\",\n      \"voice_chat_minor_limit\": \"unsupported\",\n      \"web_category_block\": \"unsupported\",\n      \"web_custom_allowlist\": \"unsupported\",\n      \"web_custom_blocklist\": \"unsupported\",\n      \"web_filter_level\": \"unsupported\",\n      \"web_safesearch\": \"unsupported\"\n    }\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5bfa466b-3a8c-4ac2-8637-afc87ef9a2c9",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8862b7b7-c758-4dfc-8491-626cb53b2b85",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "da5d4c50-2161-4fcb-a145-4e6282427328",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4a1f2af4-b732-49a2-a300-d72eba34411b",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5b7a00c7-a860-40a8-a325-480e06ceb265",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "5a74d811-dbb3-42b4-85e4-ffb250b3b5b4",
					"name": "Get platform details",
					"request": {
						"name": "Get platform details",
						"description": {
							"content": "Fetches one platform's detail — category, compliance tier, auth type, and capabilities. Public read; no key required. Bound to `apple` here; any id from **List all platforms** works.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"platforms",
								":platformID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "apple",
									"key": "platformID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "a06b8c76-7f3c-4c18-953b-57d392656ff1",
							"name": "Platform details",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"nextdns\",\n  \"name\": \"NextDNS\",\n  \"category\": \"dns\",\n  \"tier\": \"compliant\",\n  \"description\": \"DNS-level content filtering and SafeSearch enforcement for family networks.\",\n  \"icon_url\": \"https://cdn.phosra.com/platforms/nextdns.svg\",\n  \"auth_type\": \"api_key\",\n  \"enabled\": true,\n  \"enforcement_mode\": \"dns\",\n  \"rule_support\": {}\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f4c80589-18a6-4c8f-9277-b6a7d53e24ef",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4bb5cc67-7fc1-40c3-a78c-4bfb121893df",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "62c5c2ce-e9a7-4b0a-a082-42d7f9646255",
							"name": "Platform not found",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "75d0f9d3-641f-4c70-9efb-e791db8ae086",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6d5a6318-93a7-4706-ade2-1cb37ea052d5",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5b45af77-b57c-4cc3-9114-d260449ed928",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5c9736e7-d956-49d5-8c52-f86a358a5021",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "152ef57f-1729-4458-8b1e-1889948c32d0",
					"name": "Filter platforms by category",
					"request": {
						"name": "Filter platforms by category",
						"description": {
							"content": "Returns the platforms in one `category` (`dns`, `streaming`, `gaming`, `device`, or `browser`). Public read; the `category` query param is required.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"platforms",
								"by-category"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": false,
									"key": "category",
									"value": "device",
									"description": "(Required) "
								}
							],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "74815842-d57e-4d48-bddc-2a20033d5551",
							"name": "Filtered platform list",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "category",
											"value": "device"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"fire_tablet\",\n    \"name\": \"Amazon Fire Tablet\",\n    \"category\": \"device\",\n    \"tier\": \"pending\",\n    \"description\": \"Amazon Fire Tablet Kids parental controls\",\n    \"icon_url\": \"\",\n    \"auth_type\": \"manual\",\n    \"enabled\": true,\n    \"capabilities\": [\n      \"content_rating\",\n      \"time_limit\",\n      \"scheduled_hours\",\n      \"web_filtering\",\n      \"safe_search\",\n      \"app_control\",\n      \"purchase_control\"\n    ],\n    \"enforcement_mode\": \"manual_attested\",\n    \"rule_support\": {\n      \"addictive_design_control\": \"unsupported\",\n      \"addictive_pattern_block\": \"unsupported\",\n      \"adult_site_av_required\": \"unsupported\",\n      \"age_appropriate_profile_mode\": \"unsupported\",\n      \"age_gate\": \"unsupported\",\n      \"age_signal_broadcast\": \"unsupported\",\n      \"ai_chatbot_age_assertion\": \"unsupported\",\n      \"ai_chatbot_tier_gate\": \"unsupported\",\n      \"ai_companion_block\": \"unsupported\",\n      \"ai_data_responsibility_rating_threshold\": \"unsupported\",\n      \"ai_minor_interaction\": \"unsupported\",\n      \"ai_no_csam_generation\": \"unsupported\",\n      \"ai_no_engagement_dark_patterns\": \"unsupported\",\n      \"ai_no_personhood_deception\": \"unsupported\",\n      \"ai_no_self_harm_promotion\": \"unsupported\",\n      \"ai_no_simulated_companionship\": \"unsupported\",\n      \"ai_no_unsupervised_therapy\": \"unsupported\",\n      \"ai_product_classification_gate\": \"unsupported\",\n      \"ai_safety_rating_threshold\": \"unsupported\",\n      \"ai_synthetic_media_disclosure\": \"unsupported\",\n      \"ai_toy_safety_cert\": \"unsupported\",\n      \"ai_training_data_opt_out\": \"unsupported\",\n      \"ai_transparency_rating_threshold\": \"unsupported\",\n      \"algo_feed_control\": \"unsupported\",\n      \"algorithmic_audit\": \"unsupported\",\n      \"app_install_block\": \"unsupported\",\n      \"app_store_age_attestation\": \"unsupported\",\n      \"autoplay_disable\": \"unsupported\",\n      \"cipa_filter_attestation\": \"unsupported\",\n      \"commercial_data_ban\": \"unsupported\",\n      \"commercial_pressure_threshold\": \"unsupported\",\n      \"content_allow_title\": \"guided\",\n      \"content_allowlist_mode\": \"guided\",\n      \"content_block_title\": \"guided\",\n      \"content_descriptor_block\": \"guided\",\n      \"content_rating\": \"guided\",\n      \"crisis_resource_surface\": \"unsupported\",\n      \"csam_reporting\": \"unsupported\",\n      \"data_deletion_request\": \"unsupported\",\n      \"data_minimization_enforce\": \"unsupported\",\n      \"digital_literacy_curriculum_link\": \"unsupported\",\n      \"dm_feature_disable\": \"unsupported\",\n      \"dm_restriction\": \"unsupported\",\n      \"dpia_request_generator\": \"unsupported\",\n      \"dumbphone_migration_mode\": \"unsupported\",\n      \"educational_credit\": \"unsupported\",\n      \"ephemeral_message_disable\": \"unsupported\",\n      \"esafety_commission_reporting\": \"unsupported\",\n      \"firearm_content_block\": \"unsupported\",\n      \"flagged_content_digest\": \"unsupported\",\n      \"gambling_mechanics_block\": \"unsupported\",\n      \"geolocation_opt_in\": \"unsupported\",\n      \"geolocation_precision_cap\": \"unsupported\",\n      \"hard_id_verification_escalation\": \"unsupported\",\n      \"harm_report_intake\": \"unsupported\",\n      \"image_content_monitoring\": \"unsupported\",\n      \"image_rights_minor\": \"unsupported\",\n      \"infinite_scroll_block\": \"unsupported\",\n      \"library_filter_compliance\": \"unsupported\",\n      \"message_content_monitoring\": \"unsupported\",\n      \"minor_data_sale_audit_log\": \"unsupported\",\n      \"monitoring_activity\": \"unsupported\",\n      \"monitoring_alerts\": \"unsupported\",\n      \"named_contact_block\": \"unsupported\",\n      \"ncii_takedown\": \"unsupported\",\n      \"not_for_minors_block\": \"unsupported\",\n      \"notification_curfew\": \"unsupported\",\n      \"os_age_signal_ingest\": \"unsupported\",\n      \"parental_attestation_cert\": \"unsupported\",\n      \"parental_consent_gate\": \"unsupported\",\n      \"parental_event_notification\": \"unsupported\",\n      \"phone_free_school_hours\": \"unsupported\",\n      \"platform_liability_evidence_capture\": \"unsupported\",\n      \"presence_status_hide\": \"unsupported\",\n      \"privacy_account_creation\": \"unsupported\",\n      \"privacy_data_sharing\": \"unsupported\",\n      \"privacy_location\": \"unsupported\",\n      \"privacy_profile_visibility\": \"unsupported\",\n      \"privacy_rating_dimension_gate\": \"unsupported\",\n      \"privacy_rating_score_threshold\": \"unsupported\",\n      \"privacy_rating_tier_gate\": \"unsupported\",\n      \"privacy_seal_required\": \"unsupported\",\n      \"profanity_threshold\": \"unsupported\",\n      \"prosocial_weight\": \"unsupported\",\n      \"purchase_approval\": \"guided\",\n      \"purchase_block_iap\": \"guided\",\n      \"purchase_spending_cap\": \"guided\",\n      \"rating_age_gate\": \"unsupported\",\n      \"recognized_seal_allowlist\": \"unsupported\",\n      \"representation_weight\": \"unsupported\",\n      \"role_model_weight\": \"unsupported\",\n      \"school_alert_routing\": \"unsupported\",\n      \"screen_time_report\": \"unsupported\",\n      \"search_query_monitoring\": \"unsupported\",\n      \"sexual_content_threshold\": \"unsupported\",\n      \"social_account_content_monitoring\": \"unsupported\",\n      \"social_chat_control\": \"unsupported\",\n      \"social_contacts\": \"unsupported\",\n      \"social_media_min_age\": \"unsupported\",\n      \"social_media_warning_label_render\": \"unsupported\",\n      \"social_multiplayer\": \"unsupported\",\n      \"stranger_dm_block\": \"unsupported\",\n      \"stranger_outreach_friction\": \"unsupported\",\n      \"streaming_age_rating_enforce\": \"unsupported\",\n      \"student_privacy_school_mode\": \"unsupported\",\n      \"substance_content_threshold\": \"unsupported\",\n      \"targeted_ad_block\": \"unsupported\",\n      \"teen_minimum_age_16_gate\": \"unsupported\",\n      \"third_party_tracker_block\": \"unsupported\",\n      \"time_daily_limit\": \"guided\",\n      \"time_downtime\": \"guided\",\n      \"time_per_app_limit\": \"guided\",\n      \"time_scheduled_hours\": \"guided\",\n      \"ugc_world_age_gate\": \"unsupported\",\n      \"unrated_privacy_default\": \"unsupported\",\n      \"usage_timer_notification\": \"unsupported\",\n      \"violence_threshold\": \"unsupported\",\n      \"voice_chat_minor_limit\": \"unsupported\",\n      \"web_category_block\": \"guided\",\n      \"web_custom_allowlist\": \"guided\",\n      \"web_custom_blocklist\": \"guided\",\n      \"web_filter_level\": \"guided\",\n      \"web_safesearch\": \"guided\"\n    }\n  },\n  {\n    \"id\": \"fire_tv\",\n    \"name\": \"Amazon Fire TV Stick\",\n    \"category\": \"device\",\n    \"tier\": \"pending\",\n    \"description\": \"Amazon Fire TV parental controls\",\n    \"icon_url\": \"\",\n    \"auth_type\": \"manual\",\n    \"enabled\": true,\n    \"capabilities\": [\n      \"content_rating\",\n      \"app_control\",\n      \"purchase_control\"\n    ],\n    \"enforcement_mode\": \"manual_attested\",\n    \"rule_support\": {\n      \"addictive_design_control\": \"unsupported\",\n      \"addictive_pattern_block\": \"unsupported\",\n      \"adult_site_av_required\": \"unsupported\",\n      \"age_appropriate_profile_mode\": \"unsupported\",\n      \"age_gate\": \"unsupported\",\n      \"age_signal_broadcast\": \"unsupported\",\n      \"ai_chatbot_age_assertion\": \"unsupported\",\n      \"ai_chatbot_tier_gate\": \"unsupported\",\n      \"ai_companion_block\": \"unsupported\",\n      \"ai_data_responsibility_rating_threshold\": \"unsupported\",\n      \"ai_minor_interaction\": \"unsupported\",\n      \"ai_no_csam_generation\": \"unsupported\",\n      \"ai_no_engagement_dark_patterns\": \"unsupported\",\n      \"ai_no_personhood_deception\": \"unsupported\",\n      \"ai_no_self_harm_promotion\": \"unsupported\",\n      \"ai_no_simulated_companionship\": \"unsupported\",\n      \"ai_no_unsupervised_therapy\": \"unsupported\",\n      \"ai_product_classification_gate\": \"unsupported\",\n      \"ai_safety_rating_threshold\": \"unsupported\",\n      \"ai_synthetic_media_disclosure\": \"unsupported\",\n      \"ai_toy_safety_cert\": \"unsupported\",\n      \"ai_training_data_opt_out\": \"unsupported\",\n      \"ai_transparency_rating_threshold\": \"unsupported\",\n      \"algo_feed_control\": \"unsupported\",\n      \"algorithmic_audit\": \"unsupported\",\n      \"app_install_block\": \"unsupported\",\n      \"app_store_age_attestation\": \"unsupported\",\n      \"autoplay_disable\": \"unsupported\",\n      \"cipa_filter_attestation\": \"unsupported\",\n      \"commercial_data_ban\": \"unsupported\",\n      \"commercial_pressure_threshold\": \"unsupported\",\n      \"content_allow_title\": \"guided\",\n      \"content_allowlist_mode\": \"guided\",\n      \"content_block_title\": \"guided\",\n      \"content_descriptor_block\": \"guided\",\n      \"content_rating\": \"guided\",\n      \"crisis_resource_surface\": \"unsupported\",\n      \"csam_reporting\": \"unsupported\",\n      \"data_deletion_request\": \"unsupported\",\n      \"data_minimization_enforce\": \"unsupported\",\n      \"digital_literacy_curriculum_link\": \"unsupported\",\n      \"dm_feature_disable\": \"unsupported\",\n      \"dm_restriction\": \"unsupported\",\n      \"dpia_request_generator\": \"unsupported\",\n      \"dumbphone_migration_mode\": \"unsupported\",\n      \"educational_credit\": \"unsupported\",\n      \"ephemeral_message_disable\": \"unsupported\",\n      \"esafety_commission_reporting\": \"unsupported\",\n      \"firearm_content_block\": \"unsupported\",\n      \"flagged_content_digest\": \"unsupported\",\n      \"gambling_mechanics_block\": \"unsupported\",\n      \"geolocation_opt_in\": \"unsupported\",\n      \"geolocation_precision_cap\": \"unsupported\",\n      \"hard_id_verification_escalation\": \"unsupported\",\n      \"harm_report_intake\": \"unsupported\",\n      \"image_content_monitoring\": \"unsupported\",\n      \"image_rights_minor\": \"unsupported\",\n      \"infinite_scroll_block\": \"unsupported\",\n      \"library_filter_compliance\": \"unsupported\",\n      \"message_content_monitoring\": \"unsupported\",\n      \"minor_data_sale_audit_log\": \"unsupported\",\n      \"monitoring_activity\": \"unsupported\",\n      \"monitoring_alerts\": \"unsupported\",\n      \"named_contact_block\": \"unsupported\",\n      \"ncii_takedown\": \"unsupported\",\n      \"not_for_minors_block\": \"unsupported\",\n      \"notification_curfew\": \"unsupported\",\n      \"os_age_signal_ingest\": \"unsupported\",\n      \"parental_attestation_cert\": \"unsupported\",\n      \"parental_consent_gate\": \"unsupported\",\n      \"parental_event_notification\": \"unsupported\",\n      \"phone_free_school_hours\": \"unsupported\",\n      \"platform_liability_evidence_capture\": \"unsupported\",\n      \"presence_status_hide\": \"unsupported\",\n      \"privacy_account_creation\": \"unsupported\",\n      \"privacy_data_sharing\": \"unsupported\",\n      \"privacy_location\": \"unsupported\",\n      \"privacy_profile_visibility\": \"unsupported\",\n      \"privacy_rating_dimension_gate\": \"unsupported\",\n      \"privacy_rating_score_threshold\": \"unsupported\",\n      \"privacy_rating_tier_gate\": \"unsupported\",\n      \"privacy_seal_required\": \"unsupported\",\n      \"profanity_threshold\": \"unsupported\",\n      \"prosocial_weight\": \"unsupported\",\n      \"purchase_approval\": \"guided\",\n      \"purchase_block_iap\": \"guided\",\n      \"purchase_spending_cap\": \"guided\",\n      \"rating_age_gate\": \"unsupported\",\n      \"recognized_seal_allowlist\": \"unsupported\",\n      \"representation_weight\": \"unsupported\",\n      \"role_model_weight\": \"unsupported\",\n      \"school_alert_routing\": \"unsupported\",\n      \"screen_time_report\": \"unsupported\",\n      \"search_query_monitoring\": \"unsupported\",\n      \"sexual_content_threshold\": \"unsupported\",\n      \"social_account_content_monitoring\": \"unsupported\",\n      \"social_chat_control\": \"unsupported\",\n      \"social_contacts\": \"unsupported\",\n      \"social_media_min_age\": \"unsupported\",\n      \"social_media_warning_label_render\": \"unsupported\",\n      \"social_multiplayer\": \"unsupported\",\n      \"stranger_dm_block\": \"unsupported\",\n      \"stranger_outreach_friction\": \"unsupported\",\n      \"streaming_age_rating_enforce\": \"unsupported\",\n      \"student_privacy_school_mode\": \"unsupported\",\n      \"substance_content_threshold\": \"unsupported\",\n      \"targeted_ad_block\": \"unsupported\",\n      \"teen_minimum_age_16_gate\": \"unsupported\",\n      \"third_party_tracker_block\": \"unsupported\",\n      \"time_daily_limit\": \"unsupported\",\n      \"time_downtime\": \"unsupported\",\n      \"time_per_app_limit\": \"unsupported\",\n      \"time_scheduled_hours\": \"unsupported\",\n      \"ugc_world_age_gate\": \"unsupported\",\n      \"unrated_privacy_default\": \"unsupported\",\n      \"usage_timer_notification\": \"unsupported\",\n      \"violence_threshold\": \"unsupported\",\n      \"voice_chat_minor_limit\": \"unsupported\",\n      \"web_category_block\": \"unsupported\",\n      \"web_custom_allowlist\": \"unsupported\",\n      \"web_custom_blocklist\": \"unsupported\",\n      \"web_filter_level\": \"unsupported\",\n      \"web_safesearch\": \"unsupported\"\n    }\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c8155a77-ddbf-4649-b73a-e9b03306f849",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "category",
											"value": "device"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ddb90b99-bcef-4d20-a074-9f048b828fd0",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "category",
											"value": "device"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fde7d481-d625-42ae-9618-783835de6d7c",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "category",
											"value": "device"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "560e362b-a23b-4499-addc-c510cc732398",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "category",
											"value": "device"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "58941ca6-5bcd-49fd-97a5-136a59c57b27",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "category",
											"value": "device"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "4616934b-3f91-40e0-b5b6-286a83ff021c",
					"name": "Filter platforms by capability",
					"request": {
						"name": "Filter platforms by capability",
						"description": {
							"content": "Returns the platforms that support a given `capability` (e.g. `web_filtering`, `app_control`, `time_limit`, `content_rating`). Public read; the `capability` query param is required.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"platforms",
								"by-capability"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": false,
									"key": "capability",
									"value": "web_filtering",
									"description": "(Required) "
								}
							],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "e384d966-cfa7-48bf-acc0-9d44d8453bb5",
							"name": "Filtered platform list",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-capability"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "capability",
											"value": "web_filtering"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"nextdns\",\n    \"name\": \"NextDNS\",\n    \"category\": \"dns\",\n    \"tier\": \"compliant\",\n    \"description\": \"DNS-level content filtering and SafeSearch enforcement for family networks.\",\n    \"icon_url\": \"https://cdn.phosra.com/platforms/nextdns.svg\",\n    \"auth_type\": \"api_key\",\n    \"enabled\": true,\n    \"enforcement_mode\": \"dns\",\n    \"rule_support\": {}\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "74e2c2b7-9bc5-400e-a0c1-78d007f44811",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-capability"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "capability",
											"value": "web_filtering"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9e0573cf-58b5-4933-90f1-335f53841686",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-capability"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "capability",
											"value": "web_filtering"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6b1eb521-e222-44f1-9697-59e1c2ecee28",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-capability"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "capability",
											"value": "web_filtering"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cf8f9866-e00f-457f-885d-1a9b0516b60a",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-capability"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "capability",
											"value": "web_filtering"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ba8e7098-3ca8-49ca-a326-ad761d450966",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										"by-capability"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "capability",
											"value": "web_filtering"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "f6b10e8a-8abf-4d39-a766-acfc7641e597",
					"name": "Get OAuth authorization URL for a platform",
					"request": {
						"name": "Get OAuth authorization URL for a platform",
						"description": {
							"content": "Builds the OAuth authorization URL a parent visits to grant Phosra access to a platform account. Requires `state` and `redirect_uri` query params. Bound to `microsoft` (an OAuth-capable platform) — device platforms such as `apple` return `400 platform does not support OAuth`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"platforms",
								":platformID",
								"oauth",
								"authorize"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": true,
									"key": "state",
									"value": "sandbox-demo-state"
								},
								{
									"disabled": true,
									"key": "redirect_uri",
									"value": "https://example.com/oauth/callback"
								}
							],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "microsoft",
									"key": "platformID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "a6de33be-63b7-4cdd-af73-f70a8c71870c",
							"name": "Authorization URL",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"authorize_url\": \"https://api.nextdns.io/oauth2/authorize\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8f8e9f7e-bd12-4d6d-84c2-0214c9d47cad",
							"name": "Platform does not support OAuth",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "079bafbb-c9f6-4618-85c9-e2d00e9b056a",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f1ace580-81b8-4c86-b55c-f18eb3f7b7cc",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ced465f4-bd36-47cc-84b0-74f549292917",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "34fe1fb1-26e4-4a67-9092-8edba69ff806",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7ed5d8a9-c479-4a19-8f73-a383c535e758",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d5992aa7-ee1f-4e70-af00-c39b37403fa9",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"authorize"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "state",
											"value": "sandbox-demo-state"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "4a711719-dbe1-4fb0-b0d0-878e2053d180",
					"name": "Handle OAuth callback",
					"request": {
						"name": "Handle OAuth callback",
						"description": {
							"content": "Exchanges the `code` returned to your `redirect_uri` for encrypted platform credentials. The `code` value here is a placeholder — a real Send needs the code issued by completing the **authorize** step above in a browser.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"platforms",
								":platformID",
								"oauth",
								"callback"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": false,
									"key": "code",
									"value": "PASTE_CODE_FROM_AUTHORIZE_STEP",
									"description": "(Required) "
								},
								{
									"disabled": true,
									"key": "redirect_uri",
									"value": "https://example.com/oauth/callback"
								}
							],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "microsoft",
									"key": "platformID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "a406526d-7181-49a2-89a3-f6085ff2b14f",
							"name": "OAuth tokens exchanged",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5da28d17-0b41-4e45-8ea6-a9e6c0922beb",
							"name": "Platform does not support OAuth",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "79e1ba99-e966-468e-8ea0-eddc08fb0060",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7cbf0819-2307-4e90-b931-b82f2ee9e3d6",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "64af727e-140b-4721-bb8a-8a0d6f6c4305",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1919687e-7866-4484-aed5-b774ca6c1bed",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8f957102-c4a9-44ea-b657-7827792d122c",
							"name": "OAuth exchange failed",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "b617a0e8-03d9-4fbc-a05a-5ce0905df46c",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platforms",
										":platformID",
										"oauth",
										"callback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "code",
											"value": "PASTE_CODE_FROM_AUTHORIZE_STEP"
										},
										{
											"key": "redirect_uri",
											"value": "https://example.com/oauth/callback"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "microsoft",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "feadd83f-90cc-4b23-b410-c1dbaa3adc2e",
			"name": "Providers",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "5b47b384-f1c1-4f4e-bde0-68a8bc95615e",
					"name": "Get provider connect config",
					"request": {
						"name": "Get provider connect config",
						"description": {
							"content": "Returns the OAuth endpoints `@phosra/link` uses to run the connect ceremony against a provider. This is the **Phosra product layer** of a two-layer resolution — it answers *how* to reach a provider. Whether you *may* connect is decided first by the OCSS Trust List (`/.well-known/ocss/trust-list`, root-verified): the SDK's resolver requires the DID to be an `active`, unexpired entry before this endpoint is ever fetched, and fails closed otherwise. Connect configs are deliberately **not** part of the signed OCSS document — the standard stays vendor-neutral (trust, keys, accreditation); connection mechanics are Phosra's concern as the OCSS implementor.\n\nResponds `404` (without distinguishing the cases) when the DID is unknown, revoked, or accredited but has no connect config yet.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"providers",
								":did",
								"connect"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "did:ocss:loopline",
									"key": "did",
									"description": "(Required) The provider's OCSS DID, e.g. `did:ocss:loopline`. Colons are path-safe (RFC 3986) — send them literally, do not percent-encode."
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "e49b135f-a58d-4cc5-8be7-cc07acb2c83f",
							"name": "The provider's OAuth connect config",
							"originalRequest": {
								"url": {
									"path": [
										"providers",
										":did",
										"connect"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "did:ocss:xu-qh",
											"key": "did",
											"description": "(Required) The provider's OCSS DID, e.g. `did:ocss:loopline`. Colons are path-safe (RFC 3986) — send them literally, do not percent-encode."
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"authorize_url\": \"https://api.nextdns.io/oauth2/authorize\",\n  \"token_url\": \"https://api.nextdns.io/oauth2/token\",\n  \"profiles_url\": \"https://api.nextdns.io/profiles\",\n  \"scopes\": [\n    \"string\"\n  ]\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "36723a02-4141-4871-a81d-183540b8dbff",
							"name": "The path segment is not a `did:ocss:` DID",
							"originalRequest": {
								"url": {
									"path": [
										"providers",
										":did",
										"connect"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "did:ocss:xu-qh",
											"key": "did",
											"description": "(Required) The provider's OCSS DID, e.g. `did:ocss:loopline`. Colons are path-safe (RFC 3986) — send them literally, do not percent-encode."
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "7b622472-9f27-452c-acad-5b0aceb51650",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"providers",
										":did",
										"connect"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "did:ocss:xu-qh",
											"key": "did",
											"description": "(Required) The provider's OCSS DID, e.g. `did:ocss:loopline`. Colons are path-safe (RFC 3986) — send them literally, do not percent-encode."
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "21b5e8d8-b376-4979-9c9b-12ede321683a",
							"name": "Unknown, revoked, or not-yet-configured provider (no existence leak)",
							"originalRequest": {
								"url": {
									"path": [
										"providers",
										":did",
										"connect"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "did:ocss:xu-qh",
											"key": "did",
											"description": "(Required) The provider's OCSS DID, e.g. `did:ocss:loopline`. Colons are path-safe (RFC 3986) — send them literally, do not percent-encode."
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "74d43036-27d1-4287-9259-490121a176d7",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"providers",
										":did",
										"connect"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "did:ocss:xu-qh",
											"key": "did",
											"description": "(Required) The provider's OCSS DID, e.g. `did:ocss:loopline`. Colons are path-safe (RFC 3986) — send them literally, do not percent-encode."
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "349bef06-fe53-4eef-b287-aa555846fc56",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"providers",
										":did",
										"connect"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "did:ocss:xu-qh",
											"key": "did",
											"description": "(Required) The provider's OCSS DID, e.g. `did:ocss:loopline`. Colons are path-safe (RFC 3986) — send them literally, do not percent-encode."
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "459f9370-aae2-4f21-ae3f-218b564774ba",
			"name": "Compliance",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "4b49bb68-e43d-4e4b-9ea0-cd72c35236a0",
					"name": "List compliance links for a family",
					"request": {
						"name": "List compliance links for a family",
						"description": {
							"content": "List all platform connections for a family, showing verification status and last enforcement.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"compliance"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "5851d383-0278-4961-acb7-c7e8c2e2bf33",
							"name": "Compliance link list",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"e1a7c3f9-45b2-4d68-9c01-72f6b8d34a05\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"platform_id\": \"nextdns\",\n    \"status\": \"verified\",\n    \"external_id\": \"nextdns:profile:a1b2c3\",\n    \"last_enforcement_at\": \"2026-06-30T09:15:52Z\",\n    \"last_enforcement_status\": \"success\",\n    \"verified_at\": \"2026-06-19T08:47:30Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "bf179691-a8ec-48bc-972c-71cf7a6c3bf9",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e255653e-7e16-4fc8-9eeb-499bffefe049",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "bac5ef03-6b1d-4451-8bae-a7df73fe8703",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c78cada3-3b02-4a11-97f7-54d942080f32",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7771594b-c5ea-474c-a654-22a23bbe3ec9",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4f8d73ff-1623-4bbc-956c-4631caf30bf7",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "dd9ffe00-11d9-4f8c-bec7-fc4990c28ad3",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "02793472-b629-4ca8-a8f4-2e1fbeab709a",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "8ea46263-bca6-4f96-a131-7dd50758e7d0",
					"name": "Connect a platform",
					"request": {
						"name": "Connect a platform",
						"description": {
							"content": "Connect a platform to the family by providing credentials for verification.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"compliance"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"family_id\": \"{{familyId}}\",\n  \"platform_id\": \"fire_tablet\",\n  \"credentials\": \"oauth-access-token-from-platform-connect-flow\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "829e1c06-7a67-4616-9be2-53c04c433e4f",
							"name": "Platform connected",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"e1a7c3f9-45b2-4d68-9c01-72f6b8d34a05\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"platform_id\": \"nextdns\",\n  \"status\": \"verified\",\n  \"external_id\": \"nextdns:profile:a1b2c3\",\n  \"last_enforcement_at\": \"2026-06-30T09:15:52Z\",\n  \"last_enforcement_status\": \"success\",\n  \"verified_at\": \"2026-06-19T08:47:30Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1f40aa93-56b8-426a-bb44-7ece55aa8844",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9893442c-488f-4fb0-8fa8-ac8d996de007",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c7f4618e-b030-440d-a976-acc75427ce38",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c1fbbd02-9e26-4e1a-9b27-0c3bb0d26105",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e3c2913f-c2bf-42a2-ae14-365ad33c77e8",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "aebdd364-59a7-40a1-8352-4cd372b058af",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "95e216c1-5fe0-4bc4-9c22-75595704637e",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"bce820df-8dad-a56d-5887-877c65be8275\",\n  \"platform_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('linkId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "76f4340f-44cc-4b05-a3f0-17898a0ce5e8",
					"name": "Disconnect a platform",
					"request": {
						"name": "Disconnect a platform",
						"description": {
							"content": "Disconnects a platform from a family and revokes its stored credentials. Requires `{{linkId}}` (captured when a platform is connected).",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"compliance",
								":linkID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{linkId}}",
									"key": "linkID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "7bfb2c94-d8d7-4df6-a482-2ada16f4c42d",
							"name": "Platform disconnected",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "0a880753-a9c8-4dfc-b680-8418ecb4c228",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "15a8861b-5798-467a-a2a1-3d72161f3d57",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "417c6266-124a-4b1e-82b5-7313fe661f6f",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d39a83e4-40fe-46e9-8cb0-dcd1aaab6055",
							"name": "Compliance link not found",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "64538612-4509-4615-84d7-cea063bcbd3d",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "58dd4403-c459-4cf9-a800-5a7bed225aa4",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2d1ca2d6-2f75-4189-9ee9-7a7d5c6d7521",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "dbe62ef5-a254-41ed-b573-f0d4746b0980",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "305cd495-a548-4203-a977-acf6fd2bae67",
					"name": "Re-verify a platform connection",
					"request": {
						"name": "Re-verify a platform connection",
						"description": {
							"content": "Test that credentials still work for an existing platform connection.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"compliance",
								":linkID",
								"verify"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{linkId}}",
									"key": "linkID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "ae5f90b3-c2ef-494c-b4c7-da0f3b4263ba",
							"name": "Verification result",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"status\": \"active\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fb04af3a-aeb6-4439-a43b-487bd03c3694",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4c681539-bfca-4eab-8ce5-5a5efbb7b79f",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3d7bb3cf-5928-410a-bda1-fb3e37367424",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "07dfe1c0-a27d-4c58-85c6-2c9aa41daa2a",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f9a60a83-8dcd-4e86-b9cb-5a50abcfacf2",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2a13a1a5-c1fb-44ea-ace7-0e3584a7b32e",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d6509582-ed59-4a20-bbe4-a19db6ed3165",
							"name": "Verification failed",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "646d10ab-0a70-49b7-8b28-ae16afe886d9",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"verify"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "89170577-e9d2-444f-ab38-356aba48e2c2",
					"name": "Trigger enforcement for a specific compliance link",
					"request": {
						"name": "Trigger enforcement for a specific compliance link",
						"description": {
							"content": "Push the active policy rules to the platform associated with this compliance link.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"compliance",
								":linkID",
								"enforce"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{linkId}}",
									"key": "linkID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "979f8e99-f9d8-45b3-a1d1-a8bd6d8ea93b",
							"name": "Enforcement job started",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Accepted",
							"code": 202,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"b8f04d2e-1c93-4a56-8e7f-05a91d6c3b28\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"pending\",\n  \"started_at\": \"2026-06-30T09:15:44Z\",\n  \"completed_at\": \"2026-06-30T09:15:52Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fc08a1b0-a588-4be8-8fed-e7cded8dcf88",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "381da289-61ca-4ec1-8d72-e05ad80826c5",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fa097061-4f97-49cf-8b7d-b0c92b3610bc",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f7edafb7-da6e-403b-b2eb-c60ffbcc8cab",
							"name": "Compliance link not found",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "c88a74d9-eb59-4827-a78e-b583249a9745",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c2bfeaba-805c-4a6c-b71f-08f19dc78ccb",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6ddfa87d-90b8-4872-855c-744ddeb5a64d",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8d47a00a-d952-42f7-bb7e-2285af6570bb",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"compliance",
										":linkID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{linkId}}",
											"key": "linkID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "6115a2b4-abd9-41f5-8a19-342bed0d2744",
			"name": "Enforcement",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "026fb48a-f791-4070-8d1b-3c47f8ccd22d",
					"name": "Trigger enforcement for a child",
					"request": {
						"name": "Trigger enforcement for a child",
						"description": {
							"content": "Push the child's active policy rules to connected platforms. If platform_ids is provided, only those platforms are targeted; otherwise enforcement fans out to ALL connected platforms.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"enforce"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"platform_ids\": [\n    \"fire_tablet\",\n    \"controld\"\n  ]\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "d3115b2b-feb2-487e-a036-fa415c258e9d",
							"name": "Enforcement job started",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Accepted",
							"code": 202,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"cf476742-4715-473c-bfac-64d39571ae5c\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"running\",\n  \"started_at\": \"2026-07-06T04:26:01.337741754Z\",\n  \"created_at\": \"2026-07-06T04:26:01.337745101Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cc0d2ac3-da0d-4988-a049-3ad19f128eea",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4dbd6e23-500e-4d0d-9584-99460ba653e8",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4ca5da5a-8744-41a5-801b-579a31620bae",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "96020f13-d887-459b-8041-91564d9d7562",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5f59eafa-aa62-45d7-a3e2-6aa1116d76dd",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "980ef468-812a-4a9b-a046-343f80a5f7d9",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7479c69d-c2ba-413f-93ae-9bbcfdacb30c",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9239eb14-9a2f-4fd1-afd3-75d2c99745f4",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforce"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"platform_ids\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"var job = j && (j.job || j);",
									"if (pm.response.code < 300 && job) { var id = job.id || job.job_id; if (id) pm.collectionVariables.set('jobId', id); }"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "7b86e43d-b4da-4456-8186-9c2c4fc45edf",
					"name": "List enforcement jobs for a child",
					"request": {
						"name": "List enforcement jobs for a child",
						"description": {
							"content": "Lists enforcement jobs for a child, newest first, with each job's status and target platforms.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"enforcement",
								"jobs"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": true,
									"key": "limit",
									"value": "4265",
									"description": "Maximum number of jobs to return (default 20)"
								}
							],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "7819496f-761c-4a9b-90b1-4944111f0a66",
							"name": "Enforcement job list",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"b8f04d2e-1c93-4a56-8e7f-05a91d6c3b28\",\n    \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n    \"trigger_type\": \"manual\",\n    \"status\": \"pending\",\n    \"started_at\": \"2026-06-30T09:15:44Z\",\n    \"completed_at\": \"2026-06-30T09:15:52Z\",\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "08de07f7-27ca-4d31-8571-9ab96bfce776",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cdc6cc88-db95-4fde-8d1c-431a92a235a3",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "63395d0a-121a-4e73-9670-24b8bc43b1dd",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "23e06b64-04ab-40c5-a30f-e38c41f868d9",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "aaa2b799-c4bf-4f98-b260-aaad76f324d6",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6945df18-4300-4b42-9f12-0513340fc107",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5c36db1d-3a73-4dc5-a254-2a5e46af94ae",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5e43a2a2-3a40-453d-8165-c95f945837be",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"enforcement",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "9d699d0e-fb64-4066-a7cc-044173d6f797",
					"name": "Get enforcement job status",
					"request": {
						"name": "Get enforcement job status",
						"description": {
							"content": "Fetches the status of a single enforcement job (`queued`, `running`, `succeeded`, `failed`). Requires `{{jobId}}` (captured when you trigger enforcement).",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"enforcement",
								"jobs",
								":jobID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "34cc6519-92da-46bd-9b01-983d7c6ea033",
							"name": "Job status",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"d4a2a7a9-375e-4c92-950d-214f2ab17262\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"completed\",\n  \"started_at\": \"2026-07-06T04:27:57.030252Z\",\n  \"completed_at\": \"2026-07-06T04:27:57.041987Z\",\n  \"created_at\": \"2026-07-06T04:27:57.030255Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0c13e90e-dff8-47f8-9672-65e4ebbe5c19",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0d7c45ab-494c-4ddf-8db5-eb728eca267d",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "85d46d4e-c373-4aab-9789-bfb284fcfbac",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5e778f56-85e5-4636-8f70-2431ec699a2e",
							"name": "Job not found",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "894bd6f4-552e-4ae0-a240-df5a973c0940",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "474e156f-8e15-480b-a5a2-d2357da6cc38",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e570fbc4-c0fa-412d-bae4-e89de71dba94",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e9dfdd9c-7674-4bf2-a87a-55008b934e75",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "9438ddc2-3274-4b4e-9fb9-e6029b7dd0e9",
					"name": "Get enforcement job results per platform",
					"request": {
						"name": "Get enforcement job results per platform",
						"description": {
							"content": "Returns per-platform results for an enforcement job — which platforms accepted the rules and any per-platform errors.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"enforcement",
								"jobs",
								":jobID",
								"results"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "8b9d7333-3da7-4f22-8177-a120cd19e7bc",
							"name": "Per-platform enforcement results",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"5c1e9a37-6b48-42df-90a1-3e8f7c04b2d6\",\n    \"enforcement_job_id\": \"b8f04d2e-1c93-4a56-8e7f-05a91d6c3b28\",\n    \"compliance_link_id\": \"e1a7c3f9-45b2-4d68-9c01-72f6b8d34a05\",\n    \"platform_id\": \"nextdns\",\n    \"status\": \"pending\",\n    \"rules_applied\": 0,\n    \"rules_skipped\": 0,\n    \"rules_failed\": 0,\n    \"error_message\": null,\n    \"details\": {},\n    \"started_at\": \"2026-06-30T09:15:44Z\",\n    \"completed_at\": \"2026-06-30T09:15:52Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "674adfbd-0b29-4c61-ab87-e5cea3b37d49",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e7cc8e92-c3f3-4757-a777-c90990f2fe8a",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0e968eba-0b84-4588-a83a-a2a260d5ef88",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "413216dd-5695-46e7-a6a2-37ed4054d7c7",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d13f53d0-3475-419d-aefd-33e74a400394",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8f6361c3-dcf8-461f-b12c-f3e1a10a8adf",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8ee053b8-dbdc-47c7-97a6-77dfc6941ed0",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a1896dac-7b71-45c8-854e-17143bfe1d17",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "013d032c-9a73-46ed-aaa9-5864f86081c4",
					"name": "Retry a failed enforcement job",
					"request": {
						"name": "Retry a failed enforcement job",
						"description": {
							"content": "Re-runs a failed enforcement job against the platforms that errored. Requires `{{jobId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"enforcement",
								"jobs",
								":jobID",
								"retry"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "c6f44fa9-e07c-4bd8-b167-83d8412692de",
							"name": "Retry job started",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Accepted",
							"code": 202,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"b8f04d2e-1c93-4a56-8e7f-05a91d6c3b28\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"pending\",\n  \"started_at\": \"2026-06-30T09:15:44Z\",\n  \"completed_at\": \"2026-06-30T09:15:52Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f509f224-849f-4f7a-87d9-cc65081957f0",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "773a6939-1d2f-4f21-b1fa-acc74f6934bf",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "84906a71-b537-4fca-9dd3-b96dad378eef",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "681e69ed-63d2-47fd-a085-d2781468502c",
							"name": "Job not found",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "7fa30a1e-ee54-4783-a9ad-1a34f9c4abf9",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c00f770c-fe81-4652-9d70-1974887bb2bb",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c47799c9-0a9a-47ca-a9d0-f2e9dbe92dc2",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ec5a3864-eebc-468d-a193-c40dfc527a4e",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"enforcement",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "3740a69d-664c-4bcd-8a87-5ffa6feb8d36",
			"name": "Standards",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "40ad00eb-5c96-4755-95b7-4cd961e03a09",
					"name": "List published community standards",
					"request": {
						"name": "List published community standards",
						"description": {
							"content": "Browse all published community standards/movements. No authentication required.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"standards"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "a6400175-9992-48aa-98b0-e2e5fac9469c",
							"name": "Standards list",
							"originalRequest": {
								"url": {
									"path": [
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n    \"slug\": \"four-norms\",\n    \"name\": \"Four Norms\",\n    \"organization\": \"The Anxious Generation\",\n    \"description\": \"Jonathan Haidt's four foundational norms for a phone-free childhood.\",\n    \"long_description\": \"Based on The Anxious Generation by Jonathan Haidt, the Four Norms represent a research-backed framework for protecting children from the harms of smartphone-based childhood.\",\n    \"version\": \"1.0\",\n    \"published\": true,\n    \"min_age\": 0,\n    \"max_age\": 16,\n    \"channel\": \"stable\",\n    \"source\": {},\n    \"co_branding\": {},\n    \"sort_order\": 0,\n    \"adoption_count\": 0,\n    \"rules\": [\n      {\n        \"id\": \"d6d50382-2b8f-416f-a494-694b08844dc5\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"social_media_min_age\",\n        \"label\": \"No social media until age 16\",\n        \"enabled\": true,\n        \"config\": {\n          \"min_age\": 16\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 1\n      },\n      {\n        \"id\": \"870c3adb-25f9-4342-8a64-41b8c6e635e9\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"privacy_account_creation\",\n        \"label\": \"No smartphones until age 14\",\n        \"enabled\": true,\n        \"config\": {\n          \"min_age\": 14\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 2\n      },\n      {\n        \"id\": \"5cb40e02-3724-4707-b060-3ab71dffd462\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"time_scheduled_hours\",\n        \"label\": \"Phone-free schools\",\n        \"enabled\": true,\n        \"config\": {\n          \"blocked_during\": \"school_hours\"\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 3\n      },\n      {\n        \"id\": \"56eaae96-3e95-4e59-ab69-6987667ecf6e\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"time_daily_limit\",\n        \"label\": \"More outdoor play\",\n        \"enabled\": true,\n        \"config\": {\n          \"outdoor_minimum_minutes\": 120\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 4\n      }\n    ],\n    \"created_at\": \"2026-06-18T15:32:24.882483Z\",\n    \"updated_at\": \"2026-06-18T15:32:24.882483Z\"\n  },\n  {\n    \"id\": \"85198aba-d37b-4c96-837d-325ec6af3dd9\",\n    \"slug\": \"screen-smart-family\",\n    \"name\": \"Screen-Smart Family\",\n    \"organization\": \"Phosra\",\n    \"description\": \"Phosra's recommended baseline for balanced screen time and online safety.\",\n    \"long_description\": \"The Screen-Smart Family standard is Phosra's own curated best-practice ruleset, designed by child development experts and informed by current legislation.\",\n    \"version\": \"1.0\",\n    \"published\": true,\n    \"min_age\": 0,\n    \"max_age\": 17,\n    \"channel\": \"stable\",\n    \"source\": {},\n    \"co_branding\": {},\n    \"sort_order\": 0,\n    \"adoption_count\": 0,\n    \"rules\": [\n      {\n        \"id\": \"41f8312f-d9f8-4563-b7e4-69da820607f6\",\n        \"standard_id\": \"85198aba-d37b-4c96-837d-325ec6af3dd9\",\n        \"category\": \"time_daily_limit\",\n        \"label\": \"Daily screen time\",\n        \"enabled\": true,\n        \"config\": {\n          \"adaptive\": true\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 1\n      },\n      {\n        \"id\": \"39ee90a7-1f06-425b-aa1e-56891a4ef0ea\",\n        \"standard_id\": \"85198aba-d37b-4c96-837d-325ec6af3dd9\",\n        \"category\": \"content_rating\",\n        \"label\": \"Content ratings\",\n        \"enabled\": true,\n        \"config\": {\n          \"level\": \"age_appropriate\"\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 2\n      },\n      {\n        \"id\": \"17cacdb3-669d-458c-b78e-36c1f3bfacea\",\n        \"standard_id\": \"85198aba-d37b-4c96-837d-325ec6af3dd9\",\n        \"category\": \"web_safesearch\",\n        \"label\": \"Safe search\",\n        \"enabled\": true,\n        \"config\": {\n          \"enforced\": true\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 3\n      },\n      {\n        \"id\": \"0c338d9e-b763-4118-abe6-fef11f42dc19\",\n        \"standard_id\": \"85198aba-d37b-4c96-837d-325ec6af3dd9\",\n        \"category\": \"social_chat_control\",\n        \"label\": \"Chat controls\",\n        \"enabled\": true,\n        \"config\": {\n          \"mode\": \"known_contacts_only\"\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 4\n      },\n      {\n        \"id\": \"f5821000-ed21-46df-853b-63ad6185f02f\",\n        \"standard_id\": \"85198aba-d37b-4c96-837d-325ec6af3dd9\",\n        \"category\": \"purchase_approval\",\n        \"label\": \"Purchase approval\",\n        \"enabled\": true,\n        \"config\": {\n          \"required\": true\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 5\n      },\n      {\n        \"id\": \"3fb2a719-e2e3-4494-bd97-091c2aa46533\",\n        \"standard_id\": \"85198aba-d37b-4c96-837d-325ec6af3dd9\",\n        \"category\": \"privacy_data_sharing\",\n        \"label\": \"Data sharing\",\n        \"enabled\": true,\n        \"config\": {\n          \"level\": \"minimal\"\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 6\n      }\n    ],\n    \"created_at\": \"2026-06-18T15:32:24.882483Z\",\n    \"updated_at\": \"2026-06-18T15:32:24.882483Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9d8aac5b-576e-469f-92a6-8b091d620edc",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5102066e-2dd3-4f06-9213-ad7e4565bcac",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "74aa1994-4c22-487d-b95c-b65df319c830",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "fb9ffe5c-9690-4c73-8f60-e34fe7c65a23",
					"name": "Get a community standard by slug",
					"request": {
						"name": "Get a community standard by slug",
						"description": {
							"content": "Fetches a community standard by its slug (e.g. `four-norms`) with its rules and adopting metadata. Public read. Bound to `four-norms`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"standards",
								":slug"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "four-norms",
									"key": "slug",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "e7bf29e3-9f78-4889-ac42-adef4786b9e2",
							"name": "Standard details including rules",
							"originalRequest": {
								"url": {
									"path": [
										"standards",
										":slug"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "four-norms",
											"key": "slug",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n  \"slug\": \"four-norms\",\n  \"name\": \"Four Norms\",\n  \"organization\": \"The Anxious Generation\",\n  \"description\": \"Jonathan Haidt's four foundational norms for a phone-free childhood.\",\n  \"long_description\": \"Based on The Anxious Generation by Jonathan Haidt, the Four Norms represent a research-backed framework for protecting children from the harms of smartphone-based childhood.\",\n  \"version\": \"1.0\",\n  \"published\": true,\n  \"min_age\": 0,\n  \"max_age\": 16,\n  \"channel\": \"stable\",\n  \"source\": {},\n  \"co_branding\": {},\n  \"sort_order\": 0,\n  \"adoption_count\": 0,\n  \"rules\": [\n    {\n      \"id\": \"d6d50382-2b8f-416f-a494-694b08844dc5\",\n      \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n      \"category\": \"social_media_min_age\",\n      \"label\": \"No social media until age 16\",\n      \"enabled\": true,\n      \"config\": {\n        \"min_age\": 16\n      },\n      \"kind\": \"enforced\",\n      \"sort_order\": 1\n    },\n    {\n      \"id\": \"870c3adb-25f9-4342-8a64-41b8c6e635e9\",\n      \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n      \"category\": \"privacy_account_creation\",\n      \"label\": \"No smartphones until age 14\",\n      \"enabled\": true,\n      \"config\": {\n        \"min_age\": 14\n      },\n      \"kind\": \"enforced\",\n      \"sort_order\": 2\n    },\n    {\n      \"id\": \"5cb40e02-3724-4707-b060-3ab71dffd462\",\n      \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n      \"category\": \"time_scheduled_hours\",\n      \"label\": \"Phone-free schools\",\n      \"enabled\": true,\n      \"config\": {\n        \"blocked_during\": \"school_hours\"\n      },\n      \"kind\": \"enforced\",\n      \"sort_order\": 3\n    },\n    {\n      \"id\": \"56eaae96-3e95-4e59-ab69-6987667ecf6e\",\n      \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n      \"category\": \"time_daily_limit\",\n      \"label\": \"More outdoor play\",\n      \"enabled\": true,\n      \"config\": {\n        \"outdoor_minimum_minutes\": 120\n      },\n      \"kind\": \"enforced\",\n      \"sort_order\": 4\n    }\n  ],\n  \"created_at\": \"2026-06-18T15:32:24.882483Z\",\n  \"updated_at\": \"2026-06-18T15:32:24.882483Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3983f365-3500-453e-9cca-7f1033e6aa7c",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"standards",
										":slug"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "four-norms",
											"key": "slug",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c9037eec-4a4f-4686-99a7-8a5c6b64a58f",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"standards",
										":slug"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "four-norms",
											"key": "slug",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f5f2116e-b55c-48cc-b66e-20eef696ce5f",
							"name": "Standard not found",
							"originalRequest": {
								"url": {
									"path": [
										"standards",
										":slug"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "four-norms",
											"key": "slug",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "102feb11-af59-4f3c-855a-5f514fbe3abc",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"standards",
										":slug"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "four-norms",
											"key": "slug",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2b6cf8e7-bbc8-4855-857b-ad0054935094",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"standards",
										":slug"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "four-norms",
											"key": "slug",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "30a35756-db07-4533-824e-e7105789a6d2",
					"name": "List standards adopted by a child",
					"request": {
						"name": "List standards adopted by a child",
						"description": {
							"content": "Lists the community standards a child has adopted.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"standards"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "9dff558c-4076-41d2-86cb-0cb3455d52b2",
							"name": "Adopted standards list",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n    \"slug\": \"four-norms\",\n    \"name\": \"Four Norms\",\n    \"organization\": \"The Anxious Generation\",\n    \"description\": \"Jonathan Haidt's four foundational norms for a phone-free childhood.\",\n    \"long_description\": \"Based on The Anxious Generation by Jonathan Haidt, the Four Norms represent a research-backed framework for protecting children from the harms of smartphone-based childhood.\",\n    \"version\": \"1.0\",\n    \"published\": true,\n    \"min_age\": 0,\n    \"max_age\": 16,\n    \"channel\": \"stable\",\n    \"source\": {},\n    \"co_branding\": {},\n    \"sort_order\": 0,\n    \"adoption_count\": 0,\n    \"rules\": [\n      {\n        \"id\": \"d6d50382-2b8f-416f-a494-694b08844dc5\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"social_media_min_age\",\n        \"label\": \"No social media until age 16\",\n        \"enabled\": true,\n        \"config\": {\n          \"min_age\": 16\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 1\n      },\n      {\n        \"id\": \"870c3adb-25f9-4342-8a64-41b8c6e635e9\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"privacy_account_creation\",\n        \"label\": \"No smartphones until age 14\",\n        \"enabled\": true,\n        \"config\": {\n          \"min_age\": 14\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 2\n      },\n      {\n        \"id\": \"5cb40e02-3724-4707-b060-3ab71dffd462\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"time_scheduled_hours\",\n        \"label\": \"Phone-free schools\",\n        \"enabled\": true,\n        \"config\": {\n          \"blocked_during\": \"school_hours\"\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 3\n      },\n      {\n        \"id\": \"56eaae96-3e95-4e59-ab69-6987667ecf6e\",\n        \"standard_id\": \"33e8b8cf-1453-405a-8493-8fe76264623a\",\n        \"category\": \"time_daily_limit\",\n        \"label\": \"More outdoor play\",\n        \"enabled\": true,\n        \"config\": {\n          \"outdoor_minimum_minutes\": 120\n        },\n        \"kind\": \"enforced\",\n        \"sort_order\": 4\n      }\n    ],\n    \"created_at\": \"2026-06-18T15:32:24.882483Z\",\n    \"updated_at\": \"2026-06-18T15:32:24.882483Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "973bee81-486e-41bf-8925-233738dc4652",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "bebaafe1-78b9-4082-8058-9f2b3ca0f898",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "32602320-a837-45ab-b954-b06624ffcaac",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "32ad67ff-5903-4545-9155-0ce8755529b3",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "47519e86-1277-414d-a81f-aff0622ec56e",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7ffa2def-6be5-44ba-8113-cc39dcdaeb4a",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "79e2084a-32da-4069-a1b9-d31a54b88b63",
					"name": "Adopt a standard for a child",
					"request": {
						"name": "Adopt a standard for a child",
						"description": {
							"content": "Apply a community standard's rules to a child's policy.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"standards"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"standard_id\": \"{{standardId}}\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "6d6e8b35-3313-4d70-bcad-df5d98e1ca88",
							"name": "Standard adopted",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"6b2f8d04-9e17-4a35-8c60-1d9a7e3f0b52\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"standard_id\": \"f0b3d7e2-6a94-4c81-b52f-9d0e1a3c6b48\",\n  \"adopted_at\": \"2026-06-20T11:02:33Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ac10e90c-85c5-444e-af77-66d3eba9af47",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "477dec7e-b256-4aae-b7f0-9a2fac32227d",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3e38f5e4-a43d-42dd-af76-477a6f7b7d9d",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1ca16290-bbed-4ca7-a759-0ab39976d992",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d18dee14-8783-43c7-9768-8fc77796230c",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2ab34b78-a681-4202-ad2f-cac3e88eb0ec",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0e9413e3-9be2-422b-87c0-d915825de30c",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"standard_id\": \"b61d120f-13c5-654e-f9e2-b285bd1b83bb\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id && j.standard_id) pm.collectionVariables.set('ratingId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "43937c73-1b61-4976-be47-90bc66093c89",
					"name": "Unadopt a standard for a child",
					"request": {
						"name": "Unadopt a standard for a child",
						"description": {
							"content": "Un-adopts a standard for a child, removing the rules that standard contributed. Requires `{{childId}}` and `{{standardId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"standards",
								":standardID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								},
								{
									"disabled": false,
									"type": "any",
									"value": "{{standardId}}",
									"key": "standardID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "b30159ff-0464-4f31-af4e-9d88fe585cfb",
							"name": "Standard unadopted",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards",
										":standardID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{standardId}}",
											"key": "standardID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "6e6a5d70-6511-4943-bb18-db351f02732d",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards",
										":standardID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{standardId}}",
											"key": "standardID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "62781fa6-ab2f-4048-8306-95c380cb2990",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards",
										":standardID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{standardId}}",
											"key": "standardID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3602c55c-b216-47e7-81c5-3f163d1edbd2",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards",
										":standardID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{standardId}}",
											"key": "standardID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "dbe65988-7464-4733-9941-8f2a0bbb2511",
							"name": "Standard or child not found",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards",
										":standardID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{standardId}}",
											"key": "standardID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "97f0e555-fe91-433e-95f6-2972463f05f8",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards",
										":standardID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{standardId}}",
											"key": "standardID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d47ea23f-4712-433e-b49d-a804c559f57a",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"standards",
										":standardID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{standardId}}",
											"key": "standardID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "f8738803-8ec9-4c61-a221-0bbd6bba01e2",
			"name": "Ratings",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "28a68eb8-e70c-45ab-a95e-11108e89ae7d",
					"name": "List rating systems",
					"request": {
						"name": "List rating systems",
						"description": {
							"content": "List all content rating systems (MPAA, TV, ESRB, PEGI, CSM).",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"ratings",
								"systems"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "78cb731a-1d6a-4da0-86a9-d24da802c0bf",
							"name": "Rating systems",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"csm\",\n    \"name\": \"Common Sense Media\",\n    \"country\": \"US\",\n    \"media_type\": \"general\",\n    \"description\": \"Common Sense Media age-based ratings\"\n  },\n  {\n    \"id\": \"esrb\",\n    \"name\": \"ESRB\",\n    \"country\": \"US\",\n    \"media_type\": \"game\",\n    \"description\": \"Entertainment Software Rating Board\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "78d6ae88-d1e1-45ab-a5b5-fe8bd0d696ee",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3e86c580-74bb-4556-b75e-2587814fbcd2",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c7360ba1-14b7-45ee-9c4f-4ea197f7bd67",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "a162b0ee-e9dd-456b-a324-4f3a54c47e82",
					"name": "Get ratings for a specific rating system",
					"request": {
						"name": "Get ratings for a specific rating system",
						"description": {
							"content": "Returns all individual ratings within the given rating system.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"ratings",
								"systems",
								":systemID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "esrb",
									"key": "systemID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "f043e93f-b737-49ab-b156-3c7b005b46a7",
							"name": "Ratings in the system",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"00000000-0000-0000-0003-000000000002\",\n    \"system_id\": \"esrb\",\n    \"code\": \"E10+\",\n    \"name\": \"Everyone 10+\",\n    \"description\": \"Content generally suitable for ages 10 and up.\",\n    \"min_age\": 13,\n    \"display_order\": 0,\n    \"restrictive_idx\": 0\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "332c47bc-86ff-45dc-9127-8103bf7bc51c",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d1e4f552-4701-42da-913d-479c34c601cf",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a75a6a5c-2ba6-4875-b342-e81806ab6607",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "73b15b55-6f24-439d-9178-01e8d0c2d29b",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0e21bccb-ade4-460b-bda3-916e8de1cb69",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "0f29aa62-eec1-42fb-8eb0-82ed41bd09ff",
					"name": "Get content descriptors for a rating system",
					"request": {
						"name": "Get content descriptors for a rating system",
						"description": {
							"content": "Lists the content descriptors (e.g. Violence, Language, Simulated Gambling) for one rating system. Public read. Bound to `esrb`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"ratings",
								"systems",
								":systemID",
								"descriptors"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "esrb",
									"key": "systemID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "3fe8bbde-4e3b-43e0-a6bc-2b5c0c1e08de",
							"name": "Content descriptors",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID",
										"descriptors"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"00000000-0000-0000-0003-000000000101\",\n    \"system_id\": \"esrb\",\n    \"code\": \"fantasy-violence\",\n    \"name\": \"Fantasy Violence\",\n    \"category\": \"violence\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1f55e5fa-4a54-4bc9-874d-fb31c218c780",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID",
										"descriptors"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a895eda9-4573-45de-9ed7-072694702365",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID",
										"descriptors"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "76a84862-da3b-404a-b8c4-e3a665004368",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID",
										"descriptors"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3a0a50f4-d005-46e1-be0a-c0ad0911ed50",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID",
										"descriptors"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "153506d8-4fd0-42d5-989a-1d4a3cfcef7b",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"systems",
										":systemID",
										"descriptors"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "esrb",
											"key": "systemID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "6aecd6b2-7817-4ff9-97f9-0940d7f13b99",
					"name": "Get ratings for a specific age",
					"request": {
						"name": "Get ratings for a specific age",
						"description": {
							"content": "Returns the appropriate rating in each system for a given `age` query param. Public read; the `age` query param is required.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"ratings",
								"by-age"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": false,
									"key": "age",
									"value": "12",
									"description": "(Required) "
								}
							],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "f74aa000-3942-45dc-8f78-63ee82da5f99",
							"name": "Age-appropriate ratings across all systems",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"by-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "age",
											"value": "4265"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"csm\": {\n    \"id\": \"00000000-0000-0000-0005-000000000004\",\n    \"system_id\": \"csm\",\n    \"code\": \"10+\",\n    \"name\": \"Age 10+\",\n    \"description\": \"Appropriate for ages 10 and up\",\n    \"min_age\": 10,\n    \"display_order\": 4,\n    \"restrictive_idx\": 4\n  },\n  \"esrb\": {\n    \"id\": \"00000000-0000-0000-0003-000000000002\",\n    \"system_id\": \"esrb\",\n    \"code\": \"E10+\",\n    \"name\": \"Everyone 10+\",\n    \"description\": \"Content generally suitable for ages 10 and up\",\n    \"min_age\": 10,\n    \"display_order\": 2,\n    \"restrictive_idx\": 2\n  },\n  \"mpaa\": {\n    \"id\": \"00000000-0000-0000-0001-000000000002\",\n    \"system_id\": \"mpaa\",\n    \"code\": \"PG\",\n    \"name\": \"Parental Guidance\",\n    \"description\": \"Some material may not be suitable for children\",\n    \"min_age\": 0,\n    \"display_order\": 2,\n    \"restrictive_idx\": 2\n  },\n  \"pegi\": {\n    \"id\": \"00000000-0000-0000-0004-000000000002\",\n    \"system_id\": \"pegi\",\n    \"code\": \"7\",\n    \"name\": \"PEGI 7\",\n    \"description\": \"Suitable for ages 7 and older\",\n    \"min_age\": 7,\n    \"display_order\": 2,\n    \"restrictive_idx\": 2\n  },\n  \"tvpg\": {\n    \"id\": \"00000000-0000-0000-0002-000000000004\",\n    \"system_id\": \"tvpg\",\n    \"code\": \"TV-PG\",\n    \"name\": \"Parental Guidance Suggested\",\n    \"description\": \"May contain some material parents find unsuitable\",\n    \"min_age\": 0,\n    \"display_order\": 4,\n    \"restrictive_idx\": 2\n  }\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "bd2440f1-b756-4a3a-9fd2-a221a5dc9e06",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"by-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "age",
											"value": "4265"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e22e026e-e657-42f5-ac4e-f1b862dc7d0d",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"by-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "age",
											"value": "4265"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b346b34d-e44b-4a78-86a5-5eef2e1b48f9",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										"by-age"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "age",
											"value": "4265"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "50eab27f-9093-4d0a-9cbf-4d7fecd25fc7",
					"name": "Convert a rating to equivalents in other systems",
					"request": {
						"name": "Convert a rating to equivalents in other systems",
						"description": {
							"content": "Converts one rating to its equivalents in the other systems. Requires `{{ratingId}}` — a rating id from **Get ratings for a specific rating system**.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"ratings",
								":ratingID",
								"convert"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{ratingId}}",
									"key": "ratingID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "6ddf7c3f-fc0c-4a91-ab13-0fbe55a3c278",
							"name": "Equivalent ratings across systems",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										":ratingID",
										"convert"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ratingId}}",
											"key": "ratingID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"7e4c1a90-3b28-4d67-95f1-0a8c6b2e9d43\",\n    \"rating_a\": \"00000000-0000-0000-0003-000000000002\",\n    \"rating_b\": \"00000000-0000-0000-0004-000000000002\",\n    \"strength\": 0\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8412b8f6-8a32-4136-90c5-feabda709e61",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										":ratingID",
										"convert"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ratingId}}",
											"key": "ratingID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5dadca64-e9f7-4410-9fa6-ee9ae11ec01e",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										":ratingID",
										"convert"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ratingId}}",
											"key": "ratingID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0dcf27fd-cbb6-4e44-839a-59b7d47fa9d5",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										":ratingID",
										"convert"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ratingId}}",
											"key": "ratingID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "951f8958-d980-40ae-9f95-31bc02d943b6",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										":ratingID",
										"convert"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ratingId}}",
											"key": "ratingID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0b2e0367-2e5b-49c1-858e-52dfb5aa1a19",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"ratings",
										":ratingID",
										"convert"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{ratingId}}",
											"key": "ratingID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "97511377-9d80-4114-8eb0-ade8a9e5f164",
			"name": "Connections",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "4f293470-dcb2-4811-b324-fe770e9dc91c",
					"name": "Connect to a provider",
					"request": {
						"name": "Connect to a provider",
						"description": {
							"content": "Connects the family to an external parental-control provider, storing the credentials Phosra uses to sync rules. The body carries the provider id and its auth payload; the new source id is captured into `{{sourceId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"connections"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"family_id\": \"{{familyId}}\",\n  \"provider_id\": \"aura\",\n  \"credentials\": \"oauth-access-token-from-provider-connect-flow\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "8b917d25-723e-4630-a421-b95662f80b59",
							"name": "Connected",
							"originalRequest": {
								"url": {
									"path": [
										"connections"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"5dbcaee0-3b5f-3c86-757e-2f6c55418236\",\n  \"provider_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"2f9d7b04-6c81-4e35-90a2-5b7e1c3f8d60\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"provider_id\": \"nextdns\",\n  \"status\": \"connected\",\n  \"last_sync_at\": \"2026-06-30T09:15:52Z\",\n  \"last_sync_status\": \"success\",\n  \"connected_at\": \"2026-06-19T08:47:12Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "09260f59-861e-4d60-83c8-205d1e71541e",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"connections"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"5dbcaee0-3b5f-3c86-757e-2f6c55418236\",\n  \"provider_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b0010d52-3335-4add-b766-b9dd52895294",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"connections"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"5dbcaee0-3b5f-3c86-757e-2f6c55418236\",\n  \"provider_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1fc3cd55-20b5-4a8e-b1ec-1dce8920a625",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"connections"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"5dbcaee0-3b5f-3c86-757e-2f6c55418236\",\n  \"provider_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fc172b90-96d2-4780-bf5b-698886543a56",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"connections"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"5dbcaee0-3b5f-3c86-757e-2f6c55418236\",\n  \"provider_id\": \"string\",\n  \"credentials\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "a0d1bbd0-2fc6-4e59-9a37-e7861c2dca0e",
			"name": "Sync",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "1dfaa1b4-a27b-4331-8f30-7d44507bb0e1",
					"name": "Trigger sync for child across all providers",
					"request": {
						"name": "Trigger sync for child across all providers",
						"description": {
							"content": "Triggers a rule sync for the child across every connected provider. Returns a job whose id is captured into `{{jobId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"sync"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "0f368a22-be4a-4e53-bb49-ad7a0ff244a7",
							"name": "Sync triggered",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Accepted",
							"code": 202,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"c93a1e5b-27d6-4f80-91ac-3b6e0d8f7a24\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"pending\",\n  \"started_at\": \"2026-06-30T09:15:44Z\",\n  \"completed_at\": \"2026-06-30T09:15:52Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0f4dcb13-d344-40ce-80c0-ed687aacb4ec",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a27b1fa3-9a6f-4faa-b025-86458987901e",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "892772f3-67c4-4ac6-8255-3bd19189a80f",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6ce71725-99d4-47fa-958d-7068ce580429",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "68c1d6dc-9a03-41d5-a145-80bc6e910a7b",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ccd1b455-3ab2-4ded-9b2d-e876779f62cd",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a37a22c2-6c6e-4cbc-a45a-94a6031e666e",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ba7efcad-be87-4cab-89dd-998797927ee6",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "cdc9e537-c99d-4321-9408-f76fb2d7e8d5",
					"name": "Get sync job status",
					"request": {
						"name": "Get sync job status",
						"description": {
							"content": "Fetches the status of a sync job. Requires `{{jobId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sync",
								"jobs",
								":jobID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "c8c2f4f8-dd4c-43b2-a320-647ade2dc427",
							"name": "Job status",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"c93a1e5b-27d6-4f80-91ac-3b6e0d8f7a24\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"pending\",\n  \"started_at\": \"2026-06-30T09:15:44Z\",\n  \"completed_at\": \"2026-06-30T09:15:52Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8dbc72d2-87fb-4f82-8ae0-c5f897de7d72",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "88a27256-7aa4-4dfc-9399-381a40dbe890",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4340cf4d-0bf2-4b6d-a462-c153a478f350",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cf01cd5b-192f-4a37-9ec9-8a7590ce29c2",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "aacf5794-99ce-47d9-88a4-0b3e758faf8a",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e00e4a2f-6d9c-4529-8228-78b53c63b349",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "27ce03a3-5f63-48b0-9b00-71f91d00cc28",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "80fe8d4c-d91b-4323-864c-b996842c616a",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "7ddbbea7-0369-4879-8e6b-2eb60949bcf9",
					"name": "Get sync job results per provider",
					"request": {
						"name": "Get sync job results per provider",
						"description": {
							"content": "Returns per-provider results for a sync job.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sync",
								"jobs",
								":jobID",
								"results"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "a71693f0-8225-4c0e-a510-69c8238d3ba5",
							"name": "Job results",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"8a1e6c37-4b90-42d5-81f6-3c0a9e7b2d48\",\n    \"sync_job_id\": \"c93a1e5b-27d6-4f80-91ac-3b6e0d8f7a24\",\n    \"provider_id\": \"nextdns\",\n    \"status\": \"pushed\",\n    \"rules_applied\": 12,\n    \"rules_skipped\": 3,\n    \"rules_failed\": 0,\n    \"error_message\": \"\",\n    \"details\": {}\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cf178ced-f03f-44f4-ac9d-cbfdc6c5b8ae",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "dfa53bbf-df68-48e6-8d52-3490b35021b8",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f30abeab-544f-46a5-9c2e-0468f52030ca",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "026373fb-c835-4602-ae16-48bff3a452e0",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "de1ce0e0-31e0-4bc9-a734-7983e5b8cbb4",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a8fd7158-e0a1-441b-a8b7-e3f38b869b83",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cd1aeb63-c265-4317-8356-bcb38f75dd06",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "982b1d57-d845-4c66-a3cd-073dbc01369b",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"sync",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "93395003-c172-4e03-b3be-ada8539af45d",
			"name": "Webhooks",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "c81d3f3f-5e82-4fc3-ad7e-4af0df1b67a6",
					"name": "List webhook subscriptions for a family",
					"request": {
						"name": "List webhook subscriptions for a family",
						"description": {
							"content": "Lists a family's webhook subscriptions with their target URLs and subscribed event types.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"webhooks"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "b5a96762-c666-4577-9fcf-360e24df6aed",
							"name": "Webhook list",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"d41c8f2a-90b7-4e63-a15c-8f0e2b7d3946\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"url\": \"https://api.rivera-safety.com/webhooks/phosra\",\n    \"events\": [\n      \"policy.updated\",\n      \"enforcement.completed\"\n    ],\n    \"active\": true,\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "14637963-05ad-49b7-b3dc-f23150807eb6",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7659d147-50f3-4f28-991e-cf4d7582844b",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "00de6cdb-b8c1-4988-beba-6c72feedfc0b",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f0789eb9-b16b-4009-960d-4d3d69407fe9",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e7968d5f-b071-4f31-8c1a-087b5d92d2ad",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "707b23f1-5018-4318-badd-bbd5efe512cb",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "cec95f4a-4e5d-4a17-8db2-85f13aaad002",
					"name": "Create a webhook subscription",
					"request": {
						"name": "Create a webhook subscription",
						"description": {
							"content": "Register a webhook endpoint to receive event notifications.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"webhooks"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"family_id\": \"{{familyId}}\",\n  \"url\": \"https://example.com/webhooks/phosra\",\n  \"events\": [\n    \"policy.updated\",\n    \"enforcement.completed\"\n  ]\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "f74f88df-4df2-47d0-b38b-abe5341bde6f",
							"name": "Webhook created",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"11bf5788-e5fe-57b4-f5e6-898e67d1cf3c\",\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"d41c8f2a-90b7-4e63-a15c-8f0e2b7d3946\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"url\": \"https://api.rivera-safety.com/webhooks/phosra\",\n  \"events\": [\n    \"policy.updated\",\n    \"enforcement.completed\"\n  ],\n  \"active\": true,\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8bbed482-d630-4a98-bfa7-ac8a2cb1aa6b",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"11bf5788-e5fe-57b4-f5e6-898e67d1cf3c\",\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "da86b29f-5f6c-4ed9-9154-95ddde11e9b4",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"11bf5788-e5fe-57b4-f5e6-898e67d1cf3c\",\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c3059cdf-be1f-440a-ad1f-602a295acb8f",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"11bf5788-e5fe-57b4-f5e6-898e67d1cf3c\",\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e43d38c8-8e5a-432a-8034-04ad69c8b48e",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"11bf5788-e5fe-57b4-f5e6-898e67d1cf3c\",\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7c0ada93-3d1d-4748-af6b-1a9475b84565",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"family_id\": \"11bf5788-e5fe-57b4-f5e6-898e67d1cf3c\",\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('webhookId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "4c98c96e-538f-4d29-a5e6-15308a94dc58",
					"name": "Get webhook details",
					"request": {
						"name": "Get webhook details",
						"description": {
							"content": "Fetches a single webhook subscription. Requires `{{webhookId}}` (captured when you create a webhook).",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"webhooks",
								":webhookID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{webhookId}}",
									"key": "webhookID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "1d1eb6b1-9ba1-42b3-b385-1b97182c9e9a",
							"name": "Webhook details",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"d41c8f2a-90b7-4e63-a15c-8f0e2b7d3946\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"url\": \"https://api.rivera-safety.com/webhooks/phosra\",\n  \"events\": [\n    \"policy.updated\",\n    \"enforcement.completed\"\n  ],\n  \"active\": true,\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0dad39e0-34bb-46ae-8f8f-c107cec4cf5c",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d553ec27-3a40-40e3-893f-cff2bd67d9ef",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0b654cc5-3a6b-4a4a-9925-320cfb43a2f2",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b5b22627-1826-4d7c-8e31-4a45a26b2698",
							"name": "Webhook not found",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "cbc7f98f-df78-400f-872b-d33832c44bcf",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5919a52c-5f1a-42b6-bb6d-9dcf463c72ba",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "1ebadf56-9da2-4fc3-8c34-88be862274bf",
					"name": "Update a webhook",
					"request": {
						"name": "Update a webhook",
						"description": {
							"content": "Updates a webhook's `url` or subscribed `events`. Requires `{{webhookId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"webhooks",
								":webhookID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{webhookId}}",
									"key": "webhookID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PUT",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"url\": \"https://example.com/webhooks/phosra\",\n  \"events\": [\n    \"policy.updated\",\n    \"enforcement.completed\"\n  ],\n  \"active\": true\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "5e00b754-9dfe-4860-9b44-e16aa112fbb1",
							"name": "Webhook updated",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ],\n  \"active\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"d41c8f2a-90b7-4e63-a15c-8f0e2b7d3946\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"url\": \"https://api.rivera-safety.com/webhooks/phosra\",\n  \"events\": [\n    \"policy.updated\",\n    \"enforcement.completed\"\n  ],\n  \"active\": true,\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3e59ad3e-efee-4b46-910d-454ca8a35d9a",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ],\n  \"active\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "70dcc9ad-6539-4d0a-8519-4c482b38afbb",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ],\n  \"active\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b1cf09cb-7169-44e3-b514-217029830f38",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ],\n  \"active\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "bc3973c0-81e0-4710-8794-1816cec77a08",
							"name": "Webhook not found",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ],\n  \"active\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "d215e314-448c-405c-a7d7-cfd4fb53938e",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ],\n  \"active\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6e7dc26b-b6cc-4b5a-8a11-d7f03ddfe49d",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"url\": \"string\",\n  \"events\": [\n    \"string\",\n    \"string\"\n  ],\n  \"active\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "39a77d96-e62e-4aad-bf1f-a2cdcf9fdf07",
					"name": "Delete a webhook",
					"request": {
						"name": "Delete a webhook",
						"description": {
							"content": "Deletes a webhook subscription. Requires `{{webhookId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"webhooks",
								":webhookID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{webhookId}}",
									"key": "webhookID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "105269f0-7c04-455a-91cb-41d68dbccfe7",
							"name": "Webhook deleted",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "cedec9f4-b5d0-4652-8148-3a5cd8da820b",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cf1b78bc-2298-4ca2-a213-34d53c81ee7d",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ebc2981b-0ca4-4609-b585-d69e50ff47be",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "11a0c59c-e698-4403-89a0-72cad108e0e0",
							"name": "Webhook not found",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "7a93aac8-6ad6-4166-841b-5924b50cb806",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "06b74107-d23f-490c-b87e-f4d46a2777bd",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "2a0b1aa1-f37f-4af0-bd10-e825c6061d0b",
					"name": "Send a test delivery to a webhook",
					"request": {
						"name": "Send a test delivery to a webhook",
						"description": {
							"content": "Sends a signed sample event to the webhook's URL so you can verify signature handling end-to-end. Requires `{{webhookId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"webhooks",
								":webhookID",
								"test"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{webhookId}}",
									"key": "webhookID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "3890f767-a8c4-4c35-8619-e5ed00dc5f8e",
							"name": "Test delivery result",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"test"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"1c7e9a34-2d68-4b05-93f1-6a0c8e4d7b29\",\n  \"webhook_id\": \"d41c8f2a-90b7-4e63-a15c-8f0e2b7d3946\",\n  \"event\": \"policy.updated\",\n  \"payload\": {},\n  \"response_code\": 0,\n  \"success\": true,\n  \"attempts\": 0,\n  \"next_retry_at\": \"2026-07-06T04:40:00Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5e72f357-52f1-4e72-94a0-677ce128712e",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"test"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6b44c218-3864-4ac4-a7e7-a0cab9b3b754",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"test"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8c00f926-9e50-4661-b24b-154a137a3b26",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"test"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "95dc3e64-2f0c-4729-bb2f-bfe11326977d",
							"name": "Webhook not found",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"test"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "9f20980c-4d5f-48d0-973a-f5c891bf8caf",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"test"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4aa4ec05-4b96-489a-aadf-85f86b791be9",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"test"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "7776f678-ac1f-4696-9e6a-50bec35dff37",
					"name": "List webhook deliveries",
					"request": {
						"name": "List webhook deliveries",
						"description": {
							"content": "Lists recent delivery attempts for a webhook — status code, timestamp, and retry state. The place to debug an endpoint that is not receiving events.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"webhooks",
								":webhookID",
								"deliveries"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": true,
									"key": "limit",
									"value": "4265",
									"description": "Maximum number of deliveries to return (default 50)"
								}
							],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{webhookId}}",
									"key": "webhookID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "950dc04f-46b3-49dc-894f-d1f7d389fca5",
							"name": "Delivery history",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"deliveries"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"1c7e9a34-2d68-4b05-93f1-6a0c8e4d7b29\",\n    \"webhook_id\": \"d41c8f2a-90b7-4e63-a15c-8f0e2b7d3946\",\n    \"event\": \"policy.updated\",\n    \"payload\": {},\n    \"response_code\": 0,\n    \"success\": true,\n    \"attempts\": 0,\n    \"next_retry_at\": \"2026-07-06T04:40:00Z\",\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "be19f5de-cb03-487d-a523-c17577f103f5",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"deliveries"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c1de1594-fe60-4f54-8529-a341d0e1de01",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"deliveries"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "103c81e6-c8f6-47ed-88a1-783f2d6824bf",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"deliveries"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1e8fdffc-073d-499e-a303-ca031b31e003",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"deliveries"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6cd86dbf-850e-4004-a281-89b4426bcdf7",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"deliveries"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6635ef5f-3724-47bf-829c-5fafdcb8b217",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"webhooks",
										":webhookID",
										"deliveries"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{webhookId}}",
											"key": "webhookID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "79fd1ab3-1e97-44f5-95fd-6c392badf440",
			"name": "Reports",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "97e3703b-4a91-43dc-80e1-88bc8e0c3541",
					"name": "Family overview report",
					"request": {
						"name": "Family overview report",
						"description": {
							"content": "Get a health dashboard for a family: children, active policies, enforcement status, and recommendations.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"reports",
								"overview"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "56806fac-1356-49d3-9100-c1c4d8067ed0",
							"name": "Family overview",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"reports",
										"overview"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"children\": [\n    {\n      \"child\": {\n        \"id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n        \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n        \"name\": \"Ada\",\n        \"birth_date\": \"2015-04-10T00:00:00Z\",\n        \"avatar_url\": \"https://cdn.phosra.com/avatars/ada.png\",\n        \"created_at\": \"2026-06-18T14:32:07Z\"\n      },\n      \"active_policies\": 0,\n      \"last_enforcement_at\": \"2026-06-30T09:15:52Z\",\n      \"enforcement_status\": \"healthy\"\n    }\n  ],\n  \"total_platforms\": 0,\n  \"enforcement_health\": \"healthy\",\n  \"recent_enforcements\": [\n    {\n      \"id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n      \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n      \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n      \"trigger_type\": \"manual\",\n      \"status\": \"pending\",\n      \"started_at\": \"2026-06-30T09:15:44Z\",\n      \"completed_at\": \"2026-06-30T09:15:52Z\",\n      \"created_at\": \"2026-06-18T14:32:07Z\"\n    }\n  ]\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "15f4e3d2-bf86-4852-86c5-6ab3cc81a0d6",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"reports",
										"overview"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7aa3f1d8-18f5-46c9-b6c0-83f2b846ecaf",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"reports",
										"overview"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "35c48368-44fb-4caf-aed5-5d6632a062ff",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"reports",
										"overview"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ec9cc21d-8146-46be-a778-0b08aac5ca53",
							"name": "Family not found",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"reports",
										"overview"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "b7cd5433-a1cd-4974-b7d0-0128fa4435df",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"reports",
										"overview"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "779c56cf-c943-449e-a1b1-ff39cded3559",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"reports",
										"overview"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "113a29a9-713c-4dda-8cb0-1bfe8b089857",
			"name": "Feedback",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "53a3c79e-cad4-40ef-ac09-064bdc787e85",
					"name": "Submit UI feedback",
					"request": {
						"name": "Submit UI feedback",
						"description": {
							"content": "Submit visual feedback from reviewers. No authentication required.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"feedback"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"page_route\": \"/dashboard/policies\",\n  \"comment\": \"The 'Add rule' button is hard to find on mobile.\",\n  \"css_selector\": \"button.add-rule\",\n  \"component_hint\": \"AddRuleButton\",\n  \"reviewer_name\": \"Ada Rivera\",\n  \"viewport_width\": 1280,\n  \"viewport_height\": 800,\n  \"click_x\": 640,\n  \"click_y\": 420\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "290490c7-6190-49a5-89bd-d98a23cff888",
							"name": "Feedback submitted",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"page_route\": \"string\",\n  \"comment\": \"string\",\n  \"css_selector\": \"string\",\n  \"component_hint\": \"string\",\n  \"reviewer_name\": \"string\",\n  \"viewport_width\": 1296,\n  \"viewport_height\": 895,\n  \"click_x\": 8423,\n  \"click_y\": 663\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"9d2b6f81-4a07-4c53-8e19-0f7a3c6b2d84\",\n  \"page_route\": \"/dashboard/children\",\n  \"css_selector\": \"button.add-child\",\n  \"component_hint\": \"AddChildButton\",\n  \"comment\": \"The add-child button overlaps the header on iPhone SE\",\n  \"reviewer_name\": \"Jordan Lee\",\n  \"status\": \"open\",\n  \"viewport_width\": 0,\n  \"viewport_height\": 0,\n  \"click_x\": 0,\n  \"click_y\": 0,\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"resolved_at\": \"2026-06-28T16:20:05Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5d5223c6-a954-4c1b-8be7-d067549c7acd",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"page_route\": \"string\",\n  \"comment\": \"string\",\n  \"css_selector\": \"string\",\n  \"component_hint\": \"string\",\n  \"reviewer_name\": \"string\",\n  \"viewport_width\": 1296,\n  \"viewport_height\": 895,\n  \"click_x\": 8423,\n  \"click_y\": 663\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3e3c6dcc-a2c1-476a-89bc-0322567faa53",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"page_route\": \"string\",\n  \"comment\": \"string\",\n  \"css_selector\": \"string\",\n  \"component_hint\": \"string\",\n  \"reviewer_name\": \"string\",\n  \"viewport_width\": 1296,\n  \"viewport_height\": 895,\n  \"click_x\": 8423,\n  \"click_y\": 663\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1abdee81-f02c-47ca-9bff-c278107a18c3",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"page_route\": \"string\",\n  \"comment\": \"string\",\n  \"css_selector\": \"string\",\n  \"component_hint\": \"string\",\n  \"reviewer_name\": \"string\",\n  \"viewport_width\": 1296,\n  \"viewport_height\": 895,\n  \"click_x\": 8423,\n  \"click_y\": 663\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a8512b2d-fa72-4210-b839-97f21441226a",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"page_route\": \"string\",\n  \"comment\": \"string\",\n  \"css_selector\": \"string\",\n  \"component_hint\": \"string\",\n  \"reviewer_name\": \"string\",\n  \"viewport_width\": 1296,\n  \"viewport_height\": 895,\n  \"click_x\": 8423,\n  \"click_y\": 663\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('feedbackId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "067e88c2-59e2-4e7c-a2bb-09cd1a56aa43",
					"name": "List feedback items",
					"request": {
						"name": "List feedback items",
						"description": {
							"content": "List all feedback items, optionally filtered by status. No authentication required.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"feedback"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": true,
									"key": "status",
									"value": "dismissed",
									"description": "Filter by status (open, approved, dismissed, fixed)"
								}
							],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "9f501a8b-0f3b-4ae2-a3f8-f1cda011291b",
							"name": "Feedback list",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "status",
											"value": "dismissed"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"9d2b6f81-4a07-4c53-8e19-0f7a3c6b2d84\",\n    \"page_route\": \"/dashboard/children\",\n    \"css_selector\": \"button.add-child\",\n    \"component_hint\": \"AddChildButton\",\n    \"comment\": \"The add-child button overlaps the header on iPhone SE\",\n    \"reviewer_name\": \"Jordan Lee\",\n    \"status\": \"open\",\n    \"viewport_width\": 0,\n    \"viewport_height\": 0,\n    \"click_x\": 0,\n    \"click_y\": 0,\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"resolved_at\": \"2026-06-28T16:20:05Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4235fb85-9761-4637-acbd-578d1f2253c2",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "status",
											"value": "dismissed"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5d6ccac4-8c0b-4744-98de-edb0aceea72b",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "status",
											"value": "dismissed"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e33ad779-641a-4ef7-a5bf-6bcc49ed4c17",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "status",
											"value": "dismissed"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "8e4af04b-5014-4195-a9a6-19955e4d71da",
					"name": "Update feedback status",
					"request": {
						"name": "Update feedback status",
						"description": {
							"content": "Update the status of a feedback item. Requires authentication.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"feedback",
								":feedbackID",
								"status"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{feedbackId}}",
									"key": "feedbackID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PATCH",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"status\": \"fixed\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "e14230f9-f7de-4105-8002-7b9ba31302a4",
							"name": "Status updated",
							"originalRequest": {
								"url": {
									"path": [
										"feedback",
										":feedbackID",
										"status"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{feedbackId}}",
											"key": "feedbackID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PATCH",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"status\": \"fixed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"status\": \"active\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2d1bf8c5-8f14-4298-9b30-388c4ea3dbe4",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback",
										":feedbackID",
										"status"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{feedbackId}}",
											"key": "feedbackID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PATCH",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"status\": \"fixed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5d685ab5-9b41-42e4-b6b0-e35660340285",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback",
										":feedbackID",
										"status"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{feedbackId}}",
											"key": "feedbackID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PATCH",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"status\": \"fixed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2f04b864-720a-40c7-b2c2-49005ba4d6ec",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback",
										":feedbackID",
										"status"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{feedbackId}}",
											"key": "feedbackID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PATCH",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"status\": \"fixed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "349437f8-c26b-4877-a0a9-4ce65d524861",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback",
										":feedbackID",
										"status"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{feedbackId}}",
											"key": "feedbackID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PATCH",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"status\": \"fixed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0a40c820-5b37-46dd-8943-b34a18549365",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"feedback",
										":feedbackID",
										"status"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{feedbackId}}",
											"key": "feedbackID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PATCH",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"status\": \"fixed\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "1641427f-e05a-48c9-8cc5-beca69c9514e",
			"name": "Apple Device Sync",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "ab4f14e5-a0e4-47aa-9466-eeed5b885281",
					"name": "Register an Apple device",
					"request": {
						"name": "Register an Apple device",
						"description": {
							"content": "Register a device for on-device policy enforcement. Returns a one-time API key the iOS app stores in Keychain.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"devices"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"device_name\": \"Mia's iPad\",\n  \"device_model\": \"iPad13,4\",\n  \"os_version\": \"18.5\",\n  \"app_version\": \"2.4.0\",\n  \"apns_token\": \"e1c2f3a4b5d6e7f8a9b0c1d2e3f4a5b6c7d8e9f0a1b2c3d4e5f6a7b8c9d0e1f2\",\n  \"capabilities\": [\n    \"screen_time\",\n    \"content_filter\"\n  ]\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "3c657d1b-5ef3-4cdf-b3e9-ec15366ca675",
							"name": "Device registered",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"device\": {\n    \"id\": \"5e0a9c37-1b64-4d82-96f3-2c8a7e0b4d19\",\n    \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"platform_id\": \"nextdns\",\n    \"device_name\": \"Ada's iPhone\",\n    \"device_model\": \"iPhone15,3\",\n    \"os_version\": \"18.5\",\n    \"app_version\": \"2.4.0\",\n    \"apns_token\": \"8f7d3c1b2a90e64f5d8c7b6a1f0e9d3c2b1a0f9e8d7c6b5a4f3e2d1c0b9a8f7e6\",\n    \"capabilities\": [\n      \"FamilyControls\",\n      \"ManagedSettings\",\n      \"DeviceActivity\"\n    ],\n    \"enforcement_summary\": {},\n    \"last_seen_at\": \"2026-07-05T22:04:18Z\",\n    \"last_policy_version\": 0,\n    \"status\": \"active\",\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  },\n  \"api_key\": \"dvk_test_3a9f1c7e5b2d8046a1f3c9e7b5d2086\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b8b34f21-80e3-4294-ba1f-ddb889e3d468",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cb8cbabe-784a-44ad-b413-1242de00831e",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "cfdbb16a-5c7d-4916-9a9d-3a2c0068a3c5",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8070ec49-7355-4a3a-95cb-e636a2fbeb9e",
							"name": "Child not found",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "47dfb14d-474a-4553-a912-ce7f7c57bea1",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9e7540a3-db06-488e-98fc-0f494d8eae6a",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "461f0bbc-2248-4efe-99a5-791a30faa57f",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"device_model\": \"string\",\n  \"os_version\": \"string\",\n  \"app_version\": \"string\",\n  \"apns_token\": \"string\",\n  \"capabilities\": [\n    \"string\",\n    \"string\"\n  ]\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"var dev = j && (j.device || j);",
									"if (pm.response.code < 300 && dev && dev.id) pm.collectionVariables.set('deviceId', dev.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "45d9c9a9-2871-42ae-ba7a-7fb52e4f8156",
					"name": "List registered devices for a child",
					"request": {
						"name": "List registered devices for a child",
						"description": {
							"content": "Lists the devices registered for on-device enforcement for a child, with model, OS version, and last-seen time.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"devices"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "5d18cce0-0419-4848-9938-48f638b3779b",
							"name": "Device list",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"5e0a9c37-1b64-4d82-96f3-2c8a7e0b4d19\",\n    \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"platform_id\": \"nextdns\",\n    \"device_name\": \"Ada's iPhone\",\n    \"device_model\": \"iPhone15,3\",\n    \"os_version\": \"18.5\",\n    \"app_version\": \"2.4.0\",\n    \"apns_token\": \"8f7d3c1b2a90e64f5d8c7b6a1f0e9d3c2b1a0f9e8d7c6b5a4f3e2d1c0b9a8f7e6\",\n    \"capabilities\": [\n      \"FamilyControls\",\n      \"ManagedSettings\",\n      \"DeviceActivity\"\n    ],\n    \"enforcement_summary\": {},\n    \"last_seen_at\": \"2026-07-05T22:04:18Z\",\n    \"last_policy_version\": 0,\n    \"status\": \"active\",\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ef22de04-3839-40e9-a812-a75fe35e9806",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ca2c4568-95a1-4bec-8f68-3d14186853c4",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "19b72daf-6799-4c5f-8188-965a24e555d8",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "615d10ac-06f5-478a-a55f-dc750b5be0c0",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d99e2303-73b1-4087-8ed1-ee942d33475c",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c593c7a9-9a76-4de0-b49d-8e5396dd5e4c",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"devices"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "7e6e95ea-704c-451a-943c-f52e37966230",
					"name": "Update device metadata",
					"request": {
						"name": "Update device metadata",
						"description": {
							"content": "Update APNs token, app version, or device name. All fields are optional.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"devices",
								":deviceID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{deviceId}}",
									"key": "deviceID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "PUT",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"device_name\": \"Mia's iPad\",\n  \"apns_token\": \"f2e1d0c9b8a7f6e5d4c3b2a1f0e9d8c7b6a5f4e3d2c1b0a9f8e7d6c5b4a3f2e1\",\n  \"app_version\": \"2.4.1\",\n  \"os_version\": \"18.6\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "b2083670-4bef-4d62-bf3b-140c59cd26ea",
							"name": "Device updated",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"apns_token\": \"string\",\n  \"app_version\": \"string\",\n  \"os_version\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"5e0a9c37-1b64-4d82-96f3-2c8a7e0b4d19\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"platform_id\": \"nextdns\",\n  \"device_name\": \"Ada's iPhone\",\n  \"device_model\": \"iPhone15,3\",\n  \"os_version\": \"18.5\",\n  \"app_version\": \"2.4.0\",\n  \"apns_token\": \"8f7d3c1b2a90e64f5d8c7b6a1f0e9d3c2b1a0f9e8d7c6b5a4f3e2d1c0b9a8f7e6\",\n  \"capabilities\": [\n    \"FamilyControls\",\n    \"ManagedSettings\",\n    \"DeviceActivity\"\n  ],\n  \"enforcement_summary\": {},\n  \"last_seen_at\": \"2026-07-05T22:04:18Z\",\n  \"last_policy_version\": 0,\n  \"status\": \"active\",\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "08c58080-0342-4b52-a0a1-b9a56e98671c",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"apns_token\": \"string\",\n  \"app_version\": \"string\",\n  \"os_version\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7e03f703-95a3-4cf7-aa2a-175ccac6a0dd",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"apns_token\": \"string\",\n  \"app_version\": \"string\",\n  \"os_version\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a696baf0-56ec-447c-b720-e52157f67b96",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"apns_token\": \"string\",\n  \"app_version\": \"string\",\n  \"os_version\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7ddd4b29-d343-49f2-87e9-aeac213577c2",
							"name": "Device not found",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"apns_token\": \"string\",\n  \"app_version\": \"string\",\n  \"os_version\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "21ebf71d-5935-4bdc-9006-c5ff783f80cd",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"apns_token\": \"string\",\n  \"app_version\": \"string\",\n  \"os_version\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "10790d3a-6cf3-462e-9ca3-fcb4dd675883",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "PUT",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"device_name\": \"string\",\n  \"apns_token\": \"string\",\n  \"app_version\": \"string\",\n  \"os_version\": \"string\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "2068c349-0329-49a2-8591-8422da160797",
					"name": "Revoke a device",
					"request": {
						"name": "Revoke a device",
						"description": {
							"content": "Revoke the device's API key. The device will receive 401 on its next request.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"devices",
								":deviceID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{deviceId}}",
									"key": "deviceID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "97d87c09-5fcc-44c8-94fb-4798d933d905",
							"name": "Device revoked",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "8cbb6e3d-ec71-49db-a69d-9c4180a8f0c4",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "04d09658-6165-4b93-b9af-327d6af19507",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "059702a9-b167-463a-8ed0-f23b0bc842e4",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "bb72eaa0-1f72-47cf-9f85-20b39a411348",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d502cb92-9953-4db1-8172-f23b7cec0af2",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3a11ccdd-ccb9-43c4-a1f5-7985f226e5d4",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"devices",
										":deviceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{deviceId}}",
											"key": "deviceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "2dab68f4-e9a0-467e-aa08-da173dee5c0d",
					"name": "Get compiled policy for device",
					"request": {
						"name": "Get compiled policy for device",
						"description": {
							"content": "Returns a structured policy document the iOS app interprets to configure FamilyControls/ManagedSettings. Supports conditional polling via since_version query parameter.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"device",
								"policy"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": true,
									"key": "since_version",
									"value": "4265",
									"description": "Return 304 if policy version is <= this value"
								}
							],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET"
					},
					"response": [
						{
							"id": "61f6d90b-b542-46db-82d5-6d7514940ef6",
							"name": "Compiled policy document",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"policy"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "since_version",
											"value": "4265"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"version\": 1,\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"child_age\": 0,\n  \"age_group\": \"elementary\",\n  \"policy_id\": \"7b3e9c04-2d1a-4f68-9e5b-8c07a1f34d29\",\n  \"status\": \"active\",\n  \"generated_at\": \"2026-06-30T09:15:44Z\",\n  \"content_filter\": {\n    \"age_rating\": \"PG\",\n    \"max_ratings\": {},\n    \"blocked_apps\": [\n      \"com.tiktok.app\",\n      \"com.snapchat.snapchat\"\n    ],\n    \"allowed_apps\": [\n      \"com.apple.mobilesafari\",\n      \"com.duolingo.DuolingoMobile\"\n    ],\n    \"allowlist_mode\": true\n  },\n  \"screen_time\": {\n    \"daily_limit_minutes\": 0,\n    \"per_app_limits\": [\n      {\n        \"bundle_id\": \"9f8b2a14-6c3d-4e51-8a72-1f0b9c4d2e63\",\n        \"daily_minutes\": 0\n      }\n    ],\n    \"downtime_windows\": [\n      {\n        \"days_of_week\": [\n          \"monday\",\n          \"tuesday\",\n          \"wednesday\",\n          \"thursday\",\n          \"friday\"\n        ],\n        \"start_time\": \"22:00\",\n        \"end_time\": \"07:00\"\n      }\n    ],\n    \"always_allowed_apps\": [\n      \"com.apple.MobileSMS\",\n      \"com.apple.mobilephone\"\n    ],\n    \"schedule\": {\n      \"weekday\": {\n        \"start\": \"07:00\",\n        \"end\": \"21:00\"\n      },\n      \"weekend\": {\n        \"start\": \"07:00\",\n        \"end\": \"21:00\"\n      }\n    }\n  },\n  \"purchases\": {\n    \"require_approval\": true,\n    \"block_iap\": true,\n    \"spending_cap_usd\": 0\n  },\n  \"privacy\": {\n    \"location_sharing_enabled\": true,\n    \"profile_visibility\": \"friends_only\",\n    \"account_creation_approval\": true,\n    \"data_sharing_restricted\": true\n  },\n  \"social\": {\n    \"chat_mode\": \"restricted\",\n    \"dm_restriction\": \"contacts_only\",\n    \"multiplayer_mode\": \"friends_only\"\n  },\n  \"notifications\": {\n    \"curfew_start\": \"21:00\",\n    \"curfew_end\": \"07:00\",\n    \"usage_timer_minutes\": 0\n  },\n  \"web_filter\": {\n    \"level\": \"moderate\",\n    \"safe_search\": true,\n    \"blocked_domains\": [\n      \"tiktok.com\",\n      \"reddit.com\"\n    ],\n    \"allowed_domains\": [\n      \"khanacademy.org\",\n      \"wikipedia.org\"\n    ],\n    \"blocked_categories\": [\n      \"gambling\",\n      \"adult\"\n    ]\n  }\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7c6be983-f688-4f04-9d27-532383c4bcc0",
							"name": "Policy unchanged since the given version",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"policy"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "since_version",
											"value": "4265"
										}
									],
									"variable": []
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Modified",
							"code": 304,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "35563f41-a0f9-44f7-abf4-0d2ca689d3a0",
							"name": "Invalid or revoked device key",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"policy"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "since_version",
											"value": "4265"
										}
									],
									"variable": []
								},
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "c38c9e2a-a74e-4884-be9d-6e2820e2dff6",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"policy"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "since_version",
											"value": "4265"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "912c26d5-fbf6-4f51-95f0-80950b5d2c9e",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"policy"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "since_version",
											"value": "4265"
										}
									],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "4c61eaec-8876-4ac0-9f34-56625d67f733",
					"name": "Submit activity report from device",
					"request": {
						"name": "Submit activity report from device",
						"description": {
							"content": "Submit screen time, app usage, or other activity data. Stored in device_reports and fanned out to activity_logs. Use report_type: enforcement_status with an EnforcementStatusPayload to report per-category enforcement results; this also updates the device's enforcement_summary for the parent dashboard.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"device",
								"report"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"body": {
							"mode": "raw",
							"raw": "{\n  \"report_type\": \"enforcement_status\",\n  \"payload\": {\n    \"time_daily_limit\": \"applied\",\n    \"web_filter_level\": \"applied\"\n  },\n  \"reported_at\": \"2026-07-06T07:43:45Z\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "97518963-4a51-46d7-8fe3-4b5545a600f0",
							"name": "Report accepted",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"report"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"report_type\": \"enforcement_status\",\n  \"payload\": {\n    \"key_0\": true,\n    \"key_1\": false\n  },\n  \"reported_at\": \"2007-12-01T00:00:12.953Z\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Accepted",
							"code": 202,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "3271b54b-5876-4c66-a3ed-59f2ad9ad77b",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"report"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"report_type\": \"enforcement_status\",\n  \"payload\": {\n    \"key_0\": true,\n    \"key_1\": false\n  },\n  \"reported_at\": \"2007-12-01T00:00:12.953Z\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "62d14374-62e1-4d75-828e-97fca830e6d8",
							"name": "Invalid or revoked device key",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"report"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"report_type\": \"enforcement_status\",\n  \"payload\": {\n    \"key_0\": true,\n    \"key_1\": false\n  },\n  \"reported_at\": \"2007-12-01T00:00:12.953Z\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "897fec0c-ba1b-4f98-8477-2837dd91a92c",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"report"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"report_type\": \"enforcement_status\",\n  \"payload\": {\n    \"key_0\": true,\n    \"key_1\": false\n  },\n  \"reported_at\": \"2007-12-01T00:00:12.953Z\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d4511404-8030-49b4-8c26-a0ed1a3d1226",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"report"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"report_type\": \"enforcement_status\",\n  \"payload\": {\n    \"key_0\": true,\n    \"key_1\": false\n  },\n  \"reported_at\": \"2007-12-01T00:00:12.953Z\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "df3cc286-94e3-430d-8f96-cc51c261f52a",
					"name": "Acknowledge policy version",
					"request": {
						"name": "Acknowledge policy version",
						"description": {
							"content": "Confirm that the device has successfully applied a specific policy version.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"device",
								"ack"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"body": {
							"mode": "raw",
							"raw": "{\n  \"version\": 3\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "d02effda-82dc-4d90-b13e-0d93c9237c30",
							"name": "Version acknowledged",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"ack"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"version\": 4404\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"acknowledged_version\": 0\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c453936a-3d77-49a1-aac1-bd4282a01303",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"ack"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"version\": 4404\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a8a8a887-3036-4a06-9299-91ab534c62ec",
							"name": "Invalid or revoked device key",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"ack"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"version\": 4404\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "6538154c-f367-497a-bd34-feb9660bd84f",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"ack"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"version\": 4404\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "491c2e0e-6d84-41b3-a612-a79e43842ced",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"device",
										"ack"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"version\": 4404\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "1c41155a-c163-4ce6-922e-de097f850d61",
			"name": "Device Sync",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "aca2145c-6fe9-483b-b3a6-c403f4b34cc1",
					"name": "Get platform-specific identifier mappings",
					"request": {
						"name": "Get platform-specific identifier mappings",
						"description": {
							"content": "Returns platform-specific app identifiers, age ratings, system apps, always-allowed apps, and category_frameworks mapping (which framework + API class to use for each Phosra rule category). Supports platformID=apple and platformID=android.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"platform-mappings",
								":platformID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "apple",
									"key": "platformID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "af3bde17-d367-44ee-940a-ae19a478df55",
							"name": "Platform mappings",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"age_ratings\": {\n    \"key_0\": \"string\",\n    \"key_1\": \"string\"\n  },\n  \"app_categories\": {\n    \"key_0\": {\n      \"bundle_ids\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"app_store_category\": \"string\",\n      \"key_0\": \"string\"\n    },\n    \"key_1\": {\n      \"bundle_ids\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"app_store_category\": \"string\",\n      \"key_0\": false\n    },\n    \"key_2\": {\n      \"bundle_ids\": [\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        },\n        {\n          \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n        }\n      ],\n      \"app_store_category\": \"string\",\n      \"key_0\": false,\n      \"key_1\": 5364\n    }\n  },\n  \"system_apps\": {\n    \"key_0\": \"string\"\n  },\n  \"always_allowed\": [\n    \"string\",\n    \"string\"\n  ],\n  \"category_frameworks\": {\n    \"key_0\": {\n      \"framework\": {\n        \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n      },\n      \"api_class\": {\n        \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n      },\n      \"min_os\": {\n        \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n      },\n      \"notes\": {\n        \"value\": \"<Error: Too many levels of nesting to fake this schema>\"\n      }\n    }\n  }\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5ed523a9-fb5a-490d-88d3-7084b6901b28",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b867f40d-9171-4b39-b5c0-d1a06b38799a",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "402bbd5d-fa08-4da9-b8c1-7fde0cc7cf66",
							"name": "Platform not supported",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "48f5faef-706c-4409-9feb-557dbaddb4eb",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "520d3749-f86a-4e76-b16c-2b5b8bf32d9f",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "53161f74-4559-4fa2-8dfd-a9475321f5e3",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "22b628ae-2805-49d1-a234-014b473c02c7",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"platform-mappings",
										":platformID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "apple",
											"key": "platformID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		},
		{
			"id": "c33d5e67-1722-4dcf-a384-b1ead97a21ec",
			"name": "Sources",
			"description": {
				"content": "",
				"type": "text/plain"
			},
			"item": [
				{
					"id": "29f6c3f9-e933-46ec-be5e-9039d2925044",
					"name": "List available source adapters",
					"request": {
						"name": "List available source adapters",
						"description": {
							"content": "List all available parental control source adapters that can be connected.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								"available"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "70414ba6-9266-4957-878c-e4b7085fddfb",
							"name": "Available source list",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										"available"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"slug\": \"four-norms\",\n    \"display_name\": \"NextDNS\",\n    \"api_tier\": \"managed\",\n    \"auth_type\": \"oauth2\",\n    \"website\": \"https://nextdns.io\",\n    \"description\": \"Managed content-filtering and screen-time source.\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "757a819e-6c52-4e83-b6d8-d1df972cc979",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										"available"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "16ae153d-95d7-4fb6-98a0-e1fc1952c876",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										"available"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6d02657e-438e-4ed3-8545-709115007de3",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										"available"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "23702c00-a743-423e-88a9-917fa980bdf6",
					"name": "Connect a source",
					"request": {
						"name": "Connect a source",
						"description": {
							"content": "Connect a parental control app as a source for a child.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": []
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"child_id\": \"{{childId}}\",\n  \"family_id\": \"{{familyId}}\",\n  \"source\": \"apple_screen_time\",\n  \"credentials\": {\n    \"oauth_token\": \"oauth-access-token-from-source-connect-flow\"\n  },\n  \"auto_sync\": true\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "fa24fe85-7611-4600-917f-3152e22f15e5",
							"name": "Source connected",
							"originalRequest": {
								"url": {
									"path": [
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_id\": \"ecc26570-2e80-c641-7fcf-d9aeb48408d4\",\n  \"family_id\": \"fa319044-22e9-0a12-aa96-e5859c871c8d\",\n  \"source\": \"string\",\n  \"credentials\": {},\n  \"auto_sync\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Created",
							"code": 201,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"source_slug\": \"nextdns\",\n  \"display_name\": \"NextDNS\",\n  \"api_tier\": \"managed\",\n  \"status\": \"pending\",\n  \"auto_sync\": true,\n  \"capabilities\": [\n    {\n      \"category\": \"rating_age_gate\",\n      \"support_level\": \"full\",\n      \"read_write\": \"push_only\",\n      \"notes\": \"Bidirectional sync supported; changes reconcile within ~60s\"\n    }\n  ],\n  \"config\": {},\n  \"last_sync_at\": \"2026-06-30T09:15:52Z\",\n  \"last_sync_status\": \"success\",\n  \"sync_version\": 0,\n  \"error_message\": null,\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0f05244c-44bd-40ef-926b-1494c398754d",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_id\": \"ecc26570-2e80-c641-7fcf-d9aeb48408d4\",\n  \"family_id\": \"fa319044-22e9-0a12-aa96-e5859c871c8d\",\n  \"source\": \"string\",\n  \"credentials\": {},\n  \"auto_sync\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1cc90ac6-05f5-490e-b5e6-fcd009735f43",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_id\": \"ecc26570-2e80-c641-7fcf-d9aeb48408d4\",\n  \"family_id\": \"fa319044-22e9-0a12-aa96-e5859c871c8d\",\n  \"source\": \"string\",\n  \"credentials\": {},\n  \"auto_sync\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "69c058a1-7298-4dbd-92b1-c0e7ce6a24d1",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_id\": \"ecc26570-2e80-c641-7fcf-d9aeb48408d4\",\n  \"family_id\": \"fa319044-22e9-0a12-aa96-e5859c871c8d\",\n  \"source\": \"string\",\n  \"credentials\": {},\n  \"auto_sync\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a169d20b-4d62-4c32-8408-2b8aee36bce3",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": []
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"child_id\": \"ecc26570-2e80-c641-7fcf-d9aeb48408d4\",\n  \"family_id\": \"fa319044-22e9-0a12-aa96-e5859c871c8d\",\n  \"source\": \"string\",\n  \"credentials\": {},\n  \"auto_sync\": true\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [
						{
							"listen": "test",
							"script": {
								"type": "text/javascript",
								"exec": [
									"var j; try { j = pm.response.json(); } catch (e) { j = null; }",
									"if (pm.response.code < 300 && j && j.id) pm.collectionVariables.set('sourceId', j.id);"
								]
							}
						}
					],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "e32060fc-ef8a-440a-af9e-2c8a14f90000",
					"name": "Get source details",
					"request": {
						"name": "Get source details",
						"description": {
							"content": "Fetches a connected source's detail — provider, tier (`managed` or `guided`), and sync state. Requires `{{sourceId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "c90ba53f-8ebc-4cce-b676-65e049ca755e",
							"name": "Source details",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n  \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n  \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n  \"source_slug\": \"nextdns\",\n  \"display_name\": \"NextDNS\",\n  \"api_tier\": \"managed\",\n  \"status\": \"pending\",\n  \"auto_sync\": true,\n  \"capabilities\": [\n    {\n      \"category\": \"rating_age_gate\",\n      \"support_level\": \"full\",\n      \"read_write\": \"push_only\",\n      \"notes\": \"Bidirectional sync supported; changes reconcile within ~60s\"\n    }\n  ],\n  \"config\": {},\n  \"last_sync_at\": \"2026-06-30T09:15:52Z\",\n  \"last_sync_status\": \"success\",\n  \"sync_version\": 0,\n  \"error_message\": null,\n  \"created_at\": \"2026-06-18T14:32:07Z\",\n  \"updated_at\": \"2026-06-30T09:15:44Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "55ddc344-33ef-45c9-b686-ea5e8dfdef1e",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "0c47ae31-5bd8-4f57-8077-7fe4dc6c837f",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "34e3b1ac-5bf5-49a5-b59a-1453c5bb5a6b",
							"name": "Source not found",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "591e50e1-86fa-4266-8383-6cb58730a928",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "8a80c73d-bf79-405d-9872-b2109811a6d3",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "83a1d48b-f5cc-4575-8fae-f51223a4f0d4",
					"name": "Disconnect source",
					"request": {
						"name": "Disconnect source",
						"description": {
							"content": "Disconnects a source and revokes its stored credentials. Requires `{{sourceId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "DELETE",
						"auth": null
					},
					"response": [
						{
							"id": "caa542ab-c1ce-4289-a1a3-9105d092d6b5",
							"name": "Source disconnected",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "No Content",
							"code": 204,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "f9b8a99d-9a04-493f-8990-29ab2e045ef5",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "196baf55-43c1-484c-b170-34202f5826f8",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fdc0277c-ba1d-4085-903b-20a6e7698654",
							"name": "Source not found",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"method": "DELETE",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "e760a2b3-42d5-475e-bb69-42b41ffb697c",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d27f0db8-78ab-43c3-a21a-212cda2fce0c",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "DELETE",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "0eed8958-088f-46a5-bf31-f85c3e7a1c7a",
					"name": "Sync source",
					"request": {
						"name": "Sync source",
						"description": {
							"content": "Push all active policy rules to a connected source.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID",
								"sync"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"sync_mode\": \"full\"\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "46ced77f-07fb-4b48-b7a9-18616b910cdb",
							"name": "Sync job started",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Accepted",
							"code": 202,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"4d7b0e9a-1c86-42f3-95d0-7a2e6b1f8c34\",\n  \"source_id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n  \"sync_mode\": \"full\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"pending\",\n  \"rules_pushed\": 0,\n  \"rules_skipped\": 0,\n  \"rules_failed\": 0,\n  \"error_message\": null,\n  \"started_at\": \"2026-06-30T09:15:44Z\",\n  \"completed_at\": \"2026-06-30T09:15:52Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4bb3a533-2a4b-4f3b-be34-be73f0fd07ad",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "711a3a8f-bf19-4ebd-a5f8-3eabb0453b6b",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "960ce923-5765-4c5e-8089-484547669b59",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f14f8b86-5db0-47c4-888f-af281db365a5",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4ba5aa2a-e4f0-4ac7-9e45-9ebce5509b76",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "193a3cd9-611a-495e-b712-bf46e5543025",
							"name": "A downstream provider returned an invalid response while Phosra was fulfilling the request. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Gateway",
							"code": 502,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Gateway\",\n  \"message\": \"downstream provider error\",\n  \"code\": 502\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "00452f19-eb84-436c-8d65-60be2680cc5e",
							"name": "A downstream provider or dependency is temporarily unavailable. Retry with backoff.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"sync"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"sync_mode\": \"full\"\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Service Unavailable",
							"code": 503,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Service Unavailable\",\n  \"message\": \"downstream provider unavailable\",\n  \"code\": 503\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "504440f2-767e-4461-92d8-10e578fe337c",
					"name": "Push single rule",
					"request": {
						"name": "Push single rule",
						"description": {
							"content": "Push a single rule to a connected source.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID",
								"rules"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Content-Type",
								"value": "application/json"
							},
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null,
						"body": {
							"mode": "raw",
							"raw": "{\n  \"category\": \"time_daily_limit\",\n  \"value\": {\n    \"daily_minutes\": 120\n  }\n}",
							"options": {
								"raw": {
									"language": "json"
								}
							}
						}
					},
					"response": [
						{
							"id": "e046d490-79cd-4c21-ae96-3be1f89ea85d",
							"name": "Rule push result",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"phone_free_school_hours\",\n  \"value\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"d60b3e9a-7c14-42f8-95d1-8a0e6b2f7c43\",\n  \"job_id\": \"4d7b0e9a-1c86-42f3-95d0-7a2e6b1f8c34\",\n  \"source_id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n  \"rule_category\": \"rating_age_gate\",\n  \"status\": \"pushed\",\n  \"source_value\": {},\n  \"source_response\": {},\n  \"error_message\": null,\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b3846cc9-04fb-4e2b-ac18-19241d2c5f78",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"phone_free_school_hours\",\n  \"value\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "93b9cc55-16b9-4162-a42d-40c3db0de4ca",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"phone_free_school_hours\",\n  \"value\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3adf45c9-955f-4ee4-83d1-a83d61dde550",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"phone_free_school_hours\",\n  \"value\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "25f36bec-8637-4a3f-8c2e-4e4f7548b128",
							"name": "The request conflicts with the current state of the resource — for example, a resource with the same natural key already exists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"phone_free_school_hours\",\n  \"value\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Conflict",
							"code": 409,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Conflict\",\n  \"message\": \"resource already exists\",\n  \"code\": 409\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f094d675-5d49-4251-9a20-9c4f99c6822d",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"phone_free_school_hours\",\n  \"value\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3df57595-9536-44a6-b4c2-1b754875dc51",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"rules"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {
									"mode": "raw",
									"raw": "{\n  \"category\": \"phone_free_school_hours\",\n  \"value\": {}\n}",
									"options": {
										"raw": {
											"language": "json"
										}
									}
								}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "129b91d2-ac99-4ee5-8148-1fb4b135a91b",
					"name": "Get guided steps",
					"request": {
						"name": "Get guided steps",
						"description": {
							"content": "Get manual setup instructions for a guided-tier source.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID",
								"guide",
								":category"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								},
								{
									"disabled": false,
									"type": "any",
									"value": "web_filtering",
									"key": "category",
									"description": "Any OCSS rule category slug — used to tailor the returned manual-setup steps. `{{sourceId}}` must first be captured by connecting a **guided**-tier source (e.g. via **Connect to a provider**)."
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "3bfdb60f-73c3-4a18-a10e-3c4ed221398b",
							"name": "Guided steps",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"guide",
										":category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "web_filtering",
											"key": "category",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"step_number\": 0,\n    \"title\": \"Sign in to NextDNS\",\n    \"description\": \"Managed content-filtering and screen-time source.\",\n    \"image_url\": \"https://cdn.phosra.com/guides/nextdns-step-1.png\",\n    \"deep_link\": \"nextdns://settings/parental-controls\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "75e33b59-8e19-455a-b53a-f6b9b4f91786",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"guide",
										":category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "web_filtering",
											"key": "category",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "3a2b014c-757a-43e6-a1b6-a48bf79133ed",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"guide",
										":category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "web_filtering",
											"key": "category",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "b1c93b4d-383c-46aa-9be2-bea891c59766",
							"name": "Source or category not found",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"guide",
										":category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "web_filtering",
											"key": "category",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "f3e8fbd6-9756-4db7-b17c-93fc0112b1f2",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"guide",
										":category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "web_filtering",
											"key": "category",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "f177ded3-45dc-4768-823c-0db9f8f44ac6",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"guide",
										":category"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "web_filtering",
											"key": "category",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "c879860c-1ab6-41bd-8c73-9494104d6126",
					"name": "List sync jobs",
					"request": {
						"name": "List sync jobs",
						"description": {
							"content": "List sync job history for a source.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID",
								"jobs"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [
								{
									"disabled": true,
									"key": "limit",
									"value": "4265",
									"description": "Maximum number of jobs to return"
								}
							],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "fa58d51c-3a23-423d-9bbf-c9312aaaaadc",
							"name": "Sync job list",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"4d7b0e9a-1c86-42f3-95d0-7a2e6b1f8c34\",\n    \"source_id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n    \"sync_mode\": \"full\",\n    \"trigger_type\": \"manual\",\n    \"status\": \"pending\",\n    \"rules_pushed\": 0,\n    \"rules_skipped\": 0,\n    \"rules_failed\": 0,\n    \"error_message\": null,\n    \"started_at\": \"2026-06-30T09:15:44Z\",\n    \"completed_at\": \"2026-06-30T09:15:52Z\",\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "9c9ee17b-7a6d-4b75-90e1-80c5f9ea75f1",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "85109f6c-ddd8-4b6a-8daa-e380e39be2fe",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4e991632-545b-42b7-9bc3-0e2ffcadef32",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "90414c18-3265-4961-b4ba-3779cb388307",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a3a1c2d6-e1e5-4d3e-8738-0b0ddfa21c3d",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [
										{
											"key": "limit",
											"value": "4265"
										}
									],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "1648e3da-d74f-4e36-ace5-29a3d3e737d6",
					"name": "Get sync job",
					"request": {
						"name": "Get sync job",
						"description": {
							"content": "Fetches one sync job for a source. Requires `{{sourceId}}` and `{{jobId}}`.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID",
								"jobs",
								":jobID"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								},
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "b71ce3a5-8708-46d1-a51e-feef42750744",
							"name": "Sync job details",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"4d7b0e9a-1c86-42f3-95d0-7a2e6b1f8c34\",\n  \"source_id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n  \"sync_mode\": \"full\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"pending\",\n  \"rules_pushed\": 0,\n  \"rules_skipped\": 0,\n  \"rules_failed\": 0,\n  \"error_message\": null,\n  \"started_at\": \"2026-06-30T09:15:44Z\",\n  \"completed_at\": \"2026-06-30T09:15:52Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ad348c04-d46a-4340-a351-221d044fc36c",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e059c4d8-a0c8-4746-9a82-bb77d3f914b2",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "46083034-d494-459e-8ef3-d5b1fa2a3412",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4dff64ac-ca57-4f74-a8fd-b3dec6157320",
							"name": "Sync job not found",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "85507fd3-0ee4-40ad-bbab-6a69a4f138e7",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "db3cdc5d-2cd6-4a58-b2f2-1cc42e73e120",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "e2780384-c2d8-4d5f-9bcf-782042fafa10",
					"name": "Get sync results",
					"request": {
						"name": "Get sync results",
						"description": {
							"content": "Get per-rule results for a sync job.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID",
								"jobs",
								":jobID",
								"results"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								},
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "2404dbc6-b6f3-446f-bf15-e06db2e54b2a",
							"name": "Sync result list",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"d60b3e9a-7c14-42f8-95d1-8a0e6b2f7c43\",\n    \"job_id\": \"4d7b0e9a-1c86-42f3-95d0-7a2e6b1f8c34\",\n    \"source_id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n    \"rule_category\": \"rating_age_gate\",\n    \"status\": \"pushed\",\n    \"source_value\": {},\n    \"source_response\": {},\n    \"error_message\": null,\n    \"created_at\": \"2026-06-18T14:32:07Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "97aa471e-715e-4996-a522-0c42e448a3bb",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "5e9b2fed-c333-40d3-9b10-cef07c0078bc",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "905f2e70-53e2-4c77-810f-19a5d0e70e10",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "4a15a1e2-b03f-48a0-b7b3-b3da1d0dc70e",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "50575a75-1537-4bdb-8856-489d344e1dae",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "ce3e62eb-7737-4e9b-9372-45e3561115f1",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"results"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "19c7f962-38b2-4705-9bf2-7faa4e291d09",
					"name": "Retry sync",
					"request": {
						"name": "Retry sync",
						"description": {
							"content": "Retry a failed sync job.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"sources",
								":sourceID",
								"jobs",
								":jobID",
								"retry"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{sourceId}}",
									"key": "sourceID",
									"description": "(Required) "
								},
								{
									"disabled": false,
									"type": "any",
									"value": "{{jobId}}",
									"key": "jobID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "POST",
						"auth": null
					},
					"response": [
						{
							"id": "4a0d1122-37a7-4177-a22b-a33e076f5860",
							"name": "Retry job started",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Accepted",
							"code": 202,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"id\": \"4d7b0e9a-1c86-42f3-95d0-7a2e6b1f8c34\",\n  \"source_id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n  \"sync_mode\": \"full\",\n  \"trigger_type\": \"manual\",\n  \"status\": \"pending\",\n  \"rules_pushed\": 0,\n  \"rules_skipped\": 0,\n  \"rules_failed\": 0,\n  \"error_message\": null,\n  \"started_at\": \"2026-06-30T09:15:44Z\",\n  \"completed_at\": \"2026-06-30T09:15:52Z\",\n  \"created_at\": \"2026-06-18T14:32:07Z\"\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "6e654f6d-ba87-451e-84bd-196dbfe660b9",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "852e7157-1fce-4097-b52d-9745db52ce36",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "c9b30a16-d14e-4bff-b0d5-aa1a863ad9dc",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "e6d935ea-a785-4052-aa11-420f2450a0a6",
							"name": "Sync job not found",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"method": "POST",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "text/plain"
								}
							],
							"body": "",
							"cookie": [],
							"_postman_previewlanguage": "text"
						},
						{
							"id": "1b94e77f-36fc-4b4c-9742-86f18020356c",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "79851e0b-ac04-4d48-947d-40a1809d55c8",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"sources",
										":sourceID",
										"jobs",
										":jobID",
										"retry"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{sourceId}}",
											"key": "sourceID",
											"description": "(Required) "
										},
										{
											"disabled": false,
											"type": "any",
											"value": "{{jobId}}",
											"key": "jobID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "POST",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "6f1ac501-331a-49ef-b04a-d474caa4b6eb",
					"name": "List sources for child",
					"request": {
						"name": "List sources for child",
						"description": {
							"content": "List all connected sources for a child.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"children",
								":childID",
								"sources"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{childId}}",
									"key": "childID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "590709a5-d0c4-46cc-99ad-26f00cfba7bb",
							"name": "Source list",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n    \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"source_slug\": \"nextdns\",\n    \"display_name\": \"NextDNS\",\n    \"api_tier\": \"managed\",\n    \"status\": \"pending\",\n    \"auto_sync\": true,\n    \"capabilities\": [\n      {\n        \"category\": \"rating_age_gate\",\n        \"support_level\": \"full\",\n        \"read_write\": \"push_only\",\n        \"notes\": \"Bidirectional sync supported; changes reconcile within ~60s\"\n      }\n    ],\n    \"config\": {},\n    \"last_sync_at\": \"2026-06-30T09:15:52Z\",\n    \"last_sync_status\": \"success\",\n    \"sync_version\": 0,\n    \"error_message\": null,\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "205d2453-30ca-4aeb-9206-91a23dccef35",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "40d47625-02e5-4095-b264-7d112a2165d0",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "2c3ee187-77cf-43d0-87c0-445848ab2012",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "99e4cb1f-ca4a-40db-9098-68b3b71575c5",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "d8434ee4-604a-496d-8a85-ba68ad9a3296",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "1e679f01-b86e-461c-a2b7-29d16cdddef2",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"children",
										":childID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{childId}}",
											"key": "childID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				},
				{
					"id": "c2c00201-994b-43fa-a795-e58badaeac2c",
					"name": "List sources for family",
					"request": {
						"name": "List sources for family",
						"description": {
							"content": "List all connected sources for a family.",
							"type": "text/plain"
						},
						"url": {
							"path": [
								"families",
								":familyID",
								"sources"
							],
							"host": [
								"{{baseUrl}}"
							],
							"query": [],
							"variable": [
								{
									"disabled": false,
									"type": "any",
									"value": "{{familyId}}",
									"key": "familyID",
									"description": "(Required) "
								}
							]
						},
						"header": [
							{
								"key": "Accept",
								"value": "application/json"
							}
						],
						"method": "GET",
						"auth": null
					},
					"response": [
						{
							"id": "99b21659-3871-4b8a-940e-8c8e54e1f773",
							"name": "Source list",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "OK",
							"code": 200,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "[\n  {\n    \"id\": \"a2e6b9c1-3f74-4d08-9b25-6c1f0a8e4d73\",\n    \"child_id\": \"ca02f5d1-fee8-4201-b5ca-fdc8be506e1e\",\n    \"family_id\": \"fcdf4277-ba14-4732-8db5-0369b2c88d8b\",\n    \"source_slug\": \"nextdns\",\n    \"display_name\": \"NextDNS\",\n    \"api_tier\": \"managed\",\n    \"status\": \"pending\",\n    \"auto_sync\": true,\n    \"capabilities\": [\n      {\n        \"category\": \"rating_age_gate\",\n        \"support_level\": \"full\",\n        \"read_write\": \"push_only\",\n        \"notes\": \"Bidirectional sync supported; changes reconcile within ~60s\"\n      }\n    ],\n    \"config\": {},\n    \"last_sync_at\": \"2026-06-30T09:15:52Z\",\n    \"last_sync_status\": \"success\",\n    \"sync_version\": 0,\n    \"error_message\": null,\n    \"created_at\": \"2026-06-18T14:32:07Z\",\n    \"updated_at\": \"2026-06-30T09:15:44Z\"\n  }\n]",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "072d2e06-c140-4413-a918-a6eaf29e0086",
							"name": "The request was malformed — a required field is missing, a value failed validation, or an identifier is not a well-formed UUID.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Bad Request",
							"code": 400,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Bad Request\",\n  \"message\": \"child_name is required\",\n  \"code\": 400\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "06c5a0c2-d144-4f31-8278-08e348e40ab0",
							"name": "Authentication failed. Send a Bearer WorkOS JWT, or a `phosra_live_`/`phosra_test_` developer API key, in the `Authorization` header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Unauthorized",
							"code": 401,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Unauthorized\",\n  \"message\": \"missing or invalid Authorization header\",\n  \"code\": 401\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "7da22e7e-4035-4842-9543-3f314d58c90f",
							"name": "Authenticated, but not permitted to act on this resource — for example, you are not a member of the target family.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Forbidden",
							"code": 403,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Forbidden\",\n  \"message\": \"not a member of this family\",\n  \"code\": 403\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "a6239356-9dae-4e8c-9403-876aefc76252",
							"name": "No resource matches the identifier supplied in the path.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Not Found",
							"code": 404,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Not Found\",\n  \"message\": \"policy not found\",\n  \"code\": 404\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fb2f6c26-6e81-41f9-9f86-6782cda2b14d",
							"name": "Too many requests. Back off and retry after the interval given in the `Retry-After` response header.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Too Many Requests",
							"code": 429,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Too Many Requests\",\n  \"message\": \"rate limit exceeded\",\n  \"code\": 429\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						},
						{
							"id": "fda24430-ee08-4052-8262-ede2a2a03250",
							"name": "An unexpected error occurred inside Phosra. The request is safe to retry with exponential backoff; contact support if it persists.",
							"originalRequest": {
								"url": {
									"path": [
										"families",
										":familyID",
										"sources"
									],
									"host": [
										"{{baseUrl}}"
									],
									"query": [],
									"variable": [
										{
											"disabled": false,
											"type": "any",
											"value": "{{familyId}}",
											"key": "familyID",
											"description": "(Required) "
										}
									]
								},
								"header": [
									{
										"key": "Accept",
										"value": "application/json"
									}
								],
								"method": "GET",
								"body": {}
							},
							"status": "Internal Server Error",
							"code": 500,
							"header": [
								{
									"key": "Content-Type",
									"value": "application/json"
								}
							],
							"body": "{\n  \"error\": \"Internal Server Error\",\n  \"message\": \"internal error\",\n  \"code\": 500\n}",
							"cookie": [],
							"_postman_previewlanguage": "json"
						}
					],
					"event": [],
					"protocolProfileBehavior": {
						"disableBodyPruning": true
					}
				}
			],
			"event": []
		}
	],
	"event": [],
	"variable": [
		{
			"key": "baseUrl",
			"value": "https://phosra-api-sandbox-production.up.railway.app/api/v1",
			"type": "string",
			"description": "Sandbox census base URL. No account required — POST /families and POST /setup/quick work unauthenticated in the sandbox."
		},
		{
			"key": "apiKey",
			"value": "phosra_test_REPLACE_ME",
			"type": "string",
			"description": "Optional in the sandbox. For gated tiers, paste a phosra_test_ key from your dashboard. The sandbox accepts unauthenticated writes for the family/child/policy resources you create."
		},
		{
			"key": "familyId",
			"value": "f0000000-0000-4000-8000-0000000000f1",
			"type": "string",
			"description": "Seeded with the shared sandbox demo family. Run 'Setup > One-step onboarding' (or 'Create a family') first — its test script overwrites this with a family your session owns (the demo family is read-scoped to the guided walkthrough)."
		},
		{
			"key": "childId",
			"value": "a11ce0fa-0000-4000-8000-0000000000a1",
			"type": "string",
			"description": "Seeded with demo child 'Mia'. Overwritten by 'Setup > One-step onboarding' or 'Add child to family'."
		},
		{
			"key": "policyId",
			"value": "b011c1e5-0000-4000-8000-000000000b01",
			"type": "string",
			"description": "Seeded with Mia's demo policy. Overwritten by 'Setup > One-step onboarding' or 'Create policy for child'."
		},
		{
			"key": "standardId",
			"value": "33e8b8cf-1453-405a-8493-8fe76264623a",
			"type": "string",
			"description": "REAL, globally readable: the 'Four Norms' community standard (slug four-norms). GET /standards lists it; works immediately with no setup."
		},
		{
			"key": "ruleId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Create rule' (POST /policies/:policyID/rules)."
		},
		{
			"key": "webhookId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Create a webhook subscription' (POST /webhooks)."
		},
		{
			"key": "sourceId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Connect a source' (POST /sources)."
		},
		{
			"key": "linkId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Connect a platform' (POST /compliance)."
		},
		{
			"key": "deviceId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Register an Apple device' (POST /children/:childID/devices)."
		},
		{
			"key": "jobId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Trigger enforcement for a child' (POST /children/:childID/enforce)."
		},
		{
			"key": "memberId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Add a member to a family' (POST /families/:familyID/members)."
		},
		{
			"key": "userId",
			"value": "",
			"type": "string",
			"description": "Bring your own: a real WorkOS user id to add as a family member. This is the one id the API expects you to supply rather than capture."
		},
		{
			"key": "ratingId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Adopt a standard for a child' (the adoption record id)."
		},
		{
			"key": "feedbackId",
			"value": "",
			"type": "string",
			"description": "Captured automatically by 'Submit UI feedback' (POST /feedback)."
		}
	],
	"auth": {
		"type": "bearer",
		"bearer": [
			{
				"key": "token",
				"value": "{{apiKey}}",
				"type": "string"
			}
		]
	},
	"info": {
		"_postman_id": "7b3c1f2a-0a6d-4e9b-9c11-phosra00sand",
		"name": "Phosra API",
		"schema": "https://schema.getpostman.com/json/collection/v2.1.0/collection.json",
		"description": "Phosra Universal Parental Controls API - define a child-safety policy once, enforce it everywhere.\n\nThis collection is pre-wired against the hosted sandbox (https://phosra-api-sandbox-production.up.railway.app/api/v1). Import the companion \"Phosra Sandbox\" environment, hit Send on any request, and you are talking to real seeded data - no signup required for public reads.\n\nAuth: set the apiKey environment variable to your phosra_test_ key. It is sent as Authorization: Bearer {{apiKey}} on every authenticated request via collection-level auth.\n\nGenerated from the canonical OpenAPI 3.1 spec at docs/api/openapi.yaml. Docs: https://docs.phosra.com/tools/postman"
	}
}
