# How do you manage and test API calls workflows?

**URL:** https://discourse.julialang.org/t/how-do-you-manage-and-test-api-calls-workflows/128747
**Category:** General Usage
**Tags:** api
**Created:** [May 6, 2025, 10:44am UTC](https://discourse.julialang.org/t/how-do-you-manage-and-test-api-calls-workflows/128747 "2025-05-06T10:44:02Z")
**Posts on this page:** 4
**Page:** 1

<div class="post-metadata">

### Author: ![ShadowSyntax](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/shadowsyntax/32/216676_2.png) [@ShadowSyntax](https://discourse.julialang.org/u/ShadowSyntax)
#### Post date: [May 6, 2025, 10:44am UTC](https://discourse.julialang.org/t/how-do-you-manage-and-test-api-calls-workflows/128747/1 "2025-05-06T10:44:02Z")

</div>

I’m building a pipeline where Julia pulls in and sends out data via HTTP. Curious how others test their API logic — inside Julia or with external tools? Looking for fast and flexible solutions.

---

<div class="post-metadata">

### Author: ![cjdoris](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/cjdoris/32/213133_2.png) [@cjdoris](https://discourse.julialang.org/u/cjdoris)
#### Post date: [May 6, 2025, 11:49am UTC](https://discourse.julialang.org/t/how-do-you-manage-and-test-api-calls-workflows/128747/2 "2025-05-06T11:49:52Z")

</div>

Some options include:

- Have a locally hosted version of the service you are testing against (if the service is yours).
- Create a mocked version of the service and locally host that.
- Use something like BrokenRecord.jl to automatically mock out the service by recording real responses from the real service.

And in general factor your code so that the actual API calling bit is as small as possible, so you can write true unit tests for everything else, and only rely on integration tests like this to test the actual API calling.

---

<div class="post-metadata">

### Author: ![sairus7](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/sairus7/32/10816_2.png) [@sairus7](https://discourse.julialang.org/u/sairus7)
#### Post date: [May 6, 2025, 1:15pm UTC](https://discourse.julialang.org/t/how-do-you-manage-and-test-api-calls-workflows/128747/3 "2025-05-06T13:15:22Z")

</div>

This is quite old, but very informative example: [MusicAlbums.jl/src/Client.jl at master · quinnj/MusicAlbums.jl · GitHub](https://github.com/quinnj/MusicAlbums.jl/blob/master/src/Client.jl)

---

<div class="post-metadata">

### Author: ![Andrewadams](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/andrewadams/32/216711_2.png) [@Andrewadams](https://discourse.julialang.org/u/Andrewadams)
#### Post date: [May 8, 2025, 4:48am UTC](https://discourse.julialang.org/t/how-do-you-manage-and-test-api-calls-workflows/128747/4 "2025-05-08T04:48:51Z")

</div>

I’ve run into the same thing while working with HTTP.jl. For quick tests and sanity checks, I still lean on external tools — Bruno is nice and lightweight, and I’ve also tried Apidog recently, which feels like a middle ground between Postman and more minimal setups. It supports collections and testing flows pretty smoothly. Curious what others are using too
