---
title: "Creating a Link"
method: POST
path: "/v1/projects/{projectId}/forms/{xmlFormId}/public-links"
tags: ["Public Access Links"]
---

# Creating a Link

`POST /v1/projects/{projectId}/forms/{xmlFormId}/public-links`

To create a new Public Access Link to this Form, you must send at least a `displayName` for the resulting Actor. You may also provide `once: true` if you want to create a link that [can only be filled by each respondent once](https://blog.enketo.org/single-submission-surveys/). This setting is enforced by Enketo using local device tracking; the link is still distributable to multiple recipients, and the enforcement can be defeated by using multiple browsers or devices.

You may also optionally provide a `properties` object to set pre-registered [Actor Property](/central-api-accounts-and-users/#actor-properties) values on the Link at creation time.

## Path parameters

- `projectId` number, required
- `xmlFormId` string, required

## Response `200`

OK

- object
  - `createdAt` string, required — ISO date format
  - `displayName` string, required — All `Actor`s, regardless of type, have a display name
  - `id` number, required
  - `type` 'user' | 'field_key' | 'public_link' | 'singleUse', required — the Type of this Actor; typically this will be `user`.
  - `updatedAt` string — ISO date format
  - `deletedAt` string — ISO date format
  - `token` string — If present, this is the Token to include as the `st` query parameter for this `Public Link`. If not present, this `Public Link` has been revoked.
  - `once` boolean — If set to `true`, an Enketo [single submission survey](https://blog.enketo.org/single-submission-surveys/) will be created instead of a standard one, limiting respondents to a single submission each.

## Changes

- **2026-06-02** `dcd5409827e1` — 1 info
  - added the new optional request property `properties`
- **2025-12-20** `022694254f0d` — 1 info
  - api operation id `Creating a Link` removed and replaced with `createLink`
- **2025-10-27** `b11b54eea487` — 1 info
  - removed the non-success response with the status `403`
- **2025-03-13** `e8c2858fd4eb` — 1 warning, 2 info
  - removed the request property `properties`
  - api operation id `createLink` removed and replaced with `Creating a Link`
  - added the non-success response with the status `403`

[Change history](https://skmtc.dev/getodk/apis/odk-central-api/changes/v1/projects/:projectId/forms/:xmlFormId/public-links/post.md)

---

[API](https://skmtc.dev/getodk/apis/odk-central-api.md) · [All operations](https://skmtc.dev/getodk/apis/odk-central-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getodk/odk-central-api/revisions/d4f5ba77f644/schema)
