---
title: "Create a new Schema Response"
method: POST
path: "/schema_responses/"
tags: ["Schema Responses"]
---

# Create a new Schema Response

`POST /schema_responses/`

This endpoint creates a new Schema Response with an `in_progress` state. A new response can only be created if the current schema response is in an `approved` state.
#### Returns
Returns a JSON object with a `data` key containing an updated representation of the requested Schema Response, if the request is successful.
#### Errors
If the request is unsuccessful, an `errors` key containing information about the failure will be returned. Refer to the [list of error codes](#tag/Errors-and-Error-Codes) to understand why this request may have failed.

## Request body

- object
  - `id` string — The unique identifier of the Schema Response.
  - `type` string, required — The type identifier of the Schema Response (`schema-response`).
  - `attributes` object, required — The properties of the Schema Response.
    - `revision_justification` string — A user provided string representing the reason a new Schema Response was needed.
    - `date_created` integer — The date the Schema Response was created
    - `date_submitted` integer — The date the Schema Response was submitted for approval.
    - `date_modified` integer — The date the Schema Response was most recently changed.
    - `revision_responses` object — A dictionary object representing responses to to the revision where the key is the block key for that the response. For example in the registration response `{"q1": "Answer 1"}` the block key is `q1`..
    - `reviews_state` 'initial' | 'in_progress' | 'approved' | 'pending_moderation' — A string that represents Schema Response state. `initial` is the state of a Schema Response on a newly registered Registration, to edit a Schema Response you must create a Schema Response Action that triggers a new submission.
    - `is_pending_current_user_approval` boolean — A bool that represents whether the Schema Response needs the current user to approve the state transition.
    - `is_original_response` boolean — A bool that represents whether the Schema Response is the original one that was made when the registration was created.
    - `updated_response_keys` unknown[] — A list of strings which the response keys for Registration Response Blocks that were updated from the previous schema.
      - unknown
  - `links` object — URLs to alternative representations of the Schema Response entity.
    - `self` string, URL — A link to the detail page for a Schema Response.
  - `relationships` object — Links to other entities or entity collections that have a relationship to the file entity.
    - `actions` string, URL — A link to the Registration Schema Actions endpoint for this Schema Response.
    - `registration` string, URL — A link to the Registration for this Schema Response.
    - `registration_schema` string, URL — A link to the Registration Schema for this Schema Response.
    - `initiated_by` string, URL — A link to the User who initiated the creation of the Schema Response.

## Response `201`

OK

---

[API](https://skmtc.net/osf/apis/osf-apiv2-documentation.md) · [All operations](https://skmtc.net/osf/apis/osf-apiv2-documentation/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/osf/osf-apiv2-documentation/revisions/ca701048eb0d/schema)
