---
title: "Changes to Create a portal link"
method: POST
path: "/v1/projects/{projectID}/portal-links"
---

# Changes to Create a portal link

`POST /v1/projects/{projectID}/portal-links`

> Every recorded change to this endpoint, newest first.

## Timeline

Changed in 14 of 69 revisions.

- **2026-08-20** (v3) `c6c04abdfb6f` — 1 info
- **2026-07-20** (v3) `bae289777c91` — 9 breaking, 28 warning, 4 info
- **2026-07-06** (v3) `2e8ab34176ea` — 2 info
- **2026-06-30** (v3) `21fa7ff1d01a` — 3 info
- **2026-03-19** (v3) `990a51cff1cc` — 1 warning, 1 info
- **2025-12-04** (v3) `af9526d13dc8` — 1 info
- **2025-11-27** (v3) `88eaa000293b` — 1 warning, 1 info
- **2025-11-12** (v3) `801a0bbf87fd` — 2 info
- **2025-08-28** (v3) `00864c7aced0` — 2 info
- **2025-08-05** (v3) `180e3a788b5b` — 1 info
- **2024-10-23** (v3) `de665d0e2fc3` — 1 info
- **2024-07-12** (v3) `59336767e79a` — 1 breaking, 1 info
- **2024-03-26** (v3) `28d285e4302c` — 6 warning, 3 info
- **2024-01-30** (v3) `a138f74e9d23` — 2 breaking

## Changes

- **2026-08-20** (v3) `c6c04abdfb6f` — 1 info
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/allOf[#/components/schemas/datastore.Endpoint]/teams_webhook_url` to the response with the `201` status
- **2026-07-20** (v3) `bae289777c91` — 9 breaking, 28 warning, 4 info
  - the response property `allOf[subschema #2]/data` became nullable for the status `400`
  - the response property `allOf[subschema #2]/data` became nullable for the status `401`
  - the response property `allOf[subschema #2]/data` became nullable for the status `404`
  - the response property `allOf[subschema #2]/data/deleted_at` became nullable for the status `201`
  - the response property `allOf[subschema #2]/data/endpoints_metadata/items/` became nullable for the status `201`
  - the `allOf[subschema #2]/data` response's property type/format changed from `object`/`` to ``/`` for status `400`
  - the `allOf[subschema #2]/data` response's property type/format changed from `object`/`` to ``/`` for status `401`
  - the `allOf[subschema #2]/data` response's property type/format changed from `object`/`` to ``/`` for status `404`
  - the `allOf[subschema #2]/data/endpoints_metadata/items/` response's property type/format changed from `object`/`` to ``/`` for status `201`
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/advanced_signatures` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/authentication` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/cb_state` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/content_type` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/created_at` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/deleted_at` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/description` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/events` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/failure_count` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/failure_rate` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/http_timeout` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/mtls_client_cert` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/name` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/owner_id` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/period_failure_rate` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/project_id` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/rate_limit` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/rate_limit_duration` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/retry_count` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/secrets` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/slack_webhook_url` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/status` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/success_count` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/support_email` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/uid` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/updated_at` from the response with the `201` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/url` from the response with the `201` status
  - added the new `` enum value to the `allOf[subschema #2]/data/auth_type` response property for the response status `201`
  - added `#/components/schemas/datastore.Endpoint` to the `allOf[subschema #2]/data/endpoints_metadata/items/` response property `allOf` list for the response status `201`
  - added `#/components/schemas/handlers.Stub` to the `allOf[subschema #2]/data` response property `allOf` list for the response status `400`
  - added `#/components/schemas/handlers.Stub` to the `allOf[subschema #2]/data` response property `allOf` list for the response status `401`
  - …1 more
- **2026-07-06** (v3) `2e8ab34176ea` — 2 info
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/cb_state` to the response with the `201` status
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/retry_count` to the response with the `201` status
- **2026-06-30** (v3) `21fa7ff1d01a` — 3 info
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/failure_count` to the response with the `201` status
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/period_failure_rate` to the response with the `201` status
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/success_count` to the response with the `201` status
- **2026-03-19** (v3) `990a51cff1cc` — 1 warning, 1 info
  - added the new `basic_auth` enum value to the `allOf[subschema #2]/data/endpoints_metadata/items/authentication/type` response property for the response status `201`
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/authentication/basic_auth` to the response with the `201` status
- **2025-12-04** (v3) `af9526d13dc8` — 1 info
  - removed the `pending` enum value from the `allOf[subschema #2]/data/endpoints_metadata/items/status` response property for the response status `201`
- **2025-11-27** (v3) `88eaa000293b` — 1 warning, 1 info
  - added the new `oauth2` enum value to the `allOf[subschema #2]/data/endpoints_metadata/items/authentication/type` response property for the response status `201`
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/authentication/oauth2` to the response with the `201` status
- **2025-11-12** (v3) `801a0bbf87fd` — 2 info
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/content_type` to the response with the `201` status
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/mtls_client_cert` to the response with the `201` status
- **2025-08-28** (v3) `00864c7aced0` — 2 info
  - added the new optional request property `auth_type`
  - added the optional property `allOf[subschema #2]/data/auth_type` to the response with the `201` status
- **2025-08-05** (v3) `180e3a788b5b` — 1 info
  - added the optional property `allOf[subschema #2]/data/auth_key` to the response with the `201` status
- **2024-10-23** (v3) `de665d0e2fc3` — 1 info
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/failure_rate` to the response with the `201` status
- **2024-07-12** (v3) `59336767e79a` — 1 breaking, 1 info
  - removed the success response with the status `200`
  - added the success response with the status `201`
- **2024-03-26** (v3) `28d285e4302c` — 6 warning, 3 info
  - removed the optional property `allOf[#/components/schemas/util.ServerResponse]/data` from the response with the `200` status
  - removed the optional property `allOf[#/components/schemas/util.ServerResponse]/data` from the response with the `400` status
  - removed the optional property `allOf[#/components/schemas/util.ServerResponse]/data` from the response with the `401` status
  - removed the optional property `allOf[#/components/schemas/util.ServerResponse]/data` from the response with the `404` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/target_url` from the response with the `200` status
  - removed the optional property `allOf[subschema #2]/data/endpoints_metadata/items/title` from the response with the `200` status
  - api operation id `CreatePortalLink` was added
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/name` to the response with the `200` status
  - added the optional property `allOf[subschema #2]/data/endpoints_metadata/items/url` to the response with the `200` status
- **2024-01-30** (v3) `a138f74e9d23` — 2 breaking
  - the `allOf[subschema #2]/data/endpoints_metadata/items/http_timeout` response's property type/format changed from `string`/`` to `integer`/`` for status `200`
  - the `allOf[subschema #2]/data/endpoints_metadata/items/rate_limit_duration` response's property type/format changed from `string`/`` to `integer`/`` for status `200`

---

[Operation](https://skmtc.dev/getconvoy/apis/convoy-api-reference/docs/v1/projects/:projectID/portal-links/post.md) · [API](https://skmtc.dev/getconvoy/apis/convoy-api-reference.md) · [Page](https://skmtc.dev/getconvoy/apis/convoy-api-reference/changes/v1/projects/:projectID/portal-links/post)
