Bird
Raised Fist0
Postmantesting~8 mins

Variable syntax ({{variable}}) in Postman - Framework Patterns

Choose your learning style10 modes available
Framework Mode - Variable syntax ({{variable}})
Folder Structure
PostmanCollectionProject/
├── collections/
│   └── MyAPICollection.json        # Main Postman collection with requests using {{variable}} syntax
├── environments/
│   ├── dev.postman_environment.json  # Environment variables for development
│   ├── staging.postman_environment.json  # Environment variables for staging
│   └── prod.postman_environment.json  # Environment variables for production
├── globals/
│   └── globals.postman_globals.json  # Global variables accessible in all environments
├── tests/
│   └── test-scripts/                # Optional folder for external test scripts if used
├── README.md                       # Project documentation
└── postman.config.json             # Optional config for Newman or CI integration
Test Framework Layers
  • Collections Layer: Contains API requests using {{variable}} syntax to reference variables dynamically.
  • Environment Layer: Holds environment-specific variables (e.g., base URLs, tokens) that replace {{variable}} placeholders during runtime.
  • Global Variables Layer: Variables accessible across all environments and collections for common values.
  • Pre-request & Test Scripts Layer: JavaScript code to set, update, or validate variables before or after requests.
  • Configuration Layer: Settings for running collections via Newman or CI tools, specifying environment files and variables.
Configuration Patterns
  • Environment Files: Use separate JSON files for each environment (dev, staging, prod) with variables like base_url, auth_token.
  • Variable Scopes: Use environment variables for environment-specific data, global variables for shared data, and collection variables for collection-specific data.
  • Variable Naming: Use clear, consistent names like api_key, user_id to avoid confusion.
  • Secure Sensitive Data: Store sensitive variables (passwords, tokens) in environment files excluded from version control or use Postman secrets management.
  • Dynamic Variable Setting: Use pre-request scripts to update variables dynamically before requests run.
Test Reporting and CI/CD Integration
  • Newman CLI: Run Postman collections with environment variables via Newman command line, e.g., newman run MyAPICollection.json -e dev.postman_environment.json.
  • CI/CD Pipelines: Integrate Newman runs in pipelines (GitHub Actions, Jenkins) passing environment files and capturing reports.
  • Report Formats: Generate HTML, JSON, or JUnit reports from Newman for easy analysis.
  • Variable Injection: Use CI secrets or environment variables to inject sensitive data at runtime, avoiding hardcoding.
Best Practices
  1. Use Environment Variables for Flexibility: Avoid hardcoding URLs or tokens; use {{variable}} syntax to switch environments easily.
  2. Keep Sensitive Data Secure: Never commit secrets to version control; use environment files or secret managers.
  3. Consistent Naming: Use clear and consistent variable names to avoid confusion and errors.
  4. Leverage Variable Scopes: Understand and use global, environment, and collection variables properly for better control.
  5. Update Variables Dynamically: Use pre-request scripts to set or modify variables during test runs for dynamic testing.
Self Check

Where in this folder structure would you add a new environment variable for the staging environment to store the API base URL?

Key Result
Use Postman's {{variable}} syntax with environment and global variables to create flexible, reusable API tests.

Practice

(1/5)
1. What is the correct way to use a variable named userId in a Postman request URL?
easy
A. Use $userId in the URL to insert the variable value.
B. Use [userId] in the URL to insert the variable value.
C. Use {{userId}} in the URL to insert the variable value.
D. Use userId directly without any special syntax.

Solution

  1. Step 1: Understand Postman variable syntax

    Postman uses double curly braces {{variable}} to insert variable values dynamically.
  2. Step 2: Apply syntax to the variable userId

    To use the variable userId, you write {{userId}} in the request URL or body.
  3. Final Answer:

    Use {{userId}} in the URL to insert the variable value. -> Option C
  4. Quick Check:

    Variable syntax = {{variable}} [OK]
Hint: Remember variables always use double curly braces {{}} [OK]
Common Mistakes:
  • Using single brackets or dollar sign instead of {{}}
  • Writing variable name without any braces
  • Confusing variable syntax with other languages
2. Which of the following is the correct syntax to reference a variable named token in Postman?
easy
A. {token}
B. {{token}}
C. [[token]]
D. $token

Solution

  1. Step 1: Recall Postman variable syntax rules

    Postman requires variables to be wrapped in double curly braces to be recognized.
  2. Step 2: Match the correct syntax for variable token

    The correct syntax is {{token}}, which tells Postman to replace it with the variable's value.
  3. Final Answer:

    {{token}} -> Option B
  4. Quick Check:

    Variable reference = {{variable}} [OK]
Hint: Always use double curly braces {{}} for variables [OK]
Common Mistakes:
  • Using single braces or brackets
  • Using dollar sign prefix
  • Forgetting braces entirely
3. Given the environment variable baseUrl is set to https://api.example.com, what will be the full URL when the request uses {{baseUrl}}/users?
medium
A. https://api.example.comusers
B. {{baseUrl}}/users
C. https://api.example.com{{baseUrl}}/users
D. https://api.example.com/users

Solution

  1. Step 1: Understand variable substitution in Postman

    Postman replaces {{baseUrl}} with its set value before sending the request.
  2. Step 2: Substitute {{baseUrl}} with its value

    Since baseUrl is https://api.example.com, the URL becomes https://api.example.com/users.
  3. Final Answer:

    https://api.example.com/users -> Option D
  4. Quick Check:

    Variable replaced URL = https://api.example.com/users [OK]
Hint: Variables replace exactly with their set values [OK]
Common Mistakes:
  • Not replacing variable and leaving {{baseUrl}} as is
  • Concatenating variable value incorrectly
  • Missing slash between baseUrl and path
4. You wrote Authorization: Bearer {token} in the headers, but the token is not replaced. What is the error?
medium
A. Variable syntax is incorrect; should be {{token}}.
B. Token variable is not set anywhere.
C. Bearer keyword is missing.
D. Headers do not support variables.

Solution

  1. Step 1: Check the variable syntax in the header

    The header uses {token} which is missing one pair of curly braces.
  2. Step 2: Correct the syntax to {{token}}

    Postman requires double curly braces to recognize variables, so it should be Authorization: Bearer {{token}}.
  3. Final Answer:

    Variable syntax is incorrect; should be {{token}}. -> Option A
  4. Quick Check:

    Correct variable syntax = {{variable}} [OK]
Hint: Always use double curly braces {{}} for variables in headers too [OK]
Common Mistakes:
  • Using single braces instead of double
  • Assuming variables auto-replace without braces
  • Not setting the variable value before use
5. You want to reuse a variable sessionId inside a JSON body and a header in Postman. Which is the best practice to ensure it works correctly?
hard
A. Set sessionId as an environment variable and use {{sessionId}} in both places.
B. Write sessionId value directly in JSON and header without variables.
C. Use different variable syntaxes in JSON and header for safety.
D. Set sessionId only in the header; JSON will inherit it automatically.

Solution

  1. Step 1: Understand variable scope and reuse in Postman

    Environment variables are accessible throughout the request, including headers and body.
  2. Step 2: Use consistent variable syntax {{sessionId}} in both JSON body and header

    This ensures Postman replaces the variable correctly wherever it appears.
  3. Final Answer:

    Set sessionId as an environment variable and use {{sessionId}} in both places. -> Option A
  4. Quick Check:

    Use environment variables + {{variable}} syntax for reuse [OK]
Hint: Set once as environment variable, use {{variable}} everywhere [OK]
Common Mistakes:
  • Hardcoding values instead of variables
  • Using inconsistent variable syntax
  • Assuming variables auto-share without setting scope
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard