๋ชจ๋ฐ์ผ ์ฑ์ฉ API ๋ฒ์ ๊ด๋ฆฌ: ์๋ํฌ์ธํธ๋ฅผ ์์ ํ๊ฒ ์งํ์ํค๊ธฐ
๋ชจ๋ฐ์ผ ์ฑ์ฉ API ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ์ฝ๊ฒ ์ค๋ช ํฉ๋๋ค. ๋จ๊ณ์ ๋กค์์ ๊ณํ, ํ์ ํธํ ๋ณ๊ฒฝ, ํ๊ธฐ ์ ์ฐจ๋ฅผ ํตํด ์ค๋๋ ์ฑ ๋ฒ์ ์ด ๊ณ์ ๋์ํ๋๋ก ํ๋ ๋ฐฉ๋ฒ์ ์๋ดํฉ๋๋ค.

์ API ๋ณ๊ฒฝ์ด ๋ชจ๋ฐ์ผ ์ฌ์ฉ์์๊ฒ ๋ฌธ์ ๋ฅผ ์ผ์ผํค๋
๋ชจ๋ฐ์ผ ์ฑ์ ํ ๋ฒ์ ๋ชจ๋ ์ ๋ฐ์ดํธ๋์ง ์์ต๋๋ค. ์ค๋ ์์ ์ฌํญ์ ๋ฐฐํฌํด๋ ๋ง์ ์ฌ์ฉ์๊ฐ ๋ฉฐ์น ๋๋ ๋ช ์ฃผ ๋์ ์ด์ ๋ฒ์ ์ ๊ณ์ ์ฌ์ฉํฉ๋๋ค. ์๋ ์ ๋ฐ์ดํธ๋ฅผ ๋๋ ์ฌ๋๋ ์๊ณ , ์ ์ฅ๊ณต๊ฐ์ด ๋ถ์กฑํ ์ฌ๋๋ ์๊ณ , ๋จ์ํ ์ฑ์ ์์ฃผ ์ด์ง ์๋ ์ฌ๋๋ ์์ต๋๋ค. ์ฑ์คํ ์ด ์ฌ์ฌ ์๊ฐ๊ณผ ๋จ๊ณ์ ๋ฐฐํฌ๋ ์ง์ฐ์ ๋ํฉ๋๋ค.
์ด ๊ฒฉ์ฐจ๊ฐ ์ค์ํ ์ด์ ๋ ๋ณดํต ๋ฐฑ์๋๋ ๋ชจ๋ฐ์ผ ํด๋ผ์ด์ธํธ๋ณด๋ค ๋ ๋น ๋ฅด๊ฒ ๋ณํ๊ธฐ ๋๋ฌธ์ ๋๋ค. ์๋ฒ๊ฐ ์๋ํฌ์ธํธ๋ฅผ ๋ณ๊ฒฝํ๋ฉด ์ด์ ์ฑ์ด ๋์ผํ ํธ์ถ์ ๊ณ์ํ ๋ ์ฑ์ ์ฌ์ฉ์์ ๊ธฐ๊ธฐ์์ ์๋ฌด๊ฒ๋ ๋ฐ๋ ๊ฒ์ด ์๋๋ผ๋ ๋์ํ์ง ์์ ์ ์์ต๋๋ค.
๋ฌธ์ ๊ฐ ๊น๋ํ ์ค๋ฅ ๋ฉ์์ง๋ก ๋ํ๋๋ ๊ฒฝ์ฐ๋ ๋๋ญ ๋๋ค. ๋ณดํต์ ์ผ์์ ์ธ ์ ํ ๋ฌธ์ ๋ก ๋ณด์ ๋๋ค:
- ๋ฐฑ์๋ ๋ฆด๋ฆฌ์ค ์ดํ ๋ก๊ทธ์ธ์ด๋ ๊ฐ์ ์ด ์คํจํจ
- ํ๋๊ฐ ์ด๋ฆ์ด ๋ฐ๋๊ฑฐ๋ ์ด๋ํด์ ๋ชฉ๋ก์ด ๋น์ด ๋ณด์
- ๋๋ฝ๋ ๊ฐ์ ์ฝ์ ๋ ์ฑ์ด ์ถฉ๋ํจ
- ๊ฒ์ฆ์ด ์๊ฒฉํด์ ธ์ ๊ฒฐ์ ๊ฐ ์คํจํจ
- ์๋ต ํํ๊ฐ ๋ฐ๋์ด ๊ธฐ๋ฅ์ด ์กฐ์ฉํ ์ฌ๋ผ์ง
๋ฒ์ ๊ด๋ฆฌ์ ์์ง๋ ๊ฐ๋จํฉ๋๋ค: ๋ชจ๋ ์ฌ์ฉ์์๊ฒ ์ฆ์ ์ ๋ฐ์ดํธ๋ฅผ ๊ฐ์ํ์ง ์๊ณ ๋ ์๋ฒ ๊ฐ์ ์ ๊ณ์ ๋ฐฐํฌํ ์ ์๊ฒ ํ์ธ์. API๋ฅผ ์ฅ๊ธฐ๊ฐ ์ ์ง๋๋ ๊ณ์ฝ์ผ๋ก ์ทจ๊ธํ์ธ์. ์ ์ฑ ๋ฒ์ ์ ์ ์๋ฒ ๋์๊ณผ ํจ๊ป ๋์ํด์ผ ํ๊ณ , ์ค๋๋ ๋ฒ์ ์ ํ์ค์ ์ธ ์ ๋ฐ์ดํธ ์ฃผ๊ธฐ ๋์ ์ถฉ๋ถํ ์๋ํด์ผ ํฉ๋๋ค.
๋๋ถ๋ถ์ ์๋น์์ฉ ์ฑ์ ๋์์ ์ฌ๋ฌ ์ฑ ๋ฒ์ ์ ์ง์ํด์ผ ํ๋ค๊ณ ์์ํ์ธ์. ๋ด๋ถ ์ฑ์ ๋๋๋ก ๋ ๋น ๋ฅด๊ฒ ์ด๋ํ ์ ์์ง๋ง, ์ฌ์ ํ ์ฆ๊ฐ์ ์ผ ๋๋ ๋๋ญ ๋๋ค. ์ค๋ณต ์ง์์ ๊ณํํ๋ฉด ๋จ๊ณ์ ๋กค์์์ด ํ์จํ๊ฒ ์ ์ง๋๊ณ ๋ชจ๋ ๋ฐฑ์๋ ๋ฆด๋ฆฌ์ค๊ฐ ์ง์ ํญ์ฃผ๋ก ๋ฐ๋๋ ์ผ์ ๋ง์ ์ ์์ต๋๋ค.
API ๊ณ์ฝ์์ โํธํโ์ด ์๋ฏธํ๋ ๊ฒ
API ๊ณ์ฝ์ ๋ชจ๋ฐ์ผ ์ฑ๊ณผ ์๋ฒ ์ฌ์ด์ ์ฝ์์ ๋๋ค: ์ด๋ค URL์ ํธ์ถํ ์ง, ์ด๋ค ์ ๋ ฅ์ ํ์ฉํ ์ง, ์๋ต์ ์ด๋ป๊ฒ ์๊ฒผ๋์ง, ๊ฐ ํ๋๊ฐ ๋ฌด์์ ์๋ฏธํ๋์ง ๋ฑ์ ๋๋ค. ์ฑ์ด ๊ทธ ์ฝ์์ ์์กดํ๊ณ ์๋ฒ๊ฐ ๊ทธ๊ฒ์ ๋ฐ๊พธ๋ฉด ์ฌ์ฉ์๋ ์ถฉ๋, ๋๋ฝ๋ ๋ฐ์ดํฐ, ์๋ํ์ง ์๋ ๊ธฐ๋ฅ์ผ๋ก ์ด๋ฅผ ๋๋๋๋ค.
๋ณ๊ฒฝ์ด ํธํ๋๋ค๋ ๊ฒ์ ์ค๋๋ ์ฑ ๋ฒ์ ์ด ์ฝ๋ ๋ณ๊ฒฝ ์์ด API๋ฅผ ๊ณ์ ์ฌ์ฉํ ์ ์์ ๋๋ฅผ ๋งํฉ๋๋ค. ์ค์ ๋ก ์ด๊ฒ์ ์๋ฒ๊ฐ ์ค๋๋ ์ฑ์ด ๋ณด๋ด๋ ๊ฒ์ ์ดํดํ๊ณ , ์ค๋๋ ์ฑ์ด ํ์ฑํ ์ ์๋ ์๋ต์ ๊ณ์ ๋ฐํํ๋ค๋ ์๋ฏธ์ ๋๋ค.
์์ ํ ๋ณ๊ฒฝ๊ณผ ์ํํ ๋ณ๊ฒฝ์ ๋น ๋ฅด๊ฒ ๊ตฌ๋ถํ๋ ๋ฐฉ๋ฒ:
- ํ๊ดด์ ๋ณ๊ฒฝ(Breaking changes): ํ๋ ์ ๊ฑฐ ๋๋ ์ด๋ฆ ๋ณ๊ฒฝ, ํ์ ๋ณ๊ฒฝ(์ซ์โ๋ฌธ์์ด), ์ ํ์ ํ๋๋ฅผ ํ์๋ก ๋ณ๊ฒฝ, ์ค๋ฅ ํ์ ๋ณ๊ฒฝ, ์ค๋๋ ์ฑ์ด ์ถฉ์กฑํ์ง ๋ชปํ๋ ๋ฐฉ์์ผ๋ก ๊ฒ์ฆ ๊ฐํ.
- ๋์ฒด๋ก ์์ ํ ๋ณ๊ฒฝ: ์๋ก์ด ์ ํ์ ํ๋ ์ถ๊ฐ, ์ ์๋ํฌ์ธํธ ์ถ๊ฐ, ๊ตฌํ/์ ํ ์์ฒญ ํ์ ๋ชจ๋ ์์ฉ, ์ ์ด๊ฑฐํ ๊ฐ ์ถ๊ฐ(์ฑ์ด ์ ์ ์๋ ๊ฐ์ โ๊ธฐํโ๋ก ์ฒ๋ฆฌํ ๊ฒฝ์ฐ).
ํธํ์ฑ์๋ ์ข ๋ฃ ๊ณํ๋ ํ์ํฉ๋๋ค. ์ค๋๋ ๋์์ ์ข ๋ฃํ๋ ๊ฒ์ ๊ด์ฐฎ์ง๋ง ์๋ฅผ ๋ค์ด โv2 ๋ฐฐํฌ ํ 90์ผ๊ฐ v1 ์ ์งโ์ฒ๋ผ ์ผ์ ์ด ์ ํด์ ธ ์์ด์ผ ์ฌ์ฉ์๋ฅผ ๋๋ผ๊ฒ ํ์ง ์๊ณ ์งํํ ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ธ ๋ฒ์ ๊ด๋ฆฌ ์ ๊ทผ๋ฒ๊ณผ ์ ์ถฉ์
๋ฒ์ ๊ด๋ฆฌ๋ ์ด์ ๋น๋์ ์์ ์ ์ธ ๊ณ์ฝ์ ์ ๊ณตํ๋ฉด์ ์์ผ๋ก ๋์๊ฐ๋ ์์ ์ ๋๋ค. ๋ช ๊ฐ์ง ์ผ๋ฐ์ ์ธ ์ ๊ทผ๋ฒ์ด ์์ผ๋ฉฐ, ๊ฐ๊ฐ ๋ณต์ก๋๋ฅผ ๋ค๋ฅธ ๊ณณ์ ๋ก๋๋ค.
URL ๋ฒ์ ๊ด๋ฆฌ
๊ฒฝ๋ก์ ๋ฒ์ ์ ๋ฃ๋ ๋ฐฉ์(/v1/๊ณผ /v2/์ฒ๋ผ)์ ๊ฐ์ฅ ๋ณด๊ธฐ ์ฝ๊ณ ๋๋ฒ๊น
ํ๊ธฐ ์ข์ต๋๋ค. ๋ํ ์บ์ฑ, ๋ก๊น
, ๋ผ์ฐํ
๊ณผ๋ ์ ์๋ํฉ๋๋ค. ๋จ์ ์ ์ฐจ์ด๊ฐ ์์๋ ํ์ด ๋ณ๋ ฌ ํธ๋ค๋ฌ๋ฅผ ๋ ์ค๋ ์ ์งํ๊ฒ ๋ ์ ์๋ค๋ ์ ์
๋๋ค.
ํค๋ ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ
ํด๋ผ์ด์ธํธ๊ฐ ํค๋(์: Accept ํค๋๋ ์ปค์คํ
ํค๋)์ ๋ฒ์ ์ ๋ณด๋
๋๋ค. URL์ด ๊น๋ํ๊ฒ ์ ์ง๋๊ณ ๋ชจ๋ ๊ฒฝ๋ก๋ฅผ ๋ฐ๊ฟ ํ์๊ฐ ์์ต๋๋ค. ๋จ์ ์ ๊ฐ์์ฑ์
๋๋ค: ํ๋ก์, ๋ก๊ทธ, ์ฌ๋์ด ๋ฒ์ ์ ๋์น๊ธฐ ์ฝ๊ณ ๋ชจ๋ฐ์ผ ํด๋ผ์ด์ธํธ๊ฐ ๋ชจ๋ ์์ฒญ์ ํค๋๋ฅผ ํ์คํ ์ค์ ํด์ผ ํฉ๋๋ค.
์ฟผ๋ฆฌ ํ๋ผ๋ฏธํฐ ๋ฒ์ ๊ด๋ฆฌ
?v=2์ฒ๋ผ ์ฟผ๋ฆฌ ํ๋ผ๋ฏธํฐ๋ก ๋ฒ์ ์ ํ์ํ๋ ๊ฒ์ ๊ฐ๋จํด ๋ณด์ด์ง๋ง ์ง์ ๋ถํด์ง๊ธฐ ์ฝ์ต๋๋ค. ํ๋ผ๋ฏธํฐ๊ฐ ๋ถ๋งํฌ, ๋ถ์ ๋๊ตฌ, ์คํฌ๋ฆฝํธ๋ก ๋ณต์ฌ๋์ด ์ฌ๋ฌ โ๋ฒ์ โ์ด ๋ ๋๊ฒ ๋๊ณ ์์ ๊ถ์ด ๋ถ๋ช
ํํด์ง ์ ์์ต๋๋ค.
๊ฐ๋จ ๋น๊ต:
- URL ๋ฒ์ ๊ด๋ฆฌ: ๊ฒ์ฌํ๊ธฐ ๊ฐ์ฅ ์ฌ์ฐ๋ ์ค๋ ์ง์๋๋ ๋ณ๋ ฌ API๋ฅผ ๋ง๋ค ์ ์์
- ํค๋ ๋ฒ์ ๊ด๋ฆฌ: URL์ด ๊น๋ํ์ง๋ง ๋ฌธ์ ํด๊ฒฐ์ด ๋ ์ด๋ ค์
- ์ฟผ๋ฆฌ ๋ฒ์ ๊ด๋ฆฌ: ์์์ ๋น ๋ฅด๋ ์ค์ฉ๋๊ธฐ ์ฌ์
๊ธฐ๋ฅ ํ๋๊ทธ๋ ๋ค๋ฅธ ๋๊ตฌ์ ๋๋ค. ๋์ผํ ๊ณ์ฝ ๋ค์์ ๋์์ ๋ฐ๊ฟ ์ ์๊ฒ ํด์ฃผ์ง๋ง(์: ์๋ก์ด ๋ญํน ์๊ณ ๋ฆฌ์ฆ) ์์ฒญ ๋๋ ์๋ต ํํ๋ฅผ ๋ฐ๊ฟ์ผ ํ ๋ ๋ฒ์ ๊ด๋ฆฌ๋ฅผ ๋์ฒดํ์ง๋ ๋ชปํฉ๋๋ค.
ํ๋์ ์ ๊ทผ๋ฒ์ ์ ํํ๊ณ ์งํค์ธ์. ์ผ๊ด์ฑ์ด โ์๋ฒฝํโ ์ ํ๋ณด๋ค ๋ ์ค์ํฉ๋๋ค.
ํ์ ํธํ ๋ณ๊ฒฝ์ ์ํ ๊ฒฝํ ๋ฒ์น
๊ฐ์ฅ ์์ ํ ์ฌ๊ณ ๋ฐฉ์์: ์ค๋๋ ํด๋ผ์ด์ธํธ๊ฐ ์ ๊ธฐ๋ฅ์ ์ ํ ์์ง ๋ชปํ๋๋ผ๋ ๊ณ์ ์๋ํด์ผ ํ๋ค๋ ๊ฒ์ ๋๋ค. ๋ณดํต์ ๊ธฐ์กด ๊ฒ์ ๋ฐ๊พธ๊ธฐ๋ณด๋ค ์ถ๊ฐํ๋ ํธ์ด ์์ ํฉ๋๋ค.
์ถ๊ฐ์ ๋ณ๊ฒฝ์ ์ฐ์ ํ์ธ์: ์ ํ๋, ์ ์๋ํฌ์ธํธ, ์ ์ ํ์ ํ๋ผ๋ฏธํฐ. ๋ฌด์ธ๊ฐ๋ฅผ ์ถ๊ฐํ ๋ ์๋ฒ ์ ์ฅ์์ ์ง์ ์ผ๋ก ์ ํ์ ์ผ๋ก ๋ง๋์ธ์. ์ค๋๋ ์ฑ์ด ๊ทธ๊ฒ์ ๋ณด๋ด์ง ์์ผ๋ฉด ์๋ฒ๋ ์ด์ ๊ณผ ์ ํํ ๋์ผํ๊ฒ ๋์ํด์ผ ํฉ๋๋ค.
๋ช ๊ฐ์ง ์ต๊ด์ด ๋๋ถ๋ถ์ ๋ฌธ์ ๋ฅผ ์๋ฐฉํฉ๋๋ค:
- ํ๋๋ฅผ ์ถ๊ฐํ๋ ๊ธฐ์กด ํ๋์ ํ์ ์ด๋ ์๋ฏธ๋ฅผ ๋ฐ๊พธ์ง ๋ง์ธ์.
- ๋๋ฝ๋ ์ ๋ ฅ์ ์ ์์ผ๋ก ๊ฐ์ฃผํ๊ณ ํฉ๋ฆฌ์ ์ธ ๊ธฐ๋ณธ๊ฐ์ ์ฌ์ฉํ์ธ์.
- ์ ์ ์๋ ์์ฒญ ํ๋๋ ๋ฌด์ํด ์ค๋๋ ํด๋ผ์ด์ธํธ์ ์ ํด๋ผ์ด์ธํธ๊ฐ ๊ณต์กดํ ์ ์๊ฒ ํ์ธ์.
- ์ค๋ฅ ํฌ๋งท์ ์์ ์ ์ผ๋ก ์ ์งํ์ธ์. ๋ณ๊ฒฝ์ด ๋ถ๊ฐํผํ๋ฉด ์ค๋ฅ ํ์ด๋ก๋์ ๋ฒ์ ์ ๋์ ํ์ธ์.
- ๋์์ ๋ฐ๊ฟ์ผ ํ๋ค๋ฉด ์๋ก์ด ์๋ํฌ์ธํธ๋ ๋ฒ์ ์ ๋์ ํ์ธ์. "์กฐ์ฉํ" ์์ ์ผ๋ก ์ฒ๋ฆฌํ์ง ๋ง์ธ์.
๊ธฐ์กด ํ๋์ ์๋ฏธ๋ฅผ ๋ฒ์ ์์ด ๋ฐ๊พธ๋ ๊ฒ์ ํผํ์ธ์. ์๋ฅผ ๋ค์ด status=1์ด ์์ ์๋ โ๊ฒฐ์ ๋จโ์ ์๋ฏธํ๋๋ฐ ์ด๋ฅผ โ์น์ธ๋จโ์ผ๋ก ์ฌ์ฌ์ฉํ๋ฉด ์ค๋๋ ์ฑ์ ์๋ชป๋ ๊ฒฐ์ ์ ๋ด๋ฆฌ๊ฒ ๋ฉ๋๋ค.
์ด๋ฆ ๋ณ๊ฒฝ๊ณผ ์ ๊ฑฐ๋ ๊ณํ์ด ํ์ํฉ๋๋ค. ๊ฐ์ฅ ์์ ํ ํจํด์ ์ค๋๋ ํ๋๋ฅผ ์ ์งํ๋ฉด์ ์ ํ๋๋ฅผ ๋ณํํด ์ ์ ๋์ ๋ ๋ค ์ฑ์ฐ๊ณ , ์์ฒญ์์๋ ๋ ๋ค ์์ฉํ๋ฉฐ ๋๊ฐ ์ฌ์ ํ ์ค๋๋ ํ๋๋ฅผ ์ฌ์ฉํ๋์ง ๋ก๊น ํ๋ ๊ฒ์ ๋๋ค. ํ๊ธฐ ๊ธฐ๊ฐ์ด ๋๋ ํ์๋ง ์ค๋๋ ํ๋๋ฅผ ์ ๊ฑฐํ์ธ์.
์์ง๋ง ๊ฐ๋ ฅํ ์ต๊ด: ์๋ก ํ์ํ ํ์ ๋น์ฆ๋์ค ๊ท์น์ด ์๊ธฐ๋ฉด ์ฒ์๋ถํฐ ํด๋ผ์ด์ธํธ์๊ฒ ์ฑ ์์ ์ง์ฐ์ง ๋ง์ธ์. ๋จผ์ ์๋ฒ์์ ๊ธฐ๋ณธ ๋์์ผ๋ก ๊ท์น์ ์ ์ฉํ ๋ค ๋๋ถ๋ถ์ ์ฌ์ฉ์๊ฐ ์ ๋ฐ์ดํธํ ๋ค์ ํด๋ผ์ด์ธํธ๊ฐ ์ ๊ฐ์ ๋ณด๋ด๋๋ก ํ์ธ์.
๊ฐ๋จํ ๋ฒ์ ๋ฐ ํ๊ธฐ ์ ์ฑ ์ค์
๊ท์น์ ๋จ์กฐ๋กญ๊ณ ๋ฌธ์ํ๋์ด ์์ ๋ ๊ฐ์ฅ ์ ์๋ํฉ๋๋ค. ์ ์ฑ ์ ์ ํ, ๋ชจ๋ฐ์ผ, ๋ฐฑ์๋ ํ์ด ์ค์ ๋ก ๋ฐ๋ฅผ ์ ์์ ์ ๋๋ก ์งง๊ฒ ์ ์งํ์ธ์.
๋จผ์ ์ง์ ๊ธฐ๊ฐ์ ์ ํ์ธ์. ์ ๋ฒ์ ๋ฐฐํฌ ํ ์ด์ API ๋ฒ์ ์ ์ผ๋ง๋ ์ค๋ ์ ์งํ ์ง ๊ฒฐ์ ํ์ธ์(์: 6โ12๊ฐ์), ์์ธ(๋ณด์ ๋ฌธ์ , ๋ฒ์ ๋ณ๊ฒฝ)๋ ๋ณ๋๋ก ๋ก๋๋ค.
๋ค์์ผ๋ก ๊ณ ๊ฐ์๊ฒ ์ค๋จ ์ ์ด๋ป๊ฒ ์๋ฆด์ง ์ ์ํ์ธ์. ํ๋์ ํ๊ธฐ ์ ํธ๋ฅผ ์ ํํ๊ณ ์ด๋์๋ ์ฌ์ฉํ์ธ์. ์ผ๋ฐ์ ์ธ ์ต์
์ ์๋ต ํค๋์ Deprecation: true์ ์ข
๋ฃ ๋ ์ง๋ฅผ ๋ด๋ ๊ฒ ๋๋ ์ ํ๋ ์๋ต์ "deprecation": {"will_stop_working_on": "2026-04-01"} ๊ฐ์ JSON ํ๋๋ฅผ ๋ฃ๋ ๊ฒ์
๋๋ค. ์ค์ํ ๊ฑด ์ผ๊ด์ฑ์
๋๋ค: ํด๋ผ์ด์ธํธ๊ฐ ๊ฐ์งํ๊ณ ๋์๋ณด๋๊ฐ ๋ณด๊ณ ํ ์ ์์ด์ผ ํ๋ฉฐ ์ง์ํ์ด ์ค๋ช
ํ ์ ์์ด์ผ ํฉ๋๋ค.
์ต์ ์ง์ ์ฑ ๋ฒ์ ์ ์ค์ ํ๊ณ ์ํ ๋ฐฉ์๋ ๋ช ํํ ํ์ธ์. ๊ฐ์์ค๋ฌ์ด ๊ฐ์ ์ฐจ๋จ์ ํผํ์ธ์. ์ค์ ์ ์ธ ์ ๊ทผ ๋ฐฉ์์ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ์ํํธ ๊ฒฝ๊ณ ๋ฐํ(์: ์ฑ ๋ด ์ ๋ฐ์ดํธ๋ฅผ ์ ๋ํ๋ ํ๋).
- ๊ณต์ง๋ ๋ง๊ฐ ํ์๋ง ๊ฐ์ ์ํ.
์์ฒญ์ ์ฐจ๋จํด์ผ ํ๋ค๋ฉด, ์ฌ๋์๊ฒ ์ฝ๊ธฐ ์ฌ์ด ๋ฉ์์ง์ ๊ธฐ๊ณ๊ฐ ํด์ํ ์ ์๋ ์ฝ๋๋ฅผ ํฌํจํ ๋ช ํํ ์ค๋ฅ ํ์ด๋ก๋๋ฅผ ๋ฐํํ์ธ์.
๋ง์ง๋ง์ผ๋ก, ๋๊ฐ ํ๊ดด์ ๋ณ๊ฒฝ์ ์น์ธํ ์ง์ ์ด๋ค ๋ฌธ์๊ฐ ํ์ํ์ง๋ ์ ํ์ธ์. ๋จ์ํ๊ฒ ์ ์งํ์ธ์:
- ํ๊ดด์ ๋ณ๊ฒฝ์ ์น์ธํ๋ ๋จ์ผ ๋ด๋น์.
- ๋ฌด์์ด ๋ณ๊ฒฝ๋์๋์ง, ๋๊ฐ ์ํฅ์ ๋ฐ๋์ง, ๋ง์ด๊ทธ๋ ์ด์ ๊ฒฝ๋ก๋ฅผ ์ค๋ช ํ ์งง์ ๋ณ๊ฒฝ ๋ ธํธ.
- ์ต์ ํ๋์ ์ค๋๋ ์ฑ ๋ฒ์ ์ ํฌํจํ ํ ์คํธ ๊ณํ.
- ํ๊ธฐ ์์ ์์ ์ ์ค์ ๋ ์ข ๋ฃ ๋ ์ง.
์ค๋๋ ์ฑ์ ์ ์งํ๋ ๋จ๊ณ๋ณ ๋กค์์ ๊ณํ
๋ชจ๋ฐ์ผ ์ฌ์ฉ์๋ ํ๋ฃจ๋ง์ ๋ชจ๋ ์ ๋ฐ์ดํธํ์ง ์์ต๋๋ค. ๊ฐ์ฅ ์์ ํ ๋ฐฉ๋ฒ์ ์ API๋ฅผ ๋ฐฐํฌํ๋ ์ค๋๋ API๋ ๊ทธ๋๋ก ๋๊ณ ํธ๋ํฝ์ ์ ์ง์ ์ผ๋ก ์ฎ๊ธฐ๋ ๊ฒ์ ๋๋ค.
๋จผ์ v2๊ฐ ๋ฌด์์ ๋ฐ๊พธ๋์ง ์ ์ํ๊ณ v1 ๋์์ ๊ณ ์ ํ์ธ์. v1์ ์ฝ์์ฒ๋ผ ์ทจ๊ธํ์ธ์: ๋์ผํ ํ๋, ๋์ผํ ์๋ฏธ, ๋์ผํ ์ค๋ฅ ์ฝ๋. v2๊ฐ ๋ค๋ฅธ ์๋ต ํํ๊ฐ ํ์ํ๋ฉด v1์ ์กฐ์ ํด ๋ง์ถ๋ ค ํ์ง ๋ง์ธ์.
๋ค์์ผ๋ก v2๋ฅผ ๋ณ๋ ฌ๋ก ์ด์ํ์ธ์. ์ด๋ ๋ณ๋ ๋ผ์ฐํธ(/v1/... ๋ฐ /v2/...)์ด ๋ ์๋ ์๊ณ , ๋์ผํ ๊ฒ์ดํธ์จ์ด ๋ค์์ ๋ณ๋ ํธ๋ค๋ฌ๋ก ๊ตฌํ๋ ์๋ ์์ต๋๋ค. ๊ณต์ ๋ก์ง์ ํ ๊ณณ์ ๋๋ ๊ณ์ฝ์ ๋ถ๋ฆฌํด์ v2 ๋ฆฌํฉํฐ๊ฐ ์ค์๋ก v1์ ๋ณ๊ฒฝํ์ง ์๋๋ก ํ์ธ์.
๊ทธ ๋ค์ ๋ชจ๋ฐ์ผ ์ฑ์ v2 ์ฐ์ ์ผ๋ก ์ ๋ฐ์ดํธํ์ธ์. ๊ฐ๋จํ ํด๋ฐฑ์ ๋ง๋์ธ์: v2๊ฐ "not supported"(๋๋ ์๋ ค์ง ์ค๋ฅ)๋ฅผ ๋ฐํํ๋ฉด v1๋ก ์ฌ์๋ํ๊ฒ ํ์ธ์. ์ด๋ ๋จ๊ณ์ ๋ฐฐํฌ ์ค์ด๋ ์ค์ ๋คํธ์ํฌ๊ฐ ๋ถ์์ ํ ๋ ๋์์ด ๋ฉ๋๋ค.
์ฑ์ ๋ฆด๋ฆฌ์คํ ๋ค ์ฑํ๋ฅ ๊ณผ ์ค๋ฅ๋ฅผ ๋ชจ๋ํฐ๋งํ์ธ์. ์ ์ฉํ ์ฒดํฌ๋ ๋ค์๊ณผ ๊ฐ์ต๋๋ค:
- ์ฑ ๋ฒ์ ๋ณ v1 ๋ v2 ์์ฒญ๋
- v2์ ์ค๋ฅ์จ ๋ฐ ์ง์ฐ
- ์๋ต ํ์ฑ ์คํจ
- ๋คํธ์ํฌ ๊ด๋ จ ํ๋ฉด์์ ๋ฐ์ํ๋ ์ถฉ๋
v2๊ฐ ์์ ์ ์ด๋ฉด v1์ ๋ช ํํ ํ๊ธฐ ๊ฒฝ๊ณ ๋ฅผ ์ถ๊ฐํ๊ณ ์ผ์ ์ ์๋ฆฌ์ธ์. v1์ ์ฌ์ฉ๋์ด ํ์ฉ ๊ฐ๋ฅํ ์๊ณ์น(์: ์ฌ๋ฌ ์ฃผ์ ๊ฑธ์ณ 1โ2% ๋ฏธ๋ง)๋ก ๋จ์ด์ง ๋๋ง ์ข ๋ฃํ์ธ์.
์: GET /orders๋ฅผ ํํฐ๋ง๊ณผ ์ ์ํ๋ฅผ ์ง์ํ๋๋ก ๋ณ๊ฒฝํ๋ค๊ณ ํฉ์๋ค. v2๋ status_details๋ฅผ ์ถ๊ฐํ๊ณ v1์ ๊ทธ๋๋ก ๋ก๋๋ค. ์ ์ฑ์ v2๋ฅผ ํธ์ถํ์ง๋ง ์ฃ์ง์ผ์ด์ค์ ๊ฑธ๋ฆฌ๋ฉด v1๋ก ํด๋ฐฑํด ์ฃผ๋ฌธ ๋ชฉ๋ก์ ๊ณ์ ๋ณด์ฌ์ค๋๋ค.
์๋ฒ ์ธก ๊ตฌํ ํ
๋๋ถ๋ถ์ ๋กค์์ ์คํจ๋ ๋ฒ์ ์ฒ๋ฆฌ๊ฐ ์ปจํธ๋กค๋ฌ, ํฌํผ, ๋ฐ์ดํฐ๋ฒ ์ด์ค ์ฝ๋์ ํฉ์ด์ ธ ์์ ๋ ๋ฐ์ํฉ๋๋ค. ์์ฒญ์ ๋ฒ์ ๊ฒฐ์ ๋ก์ง์ ํ๊ณณ์ ๋๊ณ ๋๋จธ์ง ๋ก์ง์ ์์ธก ๊ฐ๋ฅํ๊ฒ ์ ์งํ์ธ์.
๋จ์ผ ๊ฒ์ดํธ ๋ค์ ๋ฒ์ ๋ผ์ฐํ ๋๊ธฐ
ํ๋์ ์ ํธ(URL ์ธ๊ทธ๋จผํธ, ํค๋, ์ฑ ๋น๋ ๋ฒํธ ๋ฑ)๋ฅผ ์ ํํ๊ณ ์ด๊ธฐ์ ์ ๊ทํํ์ธ์. ํ ๋ชจ๋์ด๋ ๋ฏธ๋ค์จ์ด์์ ์ฌ๋ฐ๋ฅธ ํธ๋ค๋ฌ๋ก ๋ผ์ฐํ ํ๋ฉด ๋ชจ๋ ์์ฒญ์ด ๋์ผํ ๊ฒฝ๋ก๋ฅผ ๋ฐ๋ฆ ๋๋ค.
์ค์ฉ์ ์ธ ํจํด:
- ๋ฒ์ ์ ํ ๋ฒ ํ์ฑํ๊ณ (๋ก๊ทธ์ ๋จ๊ธฐ๊ธฐ)
- ๋ฒ์ ์ ํธ๋ค๋ฌ(v1, v2, ...)์ ๋งคํํ๋ ๋ ์ง์คํธ๋ฆฌ๋ฅผ ํ ๊ณณ์ ๋๊ธฐ
- ๊ณต์ฉ ์ ํธ๋ฆฌํฐ(๋ ์ง ํ์ฑ, ์ธ์ฆ ๊ฒ์ฌ)๋ ๋ฒ์ ๋ฌด๊ด์ผ๋ก ๋๊ณ ์๋ต ํํ ๋ก์ง์ ๋ถ๋ฆฌํ๊ธฐ
๋ฒ์ ๊ฐ์ ์ฝ๋๋ฅผ ๊ณต์ ํ ๋ ์ฃผ์ํ์ธ์. ๊ณต์ ์ฝ๋์์ v2 ๋ฒ๊ทธ๋ฅผ ๊ณ ์น๋ฉด ์ค์๋ก v1 ๋์์ด ๋ฐ๋ ์ ์์ต๋๋ค. ์ถ๋ ฅ ํ๋๋ ๊ฒ์ฆ ๊ท์น์ ์ํฅ์ ์ฃผ๋ ๋ก์ง์ ๋ฒ์ ๋ณ๋ก ๋ถ๋ฆฌํ๊ฑฐ๋ ๋ฒ์ ๋ณ ํ ์คํธ๋ก ์ปค๋ฒํ์ธ์.
๋กค์์ ์ค ๋ฐ์ดํฐ ๋ณ๊ฒฝ์ ํธํ์ฑ ์๊ฒ ์ ์งํ๊ธฐ
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง์ด๊ทธ๋ ์ด์ ์ ๋ ๋ฒ์ ์ด ๋์์ ์๋ํ๋๋ก ํด์ผ ํฉ๋๋ค. ๋จผ์ ์ปฌ๋ผ์ ์ถ๊ฐํ๊ณ ๋ฐฑํ์ ํ๋ฉฐ, ์ ์ฝ์ ๊ฐํํ๊ฑฐ๋ ์ ๊ฑฐ๋ ๋์ค์ ํ์ธ์. ํฌ๋งท์ ์ ํํด์ผ ํ๋ค๋ฉด ์ ๊น ๋์ ๋ ํฌ๋งท์ ๋ชจ๋ ์ฐ๊ฒ ํด์ ๋๋ถ๋ถ์ ๋ชจ๋ฐ์ผ ํด๋ผ์ด์ธํธ๊ฐ ์ด๋ํ ๋๊น์ง ์ ์งํ์ธ์.
์ค๋ฅ๋ฅผ ์์ธก ๊ฐ๋ฅํ๊ฒ ๋ง๋์ธ์. ์ค๋๋ ์ฑ์ ์ ์ ์๋ ์ค๋ฅ๋ฅผ ๋จ์ํ "๋ฌด์ธ๊ฐ ์๋ชป๋จ"์ผ๋ก ์ฒ๋ฆฌํ๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ์ผ๊ด๋ ์ํ ์ฝ๋, ์์ ๋ ์ค๋ฅ ์๋ณ์, ์ฌ์๋/์ฌ์ธ์ฆ/์ ๋ฐ์ดํธ ์ ๋ ๋ฑ ํด๋ผ์ด์ธํธ๊ฐ ๊ฒฐ์ ํ๊ธฐ ์ฌ์ด ์งง์ ๋ฉ์์ง๋ฅผ ์ฌ์ฉํ์ธ์.
๋ง์ง๋ง์ผ๋ก ์ค๋๋ ์ฑ์ด ๋ณด๋ด์ง ์๋ ํ๋๊ฐ ์์ด์ ๋ฐ์ํ๋ ๋ฌธ์ ๋ฅผ ๋ฐฉ์งํ์ธ์. ์์ ํ ๊ธฐ๋ณธ๊ฐ์ ์ฌ์ฉํ๊ณ ๋ช ํํ๊ณ ์์ ๋ ์ค๋ฅ ์์ธ ์ ๋ณด๋ฅผ ์ ๊ณตํด ๊ฒ์ฆํ์ธ์.
๋ชจ๋ฐ์ผ ์ธก ๊ณ ๋ ค์ฌํญ
์ฌ์ฉ์๊ฐ ๋ช ์ฃผ ๋์ ์ค๋๋ ๋น๋์ ๋จธ๋ฌผ ์ ์๊ธฐ ๋๋ฌธ์ ๋ฒ์ ๊ด๋ฆฌ๋ ์ฌ๋ฌ ํด๋ผ์ด์ธํธ ๋ฒ์ ์ด ๋์์ ์๋ฒ์ ์์ฒญ์ ๋ณด๋ผ ๊ฒ์ ์ ์ ๋ก ํด์ผ ํฉ๋๋ค.
ํด๋ผ์ด์ธํธ ์ชฝ์ ๊ด์ฉ์ฑ(tolerance)์ด ํฐ ์ด์ ์ ๋๋ค. ์๋ฒ๊ฐ ํ๋๋ฅผ ์ถ๊ฐํ์ ๋ ์ฑ์ด ํ์ฑ ์ค์ ์ถฉ๋ํ๋ฉด ๋จ๊ณ์ ๋กค์์์์ "๋ฌด์์" ๊ฐ์ ๋ฒ๊ทธ๋ก ๋๊ปด์ง๋๋ค.
- ์ ์ ์๋ JSON ํ๋๋ ๋ฌด์ํ์ธ์.
- ๋๋ฝ๋ ํ๋๋ ์ ์์ผ๋ก ์ฒ๋ฆฌํ๊ณ ๊ธฐ๋ณธ๊ฐ์ ์ฌ์ฉํ์ธ์.
- ๋ง์ด๊ทธ๋ ์ด์ ์ค ํ๋๊ฐ nullable์ด ๋๋ ๊ฒฝ์ฐ ๋์ ์์ ํ๊ฒ ์ฒ๋ฆฌํ์ธ์.
- ๋ฐฐ์ด ์์์ ์์กดํ์ง ๋ง์ธ์(๊ณ์ฝ์ด ๋ณด์ฅํ์ง ์๋ ํ).
- ์ค๋ฅ ์ฒ๋ฆฌ์์ ์ฌ์ฉ์ ์นํ์ ์ธ ๋์์ ์ ์งํ์ธ์(๋น ํ๋ฉด๋ณด๋ค ์ฌ์๋ ์ํ๊ฐ ๋ซ์ต๋๋ค).
๋คํธ์ํฌ ๋์๋ ์ค์ํฉ๋๋ค. ๋กค์์ ์ค์๋ ๋ก๋ ๋ฐธ๋ฐ์๋ ์บ์ ๋ค์์ ์ ์ ํผํฉ๋ ์๋ฒ ๋ฒ์ ์ด ์กด์ฌํ ์ ์๊ณ , ๋ชจ๋ฐ์ผ ๋คํธ์ํฌ๋ ์์ ๋ฌธ์ ๋ฅผ ํ๋์ํฌ ์ ์์ต๋๋ค.
ํ์์์๊ณผ ์ฌ์๋ ๊ท์น์ ๋ช ํํ ํ์ธ์: ์ฝ๊ธฐ ํธ์ถ์ ์งง์ ํ์์์, ์ ๋ก๋๋ ์ฝ๊ฐ ๊ธด ํ์์์, ์ ํ๋ ์ฌ์๋์ ๋ฐฑ์คํ๋ฅผ ์ฌ์ฉํ์ธ์. ์์ฑ์ด๋ ๊ฒฐ์ ์ฑ ํธ์ถ์๋ ๋ฉฑ๋ฑ์ฑ(idempotency)์ ํ์ค์ผ๋ก ํ์ฌ ์ฌ์๋๊ฐ ์ด์ค ์ ์ถ์ ๋ฐ์์ํค์ง ์๊ฒ ํ์ธ์.
์ธ์ฆ ๋ณ๊ฒฝ์ ์ค๋๋ ์ฑ์ ์ฐจ๋จํ๋ ๊ฐ์ฅ ๋น ๋ฅธ ๋ฐฉ๋ฒ์ ๋๋ค. ํ ํฐ ํฌ๋งท, ํ์ํ ์ค์ฝํ, ์ธ์ ๊ท์น์ ๋ฐ๊ฟ ๋๋ ๋ ๋ค ์๋ํ๋ ์ค์ฒฉ ์ฐฝ์ ์ ์งํ์ธ์. ํค๋ ํด๋ ์์ ๊ต์ฒดํด์ผ ํ๋ค๋ฉด ๊ฐ์ ๋ ์ ๋ถ ๋ฐ๊พธ์ง ๋ง๊ณ ๋จ๊ณ์ ๋ง์ด๊ทธ๋ ์ด์ ์ ๊ณํํ์ธ์.
๊ฐ ์์ฒญ์ ์ฑ ๋ฉํ๋ฐ์ดํฐ(์: ์ฑ ๋ฒ์ ๊ณผ ํ๋ซํผ)๋ฅผ ํฌํจ์ํค๋ฉด ์ ์ฒด API๋ฅผ ํฌํฌํ์ง ์๊ณ ๋ ํน์ ๊ฒฝ๊ณ ๋ฅผ ๋ฐํํ๊ธฐ ์ฌ์์ง๋๋ค.
์ํ๋ผ์ด์ฆ ์๋ ๋ชจ๋ํฐ๋ง๊ณผ ๋จ๊ณ์ ๋กค์์
๋จ๊ณ์ ๋กค์์์ด ์๋ํ๋ ค๋ฉด ์๋ก ๋ค๋ฅธ ์ฑ ๋ฒ์ ์ด ๋ฌด์์ ํ๊ณ ์๋์ง ๋ณผ ์ ์์ด์ผ ํฉ๋๋ค. ๋ชฉํ๋ ๊ฐ๋จํฉ๋๋ค: ๋๊ฐ ์์ง ์ค๋๋ ์๋ํฌ์ธํธ๋ฅผ ์ฌ์ฉํ๋์ง ์๊ณ ๋ฌธ์ ๋ฅผ ๋ชจ๋์๊ฒ ํผ์ง๊ธฐ ์ ์ ์ก์๋ด๋ ๊ฒ.
๋จผ์ API ๋ฒ์ ๋ณ ์ฌ์ฉ๋์ ๋งค์ผ ์ถ์ ํ์ธ์. ์ด ์์ฒญ๋ง ์ธ์ง ๋ง๊ณ ํ์ฑ ๋๋ฐ์ด์ค๋ฅผ ์ถ์ ํ๊ณ ๋ก๊ทธ์ธ, ํ๋กํ, ๊ฒฐ์ ๊ฐ์ ํต์ฌ ์๋ํฌ์ธํธ๋ฅผ ๋ถํดํด์ ๋ณด์ธ์. ์ด๋ ๊ฒ ํ๋ฉด ์ ์ฒด ํธ๋ํฝ์ด ์์ ๋ณด์ฌ๋ ์ค๋๋ ๋ฒ์ ์ด ์ฌ์ ํ โ์ด์์๋คโ๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
๊ทธ๋ค์ ๋ฒ์ ๊ณผ ์ ํ๋ณ ์ค๋ฅ๋ฅผ ๊ด์ฐฐํ์ธ์. 4xx์ ๊ธ์ฆ์ ๋ณดํต ๊ณ์ฝ ๋ถ์ผ์น(ํ์ ํ๋ ๋ณ๊ฒฝ, ์ด๊ฑฐํ ๊ฐ ์ด๋, ์ธ์ฆ ๊ท์น ๊ฐํ)๋ฅผ ์๋ฏธํฉ๋๋ค. 5xx์ ๊ธ์ฆ์ ์๋ฒ ํ๊ท(์๋ชป๋ ๋ฐฐํฌ, ๋๋ฆฐ ์ฟผ๋ฆฌ, ์์กด์ฑ ์คํจ)๋ฅผ ๊ฐ๋ฆฌํค๋ ๊ฒฝ์ฐ๊ฐ ๋ง์ต๋๋ค. ๋ฒ์ ๋ณ๋ก ๋ ๋ค ๋ณด๋ฉด ๋น ๋ฅด๊ฒ ์ ์ ํ ์กฐ์น๋ฅผ ์ ํํ ์ ์์ต๋๋ค.
์ฑ์คํ ์ด์์ ๋จ๊ณ์ ๋กค์์์ ์ฌ์ฉํด ๋ธ๋ผ์คํธ ๋ฐ๊ฒฝ์ ์ ํํ์ธ์. ๋ ธ์ถ์ ๋จ๊ณ๋ณ๋ก ๋๋ฆฌ๊ณ ๊ฐ ๋จ๊ณ(์: 5%, 25%, 50%) ํ์ ๋์ผํ ๋์๋ณด๋๋ฅผ ๊ด์ฐฐํ์ธ์. ์ต์ ๋ฒ์ ์์ ๋ฌธ์ ๊ฐ ๋ณด์ด๋ฉด ์ ์ฒด ์์ํฐ์ง๊ฐ ๋๊ธฐ ์ ์ ๋กค์์์ ์ค๋จํ์ธ์.
๋กค๋ฐฑ ํธ๋ฆฌ๊ฑฐ๋ ์ฌ๊ณ ์ค์ ๊ฒฐ์ ํ์ง ๋ง๊ณ ์ฌ์ ์ ๋ฌธ์ํํด ๋์ธ์. ์ผ๋ฐ์ ์ธ ํธ๋ฆฌ๊ฑฐ:
- 15โ30๋ถ ๋์ ๊ณ ์ ์๊ณ๊ฐ์ ์ด๊ณผํ ์ค๋ฅ์จ
- ๋ก๊ทธ์ธ ์ฑ๊ณต๋ฅ ํ๋ฝ(๋๋ ํ ํฐ ๊ฐฑ์ ์คํจ ์ฆ๊ฐ)
- ๊ฒฐ์ ์คํจ ์ฆ๊ฐ(๋๋ ์ฒดํฌ์์ ํ์์์ ์ฆ๊ฐ)
- ํน์ ๋ฒ์ ๊ณผ ์ฐ๊ด๋ ์ง์ ํฐ์ผ ๊ธ์ฆ
- ํต์ฌ ์๋ํฌ์ธํธ์ ์ง์ฐ ์ฆ๊ฐ
๋ฒ์ ๊ด๋ จ ์ฅ์ ์ฉ ๋จ์ถ ์ธ์๋ํธ ํ๋ ์ด๋ถ์ ์ ์งํ์ธ์: ๋๊ตฌ์๊ฒ ํ์ด์ง๋ฅผ ๋ณด๋ผ์ง, ์ํํ ํ๋๊ทธ๋ฅผ ๋นํ์ฑํํ๋ ๋ฐฉ๋ฒ, ์ด๋ค ์๋ฒ ๋ฆด๋ฆฌ์ค๋ฅผ ๋กค๋ฐฑํ ์ง, ์ค๋๋ ํด๋ผ์ด์ธํธ๊ฐ ์ฌ์ ํ ํ์ฑ์ธ ๊ฒฝ์ฐ ํ๊ธฐ ๊ธฐ๊ฐ์ ์ฐ์ฅํ๋ ๋ฐฉ๋ฒ ๋ฑ.
์ค์ ๋ฆด๋ฆฌ์ค์์ ์๋ํฌ์ธํธ ์งํ ์
๊ฒฐ์ ํ๋ฆ์ ํ์ค ์ธ๊ณ์์ ์์ฃผ ๋ฐ๋๋ ์ฌ๋ก์ ๋๋ค. ๋จ์ํ ํ๋ฆ์์ ์์ํด ๊ฐํ ์ธ์ฆ ๊ฐ์ ์ ๊ฒฐ์ ๋จ๊ณ๋ฅผ ์ถ๊ฐํ๊ณ ํ๋ ์ด๋ฆ์ ๋น์ฆ๋์ค ์ฉ์ด์ ๋ง์ถฐ ๋ฐ๊พธ๋ ์์ ๋๋ค.
์๋ฅผ ๋ค์ด ๋ชจ๋ฐ์ผ ์ฑ์ด POST /checkout์ ํธ์ถํ๋ค๊ณ ํฉ์๋ค.
v1์์ ์ ์ง๋๋ ๊ฒ vs v2์์ ๋ฐ๋๋ ๊ฒ
v1์์๋ ๊ธฐ์กด ์์ฒญ๊ณผ ๋์์ ์ ์งํด ์ค๋๋ ์ฑ์ด ์๊ธฐ์น ์๊ฒ ๊ฒฐ์ ๋ฅผ ๋ง์น์ง ๋ชปํ๋ ์ผ์ ๋ง์ต๋๋ค. v2์์๋ ์ ํ๋ฆ๊ณผ ๋ ๊น๋ํ ์ด๋ฆ์ ๋์ ํฉ๋๋ค.
- v1 ์ ์ง:
amount,currency,card_token๊ทธ๋ฆฌ๊ณstatus=paid|failed๊ฐ์ ๋จ์ผ ์๋ต - v2 ์ถ๊ฐ:
payment_method_id(๊ธฐ์กดcard_token์ ๋์ฒด)์ ์ฑ์ด ์ถ๊ฐ ๋จ๊ณ๋ฅผ ์ฒ๋ฆฌํ ์ ์๊ฒ ํ๋next_actionํ๋ - v2 ์ด๋ฆ ๋ณ๊ฒฝ:
amountโtotal_amount,currencyโbilling_currency
์ค๋๋ ์ฑ์ ์๋ฒ๊ฐ ์์ ํ ๊ธฐ๋ณธ๊ฐ์ ์ ์ฉํ๊ธฐ ๋๋ฌธ์ ๊ณ์ ์๋ํฉ๋๋ค. v1 ์์ฒญ์ด next_action์ ๋ชจ๋ฅด๋ฉด ์๋ฒ๋ ๊ฐ๋ฅํ ๊ฒฝ์ฐ ๊ฒฐ์ ๋ฅผ ์๋ฃํ๊ณ v1 ์คํ์ผ์ ๊ฒฐ๊ณผ๋ฅผ ๋ฐํํฉ๋๋ค. ์ ๋จ๊ณ๊ฐ ํ์๋ผ๋ฉด v1์๋ requires_update ๊ฐ์ ๋ช
ํํ๊ณ ์์ ๋ ์ค๋ฅ ์ฝ๋๋ฅผ ๋ฐํํด ํผ๋์ค๋ฌ์ด ์ผ๋ฐ ์คํจ๋ฅผ ํผํฉ๋๋ค.
์ฑํ, ์ํด, ๋กค๋ฐฑ
๋ฒ์ ๋ณ ์ฑํ๋ฅ ์ ์ถ์ ํ์ธ์: ์ฒดํฌ์์ ํธ์ถ ์ค v2๊ฐ ์ฐจ์งํ๋ ๋น์จ, ์ค๋ฅ์จ, v1๋ง ์ง์ํ๋ ๋น๋๋ฅผ ์ฌ์ ํ ์ฌ์ฉํ๋ ์ฌ์ฉ์์ ์. v2 ์ฌ์ฉ์ด ์ผ๊ด๋๊ฒ ๋์ ๋(์: ๋ช ์ฃผ ๋์ 95%+) v1 ์ํด ๋ ์ง๋ฅผ ์ ํ๊ณ ๊ณต์งํ์ธ์(๋ฆด๋ฆฌ์ค ๋ ธํธ, ์ฑ ๋ด ๋ฉ์์ง).
๋ฐฐํฌ ํ ๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด ๋กค๋ฐฑ์ ํ๋ฒํด์ผ ํฉ๋๋ค:
- ๋ ๋ง์ ํธ๋ํฝ์ v1 ๋์์ผ๋ก ๋ผ์ฐํธํ์ธ์.
- ์๋ฒ ํ๋๊ทธ๋ก ์ ๊ฒฐ์ ๋จ๊ณ๋ฅผ ๋นํ์ฑํํ์ธ์.
- ๋ ํ๋ ์ธํธ ๋ชจ๋๋ฅผ ๊ณ์ ์์ฉํ๊ณ ์๋ ๋ณํํ ๋ด์ฉ์ ๋ก๊น ํ์ธ์.
์กฐ์ฉํ ์ค๋จ์ ์ด๋ํ๋ ํํ ์ค์
๋๋ถ๋ถ์ ๋ชจ๋ฐ์ผ API ์คํจ๋ ํฌ๊ฒ ๋๋ฌ๋์ง ์์ต๋๋ค. ์์ฒญ์ ์ฑ๊ณตํ์ง๋ง ์ฑ์ด ๊ณ์ ์คํ๋๋ฉฐ ์ฌ์ฉ์๋ ๋๋ฝ๋ ๋ฐ์ดํฐ, ์๋ชป๋ ํฉ๊ณ, ๋์ํ์ง ์๋ ๋ฒํผ ๋ฑ์ ๊ฒฝํํฉ๋๋ค. ์ด๋ฐ ๋ฌธ์ ๋ ๋จ๊ณ์ ๋กค์์ ๋์ ์ค๋๋ ์ฑ ๋ฒ์ ์๋ง ์ํฅ์ ๋ฏธ์ณ ๋ฐ๊ฒฌํ๊ธฐ ์ด๋ ต์ต๋๋ค.
ํํ ์์ธ:
- ๋ช ํํ ๋ฒ์ ๊ณํ ์์ด ํ๋๋ฅผ ๋ณ๊ฒฝํ๊ฑฐ๋ ์ ๊ฑฐํจ
- ์ ์์ฒญ ํ๋๋ฅผ ์ฆ์ ํ์๋ก ๋ง๋ค์ด ์ด์ ์ฑ์ด ๊ฑฐ๋ถ๋นํจ
- ์๋ก์ด ์ฑ๋ง ์กด์ฌํ๋ค๊ณ ๊ฐ์ ํ ๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง์ด๊ทธ๋ ์ด์ ๋ฐฐํฌ
- ์ค์น ์์ ๋ฐ๋ผ v1์ ์ข ๋ฃํ๊ณ ํ์ฑ ์ฌ์ฉ๋์ ๋ฌด์ํจ
- ๋ฐฑ๊ทธ๋ผ์ด๋ ์์ ๊ณผ ์นํ ์ด ์ฌ์ ํ ์ค๋๋ ํ์ด๋ก๋๋ฅผ ํธ์ถํ๋ ๊ฒ์ ์์
๊ตฌ์ฒด์ ์: ์๋ต ํ๋ total์ด ๋ฌธ์์ด("12.50")์ด์๋ค๊ฐ ์ซ์(12.5)๋ก ๋ฐ๋์๋ค๊ณ ํฉ์๋ค. ์ ์ฑ์ ์ ์์ ์ผ๋ก ๋ณด์ด์ง๋ง ์ค๋๋ ์ฑ์ ์ด๋ฅผ 0์ผ๋ก ์ฒ๋ฆฌํ๊ฑฐ๋ ์จ๊ธฐ๊ฑฐ๋ ํน์ ํ๋ฉด์์๋ง ์ถฉ๋ํ ์ ์์ต๋๋ค. ์ฑ ๋ฒ์ ๋ณ ํด๋ผ์ด์ธํธ ์ค๋ฅ๋ฅผ ๋ชจ๋ํฐ๋งํ์ง ์์ผ๋ฉด ์ด๋ฐ ๋ฌธ์ ๊ฐ ๊ทธ๋๋ก ์ง๋๊ฐ๋๋ค.
๋น ๋ฅธ ์ฒดํฌ๋ฆฌ์คํธ์ ๋ค์ ๋จ๊ณ
๋ฒ์ ๊ด๋ฆฌ๋ ์๋ฆฌํ ์๋ํฌ์ธํธ ๋ช ๋ช ๋ฒ๋ณด๋ค ๋งค ๋ฆด๋ฆฌ์ค๋ง๋ค ๊ฐ์ ์์ ์ ๊ฒ์ ๋ฐ๋ณตํ๋ ๊ฒ์ ๋๋ค.
๋ฆด๋ฆฌ์ค ์ ๋น ๋ฅธ ํ์ธ
- ๋ณ๊ฒฝ์ ์ถ๊ฐํ๋ ๋ฐฉ์์ผ๋ก ์ ์งํ์ธ์. ์ด๋ฏธ ์ค๋๋ ์ฑ์ด ์ฝ๋ ํ๋๋ฅผ ์ ๊ฑฐํ๊ฑฐ๋ ์ด๋ฆ์ ๋ฐ๊พธ์ง ๋ง์ธ์.
- ์ ํ๋๊ฐ ์์ด๋ ์ด์ ํ๋ฆ์ฒ๋ผ ๋์ํ๋๋ก ์์ ํ ๊ธฐ๋ณธ๊ฐ์ ์ ๊ณตํ์ธ์.
- ์ค๋ฅ ์๋ต์ ํํ์ ์๋ฏธ๋ฅผ ์์ ์ ์ผ๋ก ์ ์งํ์ธ์(์ํ ์ฝ๋ + ๊ตฌ์กฐ + ์๋ฏธ).
- ์ด๊ฑฐํ(enum)์ ์ ์คํ ๋ค๋ฃจ๊ณ ๊ธฐ์กด ๊ฐ์ ์๋ฏธ๋ฅผ ๋ณ๊ฒฝํ์ง ๋ง์ธ์.
- ์ค๋๋ ์ฑ ๋ฒ์ ์ ์ค์ ์์ฒญ์ ๋ช ๊ฐ ์ฌ์ํด์ ์๋ต์ด ์ฌ์ ํ ํ์ฑ๋๋์ง ํ์ธํ์ธ์.
๋กค์์ ์ค ๋ฐ ์ํด ์ ๋น ๋ฅธ ํ์ธ
- ์ฑ ๋ฒ์ ๋ณ ์ฑํ์ ์ถ์ ํ์ธ์. v1์์ v2๋ก ๋ช ํํ ๊ณก์ ์ ์ํฉ๋๋ค.
- ๋ฒ์ ๋ณ ์ค๋ฅ์จ์ ๋ชจ๋ํฐ๋งํ์ธ์. ๊ธ์ฆ์ ์ค๋๋ ํด๋ผ์ด์ธํธ ํ์ฑ์ด๋ ๊ฒ์ฆ์ด ๊นจ์ก๋ค๋ ์ ํธ์ ๋๋ค.
- ๊ฐ์ฅ ์คํจ๊ฐ ๋ง์ ์๋ํฌ์ธํธ๋ฅผ ๋จผ์ ๊ณ ์น๊ณ ์ ์ฐจ ๋กค์์์ ํ์ฅํ์ธ์.
- ํ์ฑ ์ฌ์ฉ๋์ด ์ ๋ง ๋ฎ์ ๋๋ง ์ํด์ํค๊ณ ๋ ์ง๋ฅผ ๊ณต์งํ์ธ์.
- ์ํด ํ์๋ ํด๋ฐฑ ์ฝ๋๋ฅผ ๋ง์ง๋ง์ ์ ๊ฑฐํ์ธ์.
๋ฒ์ ๊ด๋ฆฌ ๋ฐ ํ๊ธฐ ์ ์ฑ ์ ํ ํ์ด์ง ๋ถ๋์ผ๋ก ์์ฑํ๊ณ ์ฒดํฌ๋ฆฌ์คํธ๋ฅผ ํ์ด ๋งค๋ฒ ๋ฐ๋ฅด๋ ๋ฆด๋ฆฌ์ค ๊ฒ์ดํธ๋ก ๋ง๋์ธ์.
๋ด๋ถ ๋๊ตฌ๋ ๊ณ ๊ฐ์ฉ ์ฑ์ ๋ ธ์ฝ๋ ํ๋ซํผ์ผ๋ก ๋น๋ํ๋๋ผ๋ API๋ฅผ ๊ณ์ฝ์ผ๋ก ์ทจ๊ธํ๊ณ ๋ช ํํ ํ๊ธฐ ์ฐฝ์ ๋๋ฉด ๋์์ด ๋ฉ๋๋ค. AppMaster (appmaster.io)์ ์ฌ์ฉํ๋ ํ์ ๊ฒฝ์ฐ, v1๊ณผ v2๋ฅผ ๋๋ํ ๋๋ ๊ฒ์ด ์ข ์ข ๋ ์ฌ์ด๋ฐ, ๋ฐฑ์๋์ ํด๋ผ์ด์ธํธ ์ฑ์ ์ฌ์์ฑํ๋ฉด์ ์๊ตฌ ์ฌํญ์ด ๋ณํด๋ ์ค๋๋ ๊ณ์ฝ์ ์ ์งํ ์ ์๊ธฐ ๋๋ฌธ์ ๋๋ค.
์์ฃผ ๋ฌป๋ ์ง๋ฌธ
๋ชจ๋ฐ์ผ ์ฌ์ฉ์๋ ๋์์ ๋ชจ๋ ์ ๋ฐ์ดํธํ์ง ์๊ธฐ ๋๋ฌธ์, ์ค๋๋ ์ฑ ๋น๋๊ฐ ๋ฐฑ์๋ ๋ณ๊ฒฝ ์ดํ์๋ ๊ณ์ ์์ฒญ์ ๋ณด๋ ๋๋ค. ์๋ํฌ์ธํธ, ๊ฒ์ฆ ๊ท์น, ์๋ต ํํ๊ฐ ๋ฐ๋๋ฉด ์ค๋๋ ๋น๋๋ ์ ์ํ์ง ๋ชปํด ๋น ํ๋ฉด, ์ถฉ๋, ๊ฒฐ์ ์คํจ ๊ฐ์ ๋ฌธ์ ๋ฅผ ์ผ์ผํต๋๋ค.
โํธํโ์ด๋ผ๋ ๊ฒ์ ์ค๋๋ ์ฑ์ด ๊ฐ์ ์์ฒญ์ ๊ณ์ ๋ณด๋ด๋ ๋ณ๋ ์ฝ๋ ๋ณ๊ฒฝ ์์ด ํ์ฑํด์ ์ ์์ ์ผ๋ก ์ฌ์ฉํ ์ ์๋ค๋ ๋ป์ ๋๋ค. ์์ ํ ์ฌ๊ณ ๋ฐฉ์์ API๋ฅผ ๊ณ์ฝ์ผ๋ก ๋ณด๋ ๊ฒ์ ๋๋ค: ์ ๊ธฐ๋ฅ์ ์ถ๊ฐํ ์๋ ์์ง๋ง ๊ธฐ์กด ํ๋์ ๋์์ ์๋ฏธ๋ ํ์ฌ ํด๋ผ์ด์ธํธ์๊ฒ ๊ทธ๋๋ก ์ ์งํด์ผ ํฉ๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ๊นจ์ง๋ ๋ณ๊ฒฝ์ ๊ธฐ์กด ์ฑ์ด ์์กดํ๋ ๊ฒ์ ๋ฐ๊พธ๋ ๊ฒฝ์ฐ์ ๋๋ค. ์๋ฅผ ๋ค์ด ํ๋๋ฅผ ์ ๊ฑฐํ๊ฑฐ๋ ์ด๋ฆ์ ๋ฐ๊พธ๋ ๊ฒ, ํ์ ์ ๋ณ๊ฒฝํ๋ ๊ฒ, ๊ฒ์ฆ์ ๊ฐํํด ์ด์ ์์ฒญ์ด ์คํจํ๊ฒ ๋ง๋๋ ๊ฒ, ์ค๋ฅ ํ์ด๋ก๋ ํ์์ ๋ณ๊ฒฝํ๋ ๊ฒ ๋ฑ์ด ์์ต๋๋ค. ์ค๋๋ ์ฑ์ด ์๋ต์ ํ์ฑํ์ง ๋ชปํ๊ฑฐ๋ ์์ฒญ ๊ท์น์ ๋ง์กฑ์ํค์ง ๋ชปํ๋ฉด ์๋ฒ๊ฐ ์ ์ ๋์ํ๋๋ผ๋ ๊นจ์ง ๊ฒ์ ๋๋ค.
URL ๋ฒ์ ๊ด๋ฆฌ๋ ๋ฒ์ ์ด ๋ก๊ทธ์ ๋ผ์ฐํ ์์ ๋ฐ๋ก ๋ณด์ด๊ธฐ ๋๋ฌธ์ ๋ณดํต ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ฐ๊ธฐ ์ฝ์ต๋๋ค. ํค๋ ๊ธฐ๋ฐ ๋ฒ์ ๊ด๋ฆฌ๋ URL์ ๊น๋ํ๊ฒ ์ ์งํ์ง๋ง ๋ฌธ์ ์กฐ์ฌ ์ ๋ฒ์ ์ ๋ณด๋ฅผ ๋์น๊ธฐ ์ฝ๊ณ ๋ชจ๋ ํด๋ผ์ด์ธํธ๊ฐ ํค๋๋ฅผ ์ ํํ ์ค์ ํด์ผ ํฉ๋๋ค.
์ค์ ๋ชจ๋ฐ์ผ ์ ๋ฐ์ดํธ ๋์์ ๋ง๋ ๋ช ํํ ์ง์ ๊ธฐ๊ฐ์ ์ ํ๊ณ ๊ทธ ๊ธฐ๊ฐ์ ์งํค์ธ์. ๋ง์ ํ์ด ๋ฉฐ์น ์ด ์๋๋ผ ๋ช ๋ฌ ๋จ์๋ฅผ ์ ํํฉ๋๋ค. ์ค์ํ ์ ์ ๊ฒ์๋ ํ๊ธฐ ๋ ์ง์ ํ์ฑ ์ฌ์ฉ๋์ ์ธก์ ํด ์ถ์ ์ด ์๋ ๋ฐ์ดํฐ๋ก ์ข ๋ฃ ์์ ์ ์ ํ๋ ๊ฒ์ ๋๋ค.
์ผ๊ด๋ ํ๊ธฐ ์ ํธ๋ฅผ ์ฌ์ฉํ์ธ์. ์๋ฅผ ๋ค์ด ์๋ต ํค๋์ Deprecation: true์ ์ข
๋ฃ ๋ ์ง๋ฅผ ๋ด๊ฑฐ๋, ์ ํ๋ ์๋ต์ "deprecation": {"will_stop_working_on": "2026-04-01"} ๊ฐ์ ์์ JSON ํ๋๋ฅผ ๋ฃ๋ ๋ฐฉ์์
๋๋ค. ์ผ๊ด์ฑ์ด ์์ผ๋ฉด ํด๋ผ์ด์ธํธ์ ๋์๋ณด๋๊ฐ ์ ํธ๋ฅผ ์ฝ๊ฒ ๊ฐ์งํ ์ ์์ต๋๋ค.
์ถ๊ฐ์ ์ธ ๋ณ๊ฒฝ์ ์ ํธํ์ธ์: ์ ์ต์ ํ๋๋ ์ ์๋ํฌ์ธํธ๋ฅผ ์ถ๊ฐํ๊ณ ๊ธฐ์กด ํ๋๋ ๊ทธ๋๋ก ๋๋ ๋ฐฉ์์ ๋๋ค. ์ด๋ฆ์ ๋ฐ๊ฟ์ผ ํ๋ค๋ฉด ์ ์ ๋์ ๋ ํ๋๋ฅผ ๋ณํํด์ ์๋ต์ ๋ ๋ค ์ฑ์ฐ๊ณ , ์์ฒญ์์๋ ๋ ๋ค ๋ฐ์ผ์ธ์. ๊ทธ๋ฌ๋ฉด ์ค๋๋ ์ฑ์ด ๋ฐ์ดํฐ๋ฅผ ์์ง ์์ต๋๋ค.
๋ฐ์ดํฐ๋ฒ ์ด์ค ๋ง์ด๊ทธ๋ ์ด์ ์ ๋ API ๋ฒ์ ์ด ๋์์ ์๋ํ๋๋ก ์ค๊ณํ์ธ์: ๋จผ์ ์ปฌ๋ผ์ ์ถ๊ฐํ๊ณ ํ์ํ๋ฉด ๋ฐฑํํ ๋ค ๋์ค์ ์ ์ฝ ์กฐ๊ฑด์ ์๊ฒฉํ ํ๊ฑฐ๋ ์ค๋๋ ํ๋๋ฅผ ์ ๊ฑฐํ์ธ์. ๋กค์์ ์ค์ ์๋ฏธ๋ฅผ ๋ฐ๊พธ๊ฑฐ๋ ์ด๋ฆ์ ๋ฐ๊พธ๋ฉด ๋ฐ์ดํฐ ๋ถ์ผ์น๊ฐ ์๊ธธ ์ ์์ต๋๋ค.
์ฑ์ ๊ด์ฉ์ ์ผ๋ก ๋ง๋์ธ์: ์ ์ ์๋ JSON ํ๋๋ ๋ฌด์ํ๊ณ , ๋๋ฝ๋ ํ๋๋ ๊ธฐ๋ณธ๊ฐ์ผ๋ก ์ฒ๋ฆฌํ๋ฉฐ, ๋(null)์ ์์ ํ๊ฒ ์ฒ๋ฆฌํด์ ํฌ๋์๋ฅผ ๋ง์ผ์ธ์. ์ด๋ ๊ฒ ํ๋ฉด ์๋ฒ๊ฐ ํ๋๋ฅผ ์ถ๊ฐํ๊ฑฐ๋ ์๋ต์ด ์ ์ ๋ฌ๋ผ์ ธ๋ โ๋ฌด์์โ ๊ฐ์ ๋กค์์ ๋ฒ๊ทธ๋ฅผ ์ค์ผ ์ ์์ต๋๋ค.
๋ฒ์ ๋ฐ ์ฑ ๋ฒ์ ๋ณ ์ฌ์ฉ๋๊ณผ ์ค๋ฅ๋ฅผ ์ถ์ ํ์ธ์. ๋ก๊ทธ์ธ, ๊ฒฐ์ ๋ฑ ํต์ฌ ์๋ํฌ์ธํธ๋ฅผ ํนํ ์ฃผ์ํ๊ณ ๋ฐ์ดํฐ๊ฐ ์์ ์ ์ผ ๋๋ง ๋จ๊ณ์ ๋ ธ์ถ์ ํ๋ํ์ธ์. ์์ ํ ๋กค์์์ v1์ ๊ณ ์ ํด ๋๊ณ v2๋ฅผ ๋ณํ ์ด์ํ๋ฉฐ, ๋ช ํํ ํด๋ฐฑ ์ ๋ต์ผ๋ก ํด๋ผ์ด์ธํธ๋ฅผ ์ฒ์ฒํ ์ฎ๊ธฐ๋ ๊ฒ์ ๋๋ค.


