---
descriptions:
  create_schema:
    action: Identifier of what happened
    actor:
      metadata: JSON schema for actor `metadata`
    targets:
      type: Actor type
      metadata: Optional JSON schema for target `metadata`
      return: The list of targets for this schema
    metadata: Optional JSON schema for event `metadata`
    version: The schema version
reference:
  curl:
    - key: create_schema
      id: create_schema
      url: /reference/audit-logs/create-schema
      title: '/audit_logs/actions/:name/schemas'
      type: POST
      parameters:
        - key: actor
          type: object
          optional: true
          expanded: true
          properties:
            - key: metadata
              type: object
              description: (create_schema.actor.metadata)
        - key: targets
          type: array
          expanded: true
          properties:
            - key: type
              type: string
              description: (create_schema.targets.type)
            - key: metadata
              type: object
              optional: true
              description: (create_schema.targets.metadata)
        - key: metadata
          type: object
          optional: true
          description: (create_schema.metadata)
      returns:
        - (audit_log_schema)
  js:
    - key: createSchema
      id: create_schema
      url: /reference/audit-logs/create-schema
      title: auditLogs.createSchema()
      parameters:
        - key: schema
          type: object
          expanded: true
          properties:
            - key: action
              type: string
              description: (create_schema.action)
            - key: actor
              type: object
              expanded: true
              optional: true
              properties:
                - key: metadata
                  type: object
                  description: (create_schema.actor.metadata)
            - key: targets
              type: array
              expanded: true
              properties:
                - key: type
                  type: string
                  description: (create_schema.targets.type)
                - key: metadata
                  type: object
                  optional: true
                  description: (create_schema.targets.metadata)
            - key: metadata
              type: object
              optional: true
              description: (create_schema.metadata)
      returns:
        - (AuditLogSchema)
originalPath: .tmp-workos-clone/packages/docs/content/reference/audit-logs/schema/create.mdx
---

## Create Schema

Creates a new Audit Log schema used to validate the payload of incoming Audit Log Events. If the `action` does not exist, it will also be created.

<CodeBlock
  title="Request"
  referenceId="create_schema"
  file="create-schema-request"
/>
