We have already seen what are Global and Environment variables in Postman and its usage in creating parameterized requests. In this post, we will see another type of variables called Collection variables.
Let’s consider some scenarios first:-
- If you have followed my posts in sequence, you must have seen that when we import a Collection , it does not include environment and global variables. We explicitly need to download variables file as JSON and share.
- If you have multiple collections in workspace, you may confuse with required environment variable file to select.
- You may expose critical data which belongs to other collections to wrong recipient while sharing variable files.
- You have some data which is not unique to particular environment or say constant value.
All above problems can be solved to a great extent if we use Collection variables. A collection variable only belong to single collection for which it has been created. So when you share a collection, all required variables will also be exported with collection.
You can add variables in Variables tab while creating collection or edit collection to add variables. To edit a collection, Click ellipsis (…) next to the collection name, and select “Edit” to open the EDIT COLLECTION modal.
This variables can be used in same manner as we use normal environment and global variables.
I have added a variable named “BookingID” as collection variable.
I am using above created variable in script as :-
You can see variable usage is same as we do environment and global variables. Scope is changed to Collection.
When you share this collection to anyone, they will get all collection variables as well. This feature helps you to keep variables segregated as per collection.
You can import above example collection from below link:-
But Collection variable has some major demerits which restricts you to use this variable specifically. Demerits are:-
- Collection variables are read only. You can not set its value through scripts.
- We can not create Collection variable through scripts.
- We can not update value of Collection variable as it is ready only.