What is the difference between {{foo}} and {foo}?

I have been cavalier–some might say sloppy–with my use of braces when using Apidog.

I have used both forms in endpoint definitions and test steps–I don’t mean that I’ve mixed them in the same definition or step, but that in some endpoints/steps I have used the double brace notation and in others I have used the single brace notation. As an endpoint example, I have used /foo/{foo_id} and /foo/{{foo_id}} , and both have seemed to work.

I’m afraid this will bite me in the future, however, so I wanted to ask for definitive guidelines on when to use each form. (I have looked in the documentation and the get-support channel but I have not seen a precise explanation of the difference.)

What’s the right way?

Please use {Path param} in the URL of the API, {{foo}} is used to get the value of a variable. {foo} indicates the presence of a Path parameter in the URL.

For detailed information, please check here: Using variables - Apidog Docs


Thank you, that’s exactly the kind of guidance that I was hoping to find. I will say that I saw that page before, and then I went back to it after reading your reply and checked it again. I think there should be an explicit callout (the “TIP” sections do nicely) that includes something like: “Do not confuse the double brace notation used for variables, such as {{my_variable}}, with the single brace notation used for endpoint URL values, e.g., /pet/{petid}.”