Skip to content

Commit 4892357

Browse files
authored
Merge pull request #337 from recurly/v3-v2021-02-25-30289766625
Generated Latest Changes for v2021-02-25
2 parents ba23d4e + ff88a95 commit 4892357

187 files changed

Lines changed: 6860 additions & 1067 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

openapi/api.yaml

Lines changed: 71 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -179,6 +179,35 @@ info:
179179
header contains an integer value representing the time, measured in
180180
seconds since the UNIX Epoch, at which the request count will be reset.
181181

182+
## Idempotent Requests
183+
184+
Recurly supports idempotent requests via the `Idempotency-Key` header for
185+
`POST`, `PUT`, `PATCH`, and `DELETE` requests. This allows API clients to
186+
safely retry these requests without risk of duplicate operations.
187+
188+
When you send a request with an `Idempotency-Key` header, Recurly stores the
189+
response for **1 hour**. If you send an identical request (same key, method,
190+
path, and API key) within that window, Recurly replays the original response
191+
rather than processing a new one. The replay response includes an
192+
`Idempotency-Prior: true` header.
193+
194+
If a request with the same key is **already in flight** when a second arrives,
195+
the server returns `409 Conflict` with `Recurly-Should-Retry: true` and a
196+
`Retry-After` header indicating how long to wait in seconds before retrying.
197+
198+
> **Note:** `429 Too Many Requests` responses are intentionally **not** cached.
199+
> You may retry freely once your rate limit resets without risk of unintended
200+
> replay behavior.
201+
202+
Keys must be **255 characters or fewer**. Keys exceeding this limit will
203+
receive a `400 Bad Request` response. We recommend using a UUID v4 as your
204+
key to guarantee uniqueness.
205+
206+
> **SDK support:** Native `Idempotency-Key` management (automatic key
207+
> generation, retry handling, and replay detection) is currently supported only
208+
> in the **Ruby SDK**. When using other SDKs or raw HTTP clients, you must
209+
> supply and manage the `Idempotency-Key` header yourself.
210+
182211
## Change Log
183212

184213
A list of changes for this version can be found [in the changelog](https://recurly.com/developers/api/changelog.html#v2021-02-25---current-ga-version).
@@ -18737,6 +18766,14 @@ components:
1873718766
at the root level and must not be included in individual line items.
1873818767
items:
1873918768
"$ref": "#/components/schemas/RecoveryLineItemCreate"
18769+
transaction_descriptor_suffix:
18770+
type: string
18771+
title: Transaction Descriptor Suffix
18772+
maxLength: 255
18773+
description: Optionally overrides the suffix component of the composed transaction
18774+
descriptor. If omitted, the suffix is derived from the subscription's
18775+
plan name or the invoice description, with a Trial prefix on Visa trial
18776+
conversions. Subject to gateway availability and payment method support.
1874018777
required:
1874118778
- currency
1874218779
- due_at
@@ -21585,6 +21622,14 @@ components:
2158521622
with the original subscription.
2158621623
vertex_transaction_type:
2158721624
"$ref": "#/components/schemas/VertexTransactionTypeEnum"
21625+
transaction_descriptor_suffix:
21626+
type: string
21627+
title: Transaction Descriptor Suffix
21628+
maxLength: 255
21629+
description: Optionally overrides the suffix component of the composed transaction
21630+
descriptor. If omitted, the suffix is derived from the subscription's
21631+
plan name or the invoice description, with a Trial prefix on Visa trial
21632+
conversions. Subject to gateway availability and payment method support.
2158821633
required:
2158921634
- currency
2159021635
InvoiceCollect:
@@ -24708,6 +24753,14 @@ components:
2470824753
default: false
2470924754
proration_settings:
2471024755
"$ref": "#/components/schemas/SubscriptionCreateProrationSettings"
24756+
transaction_descriptor_suffix:
24757+
type: string
24758+
title: Transaction Descriptor Suffix
24759+
maxLength: 255
24760+
description: Optionally overrides the suffix component of the composed transaction
24761+
descriptor. If omitted, the suffix is derived from the subscription's
24762+
plan name or the invoice description, with a Trial prefix on Visa trial
24763+
conversions. Subject to gateway availability and payment method support.
2471124764
required:
2471224765
- plan_code
2471324766
- currency
@@ -24927,6 +24980,14 @@ components:
2492724980
billing info to the subscription, all future billing events for the subscription
2492824981
will bill to the specified billing info. `billing_info_id` can ONLY be
2492924982
used for sites utilizing the Wallet feature.
24983+
transaction_descriptor_suffix:
24984+
type: string
24985+
title: Transaction Descriptor Suffix
24986+
maxLength: 255
24987+
description: Optionally overrides the suffix component of the composed transaction
24988+
descriptor. If omitted, the suffix is derived from the subscription's
24989+
plan name or the invoice description, with a Trial prefix on Visa trial
24990+
conversions. Subject to gateway availability and payment method support.
2493024991
SubscriptionPause:
2493124992
type: object
2493224993
properties:
@@ -25786,6 +25847,15 @@ components:
2578625847
including both gateway-level fraud checks and Recurly's fraud detection
2578725848
services. This is useful for trusted transactions where fraud screening
2578825849
is not required.
25850+
descriptor_suffix:
25851+
type: string
25852+
title: Transaction Descriptor Suffix
25853+
maxLength: 255
25854+
description: Optionally overrides the suffix component of the composed
25855+
transaction descriptor. If omitted, the suffix is derived from the
25856+
subscription's plan name or the invoice description, with a Trial
25857+
prefix on Visa trial conversions. Subject to gateway availability
25858+
and payment method support.
2578925859
customer_notes:
2579025860
type: string
2579125861
title: Customer notes
@@ -28120,6 +28190,7 @@ components:
2812028190
- mercadopago
2812128191
- klarna
2812228192
- braintree_google_pay
28193+
- stripe_link
2812328194
CardTypeEnum:
2812428195
type: string
2812528196
enum:

0 commit comments

Comments
 (0)