Swiftorial Logo
Home
Swift Lessons
Tutorials
Learn More
Career
Resources

API Calls with Shell Scripts

Introduction to API Calls

Shell scripts can interact with web APIs to retrieve data, perform actions, and automate tasks. This tutorial explores how to make API calls using shell scripts.

Using cURL for API Calls

cURL is a command-line tool for transferring data with URL syntax. It is widely used for making HTTP requests, including API calls.

Basic GET Request


#!/bin/bash

# Make a GET request to an API endpoint
API_ENDPOINT="https://api.example.com/data"
TOKEN="your_api_token"

curl -X GET "$API_ENDPOINT" -H "Authorization: Bearer $TOKEN"
                

This script makes a GET request to https://api.example.com/data with an authorization token.

POST Request with JSON Body


#!/bin/bash

# Make a POST request with JSON data
API_ENDPOINT="https://api.example.com/create"
TOKEN="your_api_token"
JSON_DATA='{"name": "John Doe", "email": "john.doe@example.com"}'

curl -X POST "$API_ENDPOINT" -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d "$JSON_DATA"
                

This script makes a POST request to create a resource using JSON data.

Handling API Responses

Shell scripts can parse and handle API responses to extract relevant information or perform actions based on the data received.

Extracting Data from JSON Response


#!/bin/bash

# Handle JSON response from an API
API_ENDPOINT="https://api.example.com/data"
TOKEN="your_api_token"

response=$(curl -s -X GET "$API_ENDPOINT" -H "Authorization: Bearer $TOKEN")
value=$(echo "$response" | jq -r '.key')

echo "Value from API response: $value"
                

This script retrieves a specific value from a JSON response returned by an API.

Conclusion

Using shell scripts to make API calls provides flexibility in automating tasks and integrating systems. With tools like cURL and JSON processors, you can effectively interact with various web APIs to enhance your automation workflows.