PostHog · Schema

ChangeRequest

A/B TestingAnalyticsFeature FlagsOpen-SourceProduct AnalyticsSession Recording

Properties

Name Type Description
id string
action_key string
action_version integer
resource_type string
resource_id string
intent object
intent_display object
policy_snapshot object
validation_status object
validation_errors object
validated_at string
state object
created_by object
applied_by object
created_at string
updated_at string
expires_at string
applied_at string
apply_error string
result_data object
approvals array
can_approve boolean Check if current user can approve this change request.
can_cancel boolean
is_requester boolean Check if current user is the requester.
user_decision string Get the current user's approval decision if they have voted.
View JSON Schema on GitHub

JSON Schema

posthog-changerequest-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "#/components/schemas/ChangeRequest",
  "title": "ChangeRequest",
  "type": "object",
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "readOnly": true
    },
    "action_key": {
      "type": "string",
      "readOnly": true
    },
    "action_version": {
      "type": "integer",
      "readOnly": true
    },
    "resource_type": {
      "type": "string",
      "readOnly": true
    },
    "resource_id": {
      "type": "string",
      "readOnly": true,
      "nullable": true
    },
    "intent": {
      "readOnly": true
    },
    "intent_display": {
      "readOnly": true
    },
    "policy_snapshot": {
      "readOnly": true
    },
    "validation_status": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ValidationStatusEnum"
        }
      ],
      "readOnly": true
    },
    "validation_errors": {
      "readOnly": true,
      "nullable": true
    },
    "validated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "nullable": true
    },
    "state": {
      "allOf": [
        {
          "$ref": "#/components/schemas/ChangeRequestStateEnum"
        }
      ],
      "readOnly": true
    },
    "created_by": {
      "allOf": [
        {
          "$ref": "#/components/schemas/UserBasic"
        }
      ],
      "readOnly": true
    },
    "applied_by": {
      "allOf": [
        {
          "$ref": "#/components/schemas/UserBasic"
        }
      ],
      "readOnly": true
    },
    "created_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "updated_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "nullable": true
    },
    "expires_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true
    },
    "applied_at": {
      "type": "string",
      "format": "date-time",
      "readOnly": true,
      "nullable": true
    },
    "apply_error": {
      "type": "string",
      "readOnly": true
    },
    "result_data": {
      "readOnly": true,
      "nullable": true
    },
    "approvals": {
      "type": "array",
      "items": {
        "type": "object",
        "additionalProperties": true
      },
      "readOnly": true
    },
    "can_approve": {
      "type": "boolean",
      "description": "Check if current user can approve this change request.",
      "readOnly": true
    },
    "can_cancel": {
      "type": "boolean",
      "readOnly": true
    },
    "is_requester": {
      "type": "boolean",
      "description": "Check if current user is the requester.",
      "readOnly": true
    },
    "user_decision": {
      "type": "string",
      "nullable": true,
      "description": "Get the current user's approval decision if they have voted.",
      "readOnly": true
    }
  },
  "required": [
    "action_key",
    "action_version",
    "applied_at",
    "applied_by",
    "apply_error",
    "approvals",
    "can_approve",
    "can_cancel",
    "created_at",
    "created_by",
    "expires_at",
    "id",
    "intent",
    "intent_display",
    "is_requester",
    "policy_snapshot",
    "resource_id",
    "resource_type",
    "result_data",
    "state",
    "updated_at",
    "user_decision",
    "validated_at",
    "validation_errors",
    "validation_status"
  ]
}

Work with this as data

Every JSON Schema here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for schemas

4 MCP tools reach this
  • find_json_schemasBrowse and filter every JSON Schema in the catalog.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This JSON Schema
curl "https://apis.io/api/v1/json-schemas/posthog-changerequest"
All schemas
curl "https://apis.io/api/v1/json-schemas?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.