JavaScript
import Courier from '@trycourier/courier';
const client = new Courier({
apiKey: process.env['COURIER_API_KEY'], // This is the default and can be omitted
});
const previewDeviceListResponse = await client.previews.listDevices();
console.log(previewDeviceListResponse.results);import os
from courier import Courier
client = Courier(
api_key=os.environ.get("COURIER_API_KEY"), # This is the default and can be omitted
)
preview_device_list_response = client.previews.list_devices()
print(preview_device_list_response.results)package main
import (
"context"
"fmt"
"github.com/trycourier/courier-go/v4"
"github.com/trycourier/courier-go/v4/option"
)
func main() {
client := courier.NewClient(
option.WithAPIKey("My API Key"),
)
previewDeviceListResponse, err := client.Previews.ListDevices(context.TODO())
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", previewDeviceListResponse.Results)
}
package com.courier.example;
import com.courier.client.CourierClient;
import com.courier.client.okhttp.CourierOkHttpClient;
import com.courier.models.previews.PreviewDeviceListResponse;
import com.courier.models.previews.PreviewListDevicesParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
CourierClient client = CourierOkHttpClient.fromEnv();
PreviewDeviceListResponse previewDeviceListResponse = client.previews().listDevices();
}
}require "courier"
courier = Courier::Client.new(api_key: "My API Key")
preview_device_list_response = courier.previews.list_devices
puts(preview_device_list_response)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Courier\Client;
use Courier\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('COURIER_API_KEY') ?: 'My API Key');
try {
$previewDeviceListResponse = $client->previews->listDevices();
var_dump($previewDeviceListResponse);
} catch (APIException $e) {
echo $e->getMessage();
}using System;
using TryCourier;
using TryCourier.Models.Previews;
CourierClient client = new();
PreviewListDevicesParams parameters = new();
var previewDeviceListResponse = await client.Previews.ListDevices(parameters);
Console.WriteLine(previewDeviceListResponse);courier previews list-devices \
--api-key 'My API Key'curl --request GET \
--url https://api.courier.com/previews/devices \
--header 'Authorization: Bearer <token>'{
"results": [
{
"id": "pvd_34qvmj6p4dbqaa5mpys1ekt9jx",
"name": "Outlook.com (Firefox, Windows 10, dark mode)",
"category": "webmail",
"app": "outlook_com",
"platform": "firefox",
"platform_version": null,
"os": "windows",
"os_version": "10",
"theme": "dark"
},
{
"id": "pvd_1w6dgafr3aaycvv9a8bm996pkc",
"name": "Apple Mail (iPhone 15 Pro Max, iOS 17, dark mode)",
"category": "mobile",
"app": "apple_mail",
"platform": "iphone",
"platform_version": "15_pro_max",
"os": "ios",
"os_version": "17",
"theme": "dark"
}
]
}Previews
List Preview Devices
List the devices a preview can be rendered on. Reference data, identical for every workspace — these ids are what a device set is built from and what a run reports results for.
GET
/
previews
/
devices
JavaScript
import Courier from '@trycourier/courier';
const client = new Courier({
apiKey: process.env['COURIER_API_KEY'], // This is the default and can be omitted
});
const previewDeviceListResponse = await client.previews.listDevices();
console.log(previewDeviceListResponse.results);import os
from courier import Courier
client = Courier(
api_key=os.environ.get("COURIER_API_KEY"), # This is the default and can be omitted
)
preview_device_list_response = client.previews.list_devices()
print(preview_device_list_response.results)package main
import (
"context"
"fmt"
"github.com/trycourier/courier-go/v4"
"github.com/trycourier/courier-go/v4/option"
)
func main() {
client := courier.NewClient(
option.WithAPIKey("My API Key"),
)
previewDeviceListResponse, err := client.Previews.ListDevices(context.TODO())
if err != nil {
panic(err.Error())
}
fmt.Printf("%+v\n", previewDeviceListResponse.Results)
}
package com.courier.example;
import com.courier.client.CourierClient;
import com.courier.client.okhttp.CourierOkHttpClient;
import com.courier.models.previews.PreviewDeviceListResponse;
import com.courier.models.previews.PreviewListDevicesParams;
public final class Main {
private Main() {}
public static void main(String[] args) {
CourierClient client = CourierOkHttpClient.fromEnv();
PreviewDeviceListResponse previewDeviceListResponse = client.previews().listDevices();
}
}require "courier"
courier = Courier::Client.new(api_key: "My API Key")
preview_device_list_response = courier.previews.list_devices
puts(preview_device_list_response)<?php
require_once dirname(__DIR__) . '/vendor/autoload.php';
use Courier\Client;
use Courier\Core\Exceptions\APIException;
$client = new Client(apiKey: getenv('COURIER_API_KEY') ?: 'My API Key');
try {
$previewDeviceListResponse = $client->previews->listDevices();
var_dump($previewDeviceListResponse);
} catch (APIException $e) {
echo $e->getMessage();
}using System;
using TryCourier;
using TryCourier.Models.Previews;
CourierClient client = new();
PreviewListDevicesParams parameters = new();
var previewDeviceListResponse = await client.Previews.ListDevices(parameters);
Console.WriteLine(previewDeviceListResponse);courier previews list-devices \
--api-key 'My API Key'curl --request GET \
--url https://api.courier.com/previews/devices \
--header 'Authorization: Bearer <token>'{
"results": [
{
"id": "pvd_34qvmj6p4dbqaa5mpys1ekt9jx",
"name": "Outlook.com (Firefox, Windows 10, dark mode)",
"category": "webmail",
"app": "outlook_com",
"platform": "firefox",
"platform_version": null,
"os": "windows",
"os_version": "10",
"theme": "dark"
},
{
"id": "pvd_1w6dgafr3aaycvv9a8bm996pkc",
"name": "Apple Mail (iPhone 15 Pro Max, iOS 17, dark mode)",
"category": "mobile",
"app": "apple_mail",
"platform": "iphone",
"platform_version": "15_pro_max",
"os": "ios",
"os_version": "17",
"theme": "dark"
}
]
}⌘I