<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Api on 1Stop</title><link>https://blogs.rameskum.com/tags/api/</link><description>Recent content in Api on 1Stop</description><image><title>1Stop</title><url>https://blogs.rameskum.com/images/og-default.png</url><link>https://blogs.rameskum.com/images/og-default.png</link></image><generator>Hugo</generator><language>en-us</language><lastBuildDate>Fri, 25 Sep 2026 09:20:00 -0400</lastBuildDate><atom:link href="https://blogs.rameskum.com/tags/api/index.xml" rel="self" type="application/rss+xml"/><item><title>Exactly-Once POSTs: Idempotency Keys in Spring Boot (Stripe-Style)</title><link>https://blogs.rameskum.com/posts/idempotency-keys-spring-boot-stripe-style/</link><pubDate>Fri, 25 Sep 2026 09:20:00 -0400</pubDate><guid>https://blogs.rameskum.com/posts/idempotency-keys-spring-boot-stripe-style/</guid><description>Retried POSTs double-charge customers. Stripe solved it with the Idempotency-Key header — build the same thing in Spring Boot: DB-backed key store, request fingerprinting, race-safe claiming, response replay, and TTL cleanup, with tests.</description></item></channel></rss>