---
title: "Update Workout"
method: PUT
path: "/workouts/{workout_id}"
tags: ["Workout"]
---

# Update Workout

`PUT /workouts/{workout_id}`

## Request

- Base URL: `https://api.wodify.com/v1`
- URL: `https://api.wodify.com/v1/workouts/{workout_id}`
- Auth: none declared. Required headers: `x-api-key`

Update a Workout.

## Path parameters

- `workout_id` integer, required

## Headers

- `x-api-key` string, required

## Request body

- RequestWorkoutPut: Data to update a Workout
  - `date` string, date: Date of the Workout
  - `name` string: Name of the Workout. If no value is provided, the Workout name will be Program name and Date.
  - `notes` string: Notes for the Workout
  - `is_workout_visible_to_all_athletes` string: Defaults to the Programs secure programming setting. Can only be changed from the default value of the program if Membership Enforcement is enabled.
  - `should_publish_to_blog` string: Indicates if the Workout should be published externally. Only applicable if a Wordpress site is already linked, or an API is already set up.
  - `internal_publish_time` string: Time the Workout should be published in Wodify. If no value is provided, will use the current date time.
  - `internal_publish_date` string, date: Date the Workout should be published in Wodify. If no value is provided, will use the current date time.
  - `blog_publish_date` string, date: Date the Workout should be published in to external blogs. Only applicable if IsPublishExternally is true. If publishing externally and no datetime is provided, the current datetime will be used.
  - `blog_publish_time` string: Time the Workout should be published in to external blogs. Only applicable if IsPublishExternally is true. If publishing externally and no datetime is provided, the current datetime will be used.

## Response `200`

Data for the created workout

- WorkoutAPI: data for single Workout of the Day (WOD)
  - `id` integer, required: WOD (Header) ID
  - `name` string: Workout Name
  - `date` string, date: Date the Workout applies to
  - `internal_publish_date` string, date: Date the Workout should be published in Wodify. If no value is provided, will use the current date time.
  - `internal_publish_time` string, time: Time the Workout should be published in Wodify. If no value is provided, will use the current date time.
  - `should_publish_to_blog` boolean: Previously &#39;ShouldPublish&#39;
  - `blog_publish_date` string, date: Date the Workout should be published in to external blogs. Only applicable if IsPublishExternally is true. If publishing externally and no datetime is provided, the current datetime will be used.
  - `blog_publish_time` string, time: Time the Workout should be published in to external blogs. Only applicable if IsPublishExternally is true. If publishing externally and no datetime is provided, the current datetime will be used.
  - `comment` string: WODHeader&#39;s Comments
  - `linkified_comment` string: Linkified WODHeader Comments
  - `ownership_level_id` integer: Identifies the Ownership Level of the WOD Header record
  - `ownership_level` string: Ownership Level of the WOD Header record
  - `program_id` integer: Program Id
  - `program` string: Program name
  - `copied_from_workout_id` integer: Identifies the Workout record this record was copied from, if this record was copied from another Workout
  - `copied_from_workout` string: name the Workout record this record was copied from, if this record was copied from another Workout
  - `secure_programming_enabled` boolean: Flag to control whether or not &#39;secure programming&#39; is enabled for the WOD or not (default value = false).
  - `created` Created: Record creation data.
    - `created_by_id` integer: Unique ID of the user that created the record.
    - `created_by` string: Name of the user that created the record.
    - `created_on_datetime` string, date-time: Datetime on which the record was created.
  - `updated` Updated: Update info
    - `updated_by_id` integer: Unique ID of the user that last updated the record.
    - `updated_by` string: Name of the user that most recently updated the record.
    - `updated_on_datetime` string, date-time: Datetime on which the record was last updated.
  - `notes` string: notes
  - `tags` string[]: Tags
  - `locations` LocationAPI[]: Locations Workout is applied to
    - `location_id` integer: Location Id
    - `location` string: Location name
  - `workout_components` WorkoutComponentAPI[]: Workout Components
    - `id` integer, required: WOD Component ID
    - `name` string: Name
    - `order` integer: WOD Component Order
    - `description` string: Component Description
    - `prefix_text` string: Prefix Text
    - `comment` string, required: Comment
    - `linkified_comment` string: Linkified Comment
    - `component_id` integer: Component Id
    - `component` string: Component
    - `component_system_comment` string: Component System Comment
    - `component_type_id` integer: Component Type
    - `component_type` string: Component Type
    - `result_type_id` integer, required: ResultType tied to Component
    - `result_type` string, required: ResultType tied to Component
    - `each_round_type_id` integer: Component Each Round Type Id
    - `each_round_type` string: Component Each Round Type
    - `rounds` integer: Component rounds
    - `scaling_id` integer: Component Scaling. 1 - No Scaling 2 - Scaled / RX 3 - Scaled / RX / RX+
    - `scaling` string: Component Scaling
    - `sets` integer: Measure Sets
    - `reps` integer: Measure Reps
    - `is_max_effort` boolean: Measure Is Max Effort
    - `rep_scheme` string: Rep Scheme
    - `uom_weight_id` integer: Units of Measurement
    - `uom_weight` string: Uom Weight Label
    - `uom_distance_id` integer: Measure UOMDistance
    - `uom_distance` string: Uom Distance Label
    - `file_storage_id` integer: FileStorage Identifier. Used when VideoURL is empty
    - `is_section` boolean, required: Indicates if it is a Workout Section
    - `section_id` integer: section id
    - `is_benchmark` boolean: Is Benchmark
    - `is_video_url` boolean, required: Indicates if the component is a VideoURL
    - `video_name` string: Video Name
    - `video_url` string, required: When the component is a Video URL, the url is saved here
    - `video_url_comment` string, required: A Comment related with the Video URL
    - `is_image` boolean, required: Indicates if the component is an image
    - `image_id` integer: WOD Image ID
    - `image_url` string, required: When the component is an Im URL, the url is saved here
    - `image_file_name` string, required: Image File Name
    - `image_comment` string, required: Caption that can be inserted on the image
    - `created` Created: Record creation data.
      - `created_by_id` integer: Unique ID of the user that created the record.
      - `created_by` string: Name of the user that created the record.
      - `created_on_datetime` string, date-time: Datetime on which the record was created.
    - `updated` Updated: Update info
      - `updated_by_id` integer: Unique ID of the user that last updated the record.
      - `updated_by` string: Name of the user that most recently updated the record.
      - `updated_on_datetime` string, date-time: Datetime on which the record was last updated.
    - `videos` WODComponentMediaAPI[]: list of videos in this Workout Component
      - `id` integer, required: Id
      - `name` string: Media Name
      - `url` string: This is filled when FileStorageId is empty
      - `file_storage_id` integer: FileStorage Identifier. Used when MediaURL is empty
      - `comment` string: Comment
      - `created` Created: Record creation data.
        - `created_by_id` integer: Unique ID of the user that created the record.
        - `created_by` string: Name of the user that created the record.
        - `created_on_datetime` string, date-time: Datetime on which the record was created.
      - `updated` Updated: Update info
        - `updated_by_id` integer: Unique ID of the user that last updated the record.
        - `updated_by` string: Name of the user that most recently updated the record.
        - `updated_on_datetime` string, date-time: Datetime on which the record was last updated.
    - `images` WODComponentMediaAPI[]: list of Images in this Workout Component
      - `id` integer, required: Id
      - `name` string: Media Name
      - `url` string: This is filled when FileStorageId is empty
      - `file_storage_id` integer: FileStorage Identifier. Used when MediaURL is empty
      - `comment` string: Comment
      - `created` Created: Record creation data.
        - `created_by_id` integer: Unique ID of the user that created the record.
        - `created_by` string: Name of the user that created the record.
        - `created_on_datetime` string, date-time: Datetime on which the record was created.
      - `updated` Updated: Update info
        - `updated_by_id` integer: Unique ID of the user that last updated the record.
        - `updated_by` string: Name of the user that most recently updated the record.
        - `updated_on_datetime` string, date-time: Datetime on which the record was last updated.
    - `child_components` string[]: if is TotalWeightLifting, return child components as a text list
  - `wodify_validation_result` string: The purpose of this attribute is to save any UserException message, that is, and user friendly message that should be shown to the end user.

---

[API](https://skmtc.dev/wodify/apis/wod.md) - [All operations](https://skmtc.dev/wodify/apis/wod/llms.txt) - [OpenAPI document](https://skmtc.dev/wodify/apis/wod/revisions/edb6e9a0759b?raw)
