---
title: "Subscribe to an FTF"
method: POST
path: "/subscribe"
tags: ["Subscriptions"]
---

# Subscribe to an FTF

`POST /subscribe`

Subscribe to an FTF

## Headers

- `idempotency-key` string, required — Idempotency Key used to ensure that the same request is not processed more than once. If the same request is received more than once, the second request will be ignored. **Each valid new request must have a different Idempotency Key** (*It is recommended to use a UUID as the Idempotency Key*)

## Request body

- SubscriptionBody — SubscriptionBody schema.
  - `amount` number, required — Subscription amount in the currency of the indication
  - `entityCode` string, required — Subscribing entity code
  - `indicationUid` string, required — Uid of the indication to subscribe to.
  - `maturityAction` 'Roll' | 'Hold' | 'Redeem'
  - `source` string — Source of funds
  - `subscriptionDate` string, date, nullable — The date to subscribe to the FTF. A list of possible dates can be found in the subscriptionDates field for the indication. If no date provided, this will default to today.
  - `withdrawal_date` string, date, nullable — Date to withdraw, applicable only if maturity action is set to REDEEM

## Response `200`

Subscription details

- Subscription — Subscription schema.
  - `amount` number, required — Subscription amount
  - `cellCode` string, required — Cell code
  - `currency` string, required — Subscription currency
  - `cutoffDatetime` string, date-time, required — Cut-off datetime for this subscription (timezone aware). Last point at which the subscription's maturity action can be changed before TreasurySpring locks it in.
  - `entityCode` string, required — Subscribing Entity Code
  - `holdingUid` string, nullable — Holding uid
  - `indicationUid` string, nullable — Indication uid
  - `maturityAction` string, required — Maturity action
  - `maturityDate` string, date, required — Date the holding will mature
  - `obligorExposureCode` string, required — Obligor exposure code
  - `obligorExposureName` string, required — Obligor exposure name
  - `productCode` string, required — Product code
  - `releaserEmail` string, nullable — Releaser email
  - `signerEmail` string, nullable — Signer email
  - `source` string, required — Source of funds
  - `status` 'PENDING' | 'ACCEPTED' | 'DECLINED' | 'CANCELLED' | 'EXPIRED', required
  - `subscriptionDate` string, date, required — The date to subscribe to the indication
  - `uid` string, required — Subscription uid
  - `yield` number, nullable — Yield agreed at subscribe time (annualised APY).

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.net/treasuryspring/apis/treasuryspring-public-api.md) · [All operations](https://skmtc.net/treasuryspring/apis/treasuryspring-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/treasuryspring/treasuryspring-public-api/versions/d587dda25444/schema)
