---
title: "Publish Contract"
method: POST
path: "/api/v1/actions/{action_id}/publish"
tags: ["actions"]
---

# Publish Contract

`POST /api/v1/actions/{action_id}/publish`

## Path parameters

- `action_id` string, uuid, required

## Request body

- ActionPublishRequest
  - `expected_draft_version` integer, required

## Response `200`

Successful Response

- ActionRevisionRead
  - `id` string, uuid, required
  - `action_id` string, uuid, required
  - `number` integer, required
  - `contract` ActionContract, required
    - `schema_version` 1
    - `display_name` string, required
    - `description` string
    - `parameters` ContractParameter[]
      - `name` string, required
      - `data_type` 'String' | 'Number' | 'Boolean' | 'Date' | 'Datetime' | 'EntityRef' | 'File' | 'File[]'
      - `required` boolean
      - `entity_id` string, uuid, nullable
      - `validation` object
    - `effects` union[], required
      - union
        - MutationEffect
          - `type` 'entity_mutation', required
          - `key` string, required
          - `entity_id` string, uuid, required
          - `kind` 'create' | 'modify' | 'delete', required — Which ontology row operation an Action drives.
          - `is_anchor` boolean
          - `target_param` string, nullable
          - `relationship_id` string, uuid, nullable
          - `relationship_snapshot` object, nullable
          - `field_writes` ContractFieldWrite[]
            - `column_name` string, required
            - `source_kind` 'const' | 'param', required — Where a field-write's value comes from.
            - `const_value` unknown
            - `param_name` string, nullable
          - `guards` ContractGuard[]
            - `column_name` string, required
            - `op` string, required
            - `value` unknown, required
        - WorkflowEffect
          - `type` 'start_workflow', required
          - `key` string, required
          - `automation_revision_id` string, uuid, required
          - `inputs` object
  - `published_at` string, date-time, required

## Other responses

- `422` — Validation Error

## Changes

> 39 revisions in range; 1 not diffed.

- **2026-10-02** `11cfdb04b2ca` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/netter/apis/dmi-backend/changes/api/v1/actions/:action_id/publish/post.md)

---

[API](https://skmtc.dev/netter/apis/dmi-backend.md) · [All operations](https://skmtc.dev/netter/apis/dmi-backend/llms.txt) · [OpenAPI document](https://skmtc.dev/netter/apis/dmi-backend/revisions/cd6ce639770f?raw)
