Retrieve detailed information about a specific campaign, including its aggregated statistics (clicks and URL counts).
You can filter the statistics by a specific date range.
The unique identifier (UUID) of the campaign OR the campaign name.Note on Names: If using a campaign name with spaces (e.g., “Summer Sale”), it must be URL-encoded in the path (e.g., Summer%20Sale).Example: 110e8400-e29b-41d4-a716-446655440000 or Summer%20Sale%202024
# Get by IDcurl -X GET "https://jmpy.me/api/v1/campaigns/110e8400-e29b-41d4-a716-446655440000" \ -H "Authorization: Bearer YOUR_API_KEY"# Get by Name (URL Encoded) with Date Filter (Last 7 Days)curl -X GET "https://jmpy.me/api/v1/campaigns/Summer%20Sale%202024?range=7d" \ -H "Authorization: Bearer YOUR_API_KEY"
Copy
const fetch = require('node-fetch');// You can use either the Campaign Name or UUIDconst campaign_name = 'Summer Sale 2024';// const campaign_uid = '110e8400-e29b-41d4-a716-446655440000';// If using name, it must be URL encoded to handle spacesconst url = `https://jmpy.me/api/v1/campaigns/${encodeURIComponent(campaign_name)}?range=30d`;// If using UUID, no encoding is needed (but safe to do)// const url_uuid = `https://jmpy.me/api/v1/campaigns/${campaign_uid}?range=30d`;const response = await fetch(url, { headers: { 'Authorization': 'Bearer YOUR_API_KEY' }});const data = await response.json();
Copy
import axios from 'axios';// You can use either the Campaign Name or UUIDconst campaign_name = 'Summer Sale 2024';// const campaign_uid = '110e8400-e29b-41d4-a716-446655440000';const response = await axios.get( `https://jmpy.me/api/v1/campaigns/${encodeURIComponent(campaign_name)}`, { params: { range: '30d' // Get stats for last 30 days }, headers: { 'Authorization': 'Bearer YOUR_API_KEY' } });
Copy
import requestsfrom urllib.parse import quote# You can use either the Campaign Name or UUIDcampaign_name = "Summer Sale 2024"# campaign_uid = "110e8400-e29b-41d4-a716-446655440000"# Simple URL construction (quote handles spaces -> Summer%20Sale%202024)url = f"https://jmpy.me/api/v1/campaigns/{quote(campaign_name)}"params = { "range": "30d" }headers = {"Authorization": "Bearer YOUR_API_KEY"}response = requests.get(url, headers=headers, params=params)
Copy
<?php$client = new GuzzleHttp\Client();// You can use either the Campaign Name or UUID$campaign_name = "Summer Sale 2024";// $campaign_uid = "110e8400-e29b-41d4-a716-446655440000";$response = $client->request('GET', "https://jmpy.me/api/v1/campaigns/" . urlencode($campaign_name), [ 'headers' => ['Authorization' => 'Bearer YOUR_API_KEY'], 'query' => ['range' => '30d']]);?>
Copy
package mainimport ( "net/http" "net/url")func main() { // You can use either the Campaign Name or UUID campaignName := "Summer Sale 2024" // campaignUid := "110e8400-e29b-41d4-a716-446655440000" // Ensure path is safe escapedId := url.PathEscape(campaignName) req, _ := http.NewRequest("GET", "https://jmpy.me/api/v1/campaigns/"+escapedId, nil) req.Header.Set("Authorization", "Bearer YOUR_API_KEY") q := req.URL.Query() q.Add("range", "30d") req.URL.RawQuery = q.Encode() http.DefaultClient.Do(req)}
Copy
import java.net.http.HttpClient;import java.net.http.HttpRequest;import java.net.URI;import java.net.http.HttpResponse;import java.net.URLEncoder;import java.nio.charset.StandardCharsets;// You can use either the Campaign Name or UUIDString campaignName = "Summer Sale 2024";// String campaignUid = "110e8400-e29b-41d4-a716-446655440000";String encodedId = URLEncoder.encode(campaignName, StandardCharsets.UTF_8);HttpClient client = HttpClient.newHttpClient();HttpRequest request = HttpRequest.newBuilder() .uri(URI.create("https://jmpy.me/api/v1/campaigns/" + encodedId + "?range=30d")) .header("Authorization", "Bearer YOUR_API_KEY") .GET() .build();client.send(request, HttpResponse.BodyHandlers.ofString());