Spending Pulse
mastercard · Company
This API will provide monthly data which includes metrics such as sales volume and growth rate.
Authentication
Sample Requests
Returns the weekly gasoline report. This resource pulls back the report with ProductLine = "US Weekly Gasoline Demand Report". Keep in mind that you must be subscribed to the gasoline weekly report to be able to receive data back from this resource.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/gasweekly?Offset=0&CurrentRow=example"
import requests
params = {
"Offset": "0",
"CurrentRow": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/gasweekly",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/gasweekly');
url.searchParams.set('Offset', '0');
url.searchParams.set('CurrentRow', 'example');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/gasweekly")
q := baseURL.Query()
q.Set("Offset", "0")
q.Set("CurrentRow", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/gasweekly")
uri.query = URI.encode_www_form({
"Offset" => "0",
"CurrentRow" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/gasweekly?" . http_build_query([
"Offset" => "0",
"CurrentRow" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns a distinct list of all reports are available and that one is subscribed to.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/parameters?Offset=0&CurrentRow=example"
import requests
params = {
"Offset": "0",
"CurrentRow": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/parameters",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/parameters');
url.searchParams.set('Offset', '0');
url.searchParams.set('CurrentRow', 'example');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/parameters")
q := baseURL.Query()
q.Set("Offset", "0")
q.Set("CurrentRow", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/parameters")
uri.query = URI.encode_www_form({
"Offset" => "0",
"CurrentRow" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/parameters?" . http_build_query([
"Offset" => "0",
"CurrentRow" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Returns all Spending Pulse reports (with the exception of the gasoline weekly report, which has its own resource), that one is subscribed to.
Hover any highlighted part to learn what it does
curl -X GET "https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/spendingpulse?Ecomm=example&Offset=0&Period=example&Sector=example&Country=US&CurrentRow=example&ReportType=example&ProductLine=example&PublicationCoveragePeriod=example"
import requests
params = {
"Ecomm": "example",
"Offset": "0",
"Period": "example",
"Sector": "example",
"Country": "US",
"CurrentRow": "example",
"ReportType": "example",
"ProductLine": "example",
"PublicationCoveragePeriod": "example"
}
response = requests.get(
"https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/spendingpulse",
params=params,
)
print(response.json())const url = new URL('https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/spendingpulse');
url.searchParams.set('Ecomm', 'example');
url.searchParams.set('Offset', '0');
url.searchParams.set('Period', 'example');
url.searchParams.set('Sector', 'example');
url.searchParams.set('Country', 'US');
url.searchParams.set('CurrentRow', 'example');
url.searchParams.set('ReportType', 'example');
url.searchParams.set('ProductLine', 'example');
url.searchParams.set('PublicationCoveragePeriod', 'example');
const response = await fetch(url);
const data = await response.json();
console.log(data);package main
import (
"fmt"
"io"
"net/http"
"net/url"
)
func main() {
baseURL, _ := url.Parse("https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/spendingpulse")
q := baseURL.Query()
q.Set("Ecomm", "example")
q.Set("Offset", "0")
q.Set("Period", "example")
q.Set("Sector", "example")
q.Set("Country", "US")
q.Set("CurrentRow", "example")
q.Set("ReportType", "example")
q.Set("ProductLine", "example")
q.Set("PublicationCoveragePeriod", "example")
baseURL.RawQuery = q.Encode()
targetURL := baseURL.String()
req, _ := http.NewRequest("GET", targetURL, nil)
client := &http.Client{}
resp, _ := client.Do(req)
defer resp.Body.Close()
body, _ := io.ReadAll(resp.Body)
fmt.Println(string(body))
}require "net/http"
require "json"
uri = URI("https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/spendingpulse")
uri.query = URI.encode_www_form({
"Ecomm" => "example",
"Offset" => "0",
"Period" => "example",
"Sector" => "example",
"Country" => "US",
"CurrentRow" => "example",
"ReportType" => "example",
"ProductLine" => "example",
"PublicationCoveragePeriod" => "example"
})
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = uri.scheme == "https"
req = Net::HTTP::Get.new(uri)
res = http.request(req)
puts JSON.parse(res.body)<?php
$url = "https://api.apis.guru/v2/specs/mastercard.com/SpendingPulse/1.0/spendingpulse?" . http_build_query([
"Ecomm" => "example",
"Offset" => "0",
"Period" => "example",
"Sector" => "example",
"Country" => "US",
"CurrentRow" => "example",
"ReportType" => "example",
"ProductLine" => "example",
"PublicationCoveragePeriod" => "example"
]);
$opts = ["http" => [
"method" => "GET",
]];
$ctx = stream_context_create($opts);
$res = file_get_contents($url, false, $ctx);
print_r(json_decode($res, true));Postman Setup Guide
- See official documentation for authentication and setup.
What can you build with Spending Pulse?
Spending Pulse is a Company API. Developers commonly use company APIs for:
- enriching CRM records with company firmographics
- building lead-generation and prospecting tools
- verifying business identity and registration details
- monitoring competitors and market intelligence
- powering B2B data enrichment pipelines
No authentication required. This API is open — no signup or key needed. Ideal for quick prototypes and public-facing features. Spending Pulse is free to use, making it a low-risk choice to experiment with.
New to APIs? Read our beginner's guide