---
title: "Retrieve a cycle on a subscription"
method: GET
path: "/subscription/{id}/cycle/{cycle_id}"
tags: ["Subscription Payment"]
---

# Retrieve a cycle on a subscription

`GET /subscription/{id}/cycle/{cycle_id}`

Returns a single cycle that belongs to the given subscription. A cycle that doesn't exist — or that belongs to a different account — returns `404 Not Found`.


**Required scope:** <code style="background:#e8f0fe;color:#1a73e8;padding:2px 8px;border-radius:12px;font-size:0.85em">subscription:read</code>

## Path parameters

- `id` string, uuid, required
- `cycle_id` string, uuid, required

## Response `200`

OK

- Cycle
  - `id` string, uuid, required — The cycle's unique identifier.
  - `type` 'RENEWABLE' | 'ONE_TIME_CHARGE' | 'CAPTURE_NOW', required — How the cycle was created: * `RENEWABLE` — part of the recurring schedule. * `ONE_TIME_CHARGE` — an ad-hoc capture added on top of the schedule. * `CAPTURE_NOW` — an immediate one-off capture.
  - `status` 'PENDING' | 'PROCESSING' | 'WAITING' | 'SUCCESS' | 'FAILED' | 'RETRY' | 'FAILOVER' | 'DELETED', required — The current state of the cycle: * `PENDING` — queued, waiting for its scheduled time. * `PROCESSING` — capture is being executed right now. * `WAITING` — waiting on an external dependency (e.g. customer action). * `SUCCESS` — captured successfully. * `FAILED` — capture failed and will not be retried. * `RETRY` — capture failed but is queued for another attempt. * `FAILOVER` — switched to the failover method after the primary failed. * `DELETED` — cancelled before being captured.
  - `value` number, double, required — The amount captured, in euros.
  - `capture_at` string, date-time, required — When the capture is scheduled to run, in UTC (RFC 3339).
  - `description` string — Free-form text shown on the bank statement or in the MB WAY app. Omitted when not set.
  - `key` string — Your internal identifier for the cycle. Omitted when not set.

## Other responses

- `400` — Bad Request
- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `412` — Pre condition failed
- `429` — Too Many Requests
- `500` — Internal Server Error

---

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