---
title: "Station Manager Public API"
canonical: "https://docs.pbs.org/space/SM/5046328/Station%20Manager%20Public%20API"
format: markdown
---
Overview This document is intended for developers who want to write applications that interact with Station Manager. It explains basic concepts of Station Manager and the API and provides an overview of the different functions supported by the API. The public call returns all publicly-accessible data and can be filtered by station flagship callsign. Station Manager Console Help Getting started Before using the API, familiarize yourself with the following: Core concepts of the JSON (JavaScript Object Notation) data format. JSON is a common, language-independent data format that provides a simple text representation of arbitrary data structures. For more information, see  json.org . Resources and resource types A resource is an individual data entity with a unique identifier. The table below describes the different types of resources and the different calls you can make when using this API. Resource type Description Station </resources/station> Station object Supported actions Action Description get Retrieves (GET) a specific resource. The table below identifies the (subset of) operations that are supported for different types of resources. Each resource may support some particular actions which are described on their individual specification page. Resource type get  Station  yes HTTP request headers The header ‘Content-type’ should have the value ‘application/json’ as described in  HTTP Request headers . The required headers used by the API are listed below. At the moment we’re only accepting JSON and JSONAPI-specific header. Header Meaning Values Content-Type The content type of the payload application/json Content-Type The content type of the payload application/vnd.api+json Caching For updates made in Station Manager, there is a 10 minute cache time applied for the API. Possible fields returned Parameter name Value Description call_sign string Station call sign (this is a unique value in our system) full_common_name string Full common name (Max: 255 characters) short_common_name string Short common name (Max: 128 characters) tvss_url string The URL of TV Schedule donate_url string The donation URL of the Station timezone string The timezone of your Station's location website_url string The homepage URL of the Station facebook_url string The Facebook page of the Station twitter_url string The X (formerly Twitter) page of the Station youtube_url string The YouTube channel of the Station station_kids_url string The kids homepage of the Station telephone string The telephone number of the Station fax string The fax number of the Station city string The city in the station's mailing address. state string The state in the station's mailing address. address_line_1 string The station's mailing address. address_line_2 string The station's mailing address. zip_code string The zip code for the station's mailing address. email string The email contact of the Station tag_line string The Station’s tag line primary_channel string Determines the station’s default TV listings grid primetime_start string The primetime start designated by the station. images object or empty list Images associated to a Station updated_at datetime When the Station was last updated id string Station ID The following table describes the parameters for all images. Parameter name Value Description profile string The profile of the image url string The link to the ITS image Endpoints Currently, Station is the only endpoint available in Station Manager.  A station can be identified by its station ID (recommended) or by filtering by its flagship callsign ( not recommended , as call signs change). Base Endpoint https://station.services.pbs.org/api/public/v1/stations/ Station:list Returns a collection with all stations. HTTP Request GET https://station.services.pbs.org/api/public/v1/stations/ URI Parameters Parameter name Value Description [id] string station ID call_sign string station callsign (case sensitive). Must be ALL CAPS.  This parameter is NOT RECOMMENDED, as call signs can change. We recommend using the station ID (shown above) instead. page integer Show the results on a specific page. sort string Show the sorted by specific fields. The available fields are specified in the  [‘meta’][‘sort’]  block. Example Output The response for a request made to this endpoint will be paginated. The following response is for a request made without any query parameters: Station information returned {
    "jsonapi": {
        "version": "1.0"
    },
    "meta": {
        "pagination": {
            "per_page": 25,
            "count": 156
        },
        "type": "collection",
        "filter": {
            "id": "https://station.services.pbs.org/api/public/v1/stations/?id=",
            "call_sign": "https://station.services.pbs.org/api/public/v1/stations/?call_sign="
        }
    },
    "links": {
        "self": "https://station.services.pbs.org/api/public/v1/stations/",
        "first": "https://station.services.pbs.org/api/public/v1/stations/",
        "last": "https://station.services.pbs.org/api/public/v1/stations/?page=7",
        "next": "https://station.services.pbs.org/api/public/v1/stations/?page=2",
        "prev": null
    },
    "data": [
        {
            "id": "838f7279-cacf-4561-bd33-ac9a4b1429e8",
            "attributes": {
                "call_sign": "KACV",
                "full_common_name": "Panhandle PBS",
                "short_common_name": "PPBS",
                "tvss_url": "http://www.panhandlepbs.org/schedule/#page=schedule&day=20150803&provider=Broadcast",
                "donate_url": "http://www.panhandlepbs.org/donate/",
                "timezone": "America/Chicago",
                "secondary_timezone": "",
                "video_portal_url": "https://video.panhandlepbs.org",
                "website_url": "http://www.panhandlepbs.org/home/",
                "facebook_url": "https://www.facebook.com/PanhandlePBS",
                "twitter_url": "http://twitter.com/PanhandlePBS",
                "station_kids_url": "http://www.panhandlepbs.org/kids",
                "passport_url": "https://kacv.secureallegiance.com/kacv/WebModule/Donate.aspx?P=WEBMAINNG&PAGETYPE=PLG&CHECK=lMYXvpDIkCE12EZ5gL%2bAwK1gzMC6uhq5nDjkJobrCdg%3d",
                "telephone": "(806) 371-5222",
                "fax": "(806) 371-5258",
                "city": "Amarillo",
                "state": "TX",
                "address_line_1": "2408 S. Jackson",
                "address_line_2": "P.O. Box 447",
                "zip_code": "79178",
                "country_code": "US",
                "email": "PanhandlePBS@actx.edu",
                "tag_line": "",
                "page_tracking": "UA-10779730-4",
                "event_tracking": "UA-10749830-4",
                "primary_channel": "",
                "primetime_start": "7PM",
                "images": [
                    {
                        "profile": "black-logo",
                        "url": "https://image.pbs.org/stations/kacv-black-logo-xqncCDm.png"
                    },
                    {
                        "profile": "white-logo",
                        "url": "https://image.pbs.org/stations/kacv-white-logo-e4BEMp6.png"
                    },
                    {
                        "profile": "color-logo",
                        "url": "https://image.pbs.org/stations/kacv-color-logo-Dajm8cP.png"
                    },
                    {
                        "profile": "station-scenery-11",
                        "url": "https://image.pbs.org/stations/kacv-station-scenery-11-WWd502M.jpg"
                    },
                    {
                        "profile": "white-cobranded-logo",
                        "url": "https://image.pbs.org/stations/kacv-white-cobranded-logo-uC5eWFv.png"
                    },
                    {
                        "profile": "color-cobranded-logo",
                        "url": "https://image.pbs.org/stations/kacv-color-cobranded-logo-9QRdiRS.png"
                    }
                ],
                "updated_at": "2020-02-25T13:59:22.843117Z"
            },
            "type": "station",
            "links": {
                "self": "https://station.services.pbs.org/api/public/v1/stations/838f7279-cacf-4561-bd33-ac9a4b1429e8/"
            }
        },
        {
            "id": "6d08b852-2c19-4eb7-9348-a5e15b685357",
            "attributes": {
                "call_sign": "KAET",
                "full_common_name": "Arizona PBS",
                "short_common_name": "ArizonaPBS",
                "tvss_url": "https://azpbs.org/schedule",
                "donate_url": "https://secure2.convio.net/kaet/site/Donation2?14852.donation=form1&df_id=14852&mfc_pref=T",
                "timezone": "America/Phoenix",
                "secondary_timezone": "",
                "video_portal_url": "http://video.azpbs.org",
                "website_url": "https://azpbs.org",
                "facebook_url": "https://www.facebook.com/arizonapbs",
                "twitter_url": "https://twitter.com/arizonapbs",
                "station_kids_url": "https://azpbs.org/kids",
                "passport_url": "http://kaet.convio.net/site/Donation2?df_id=14065&mfc_pref=T&14065.donation=form1",
                "telephone": "(602) 496-8888",
                "fax": "(602) 496-8045",
                "city": "Phoenix",
                "state": "AZ",
                "address_line_1": "Arizona PBS/KAET-TV",
                "address_line_2": "555 North Central Avenue, Suite 500",
                "zip_code": "85004",
                "country_code": "US",
                "email": "supportAZPBS@asu.edu",
                "tag_line": "",
                "page_tracking": "UA-7759226-2",
                "event_tracking": "UA-7659826-2",
                "primary_channel": "Arizona PBS",
                "primetime_start": "7PM",
                "images": [
                    {
                        "profile": "black-logo",
                        "url": "https://image.pbs.org/stations/kaet-black-logo-IyglqJE.png"
                    },
                    {
                        "profile": "white-logo",
                        "url": "https://image.pbs.org/stations/kaet-white-logo-Iv7cIbv.png"
                    },
                    {
                        "profile": "color-logo",
                        "url": "https://image.pbs.org/stations/kaet-color-logo-KkYt9tL.png"
                    },
                    {
                        "profile": "station-scenery-11",
                        "url": "https://image.pbs.org/stations/kaet-station-scenery-11-B44CPT2.jpg"
                    },
                    {
                        "profile": "white-cobranded-logo",
                        "url": "https://image.pbs.org/stations/kaet-white-cobranded-logo-qbmMI7t.png"
                    },
                    {
                        "profile": "color-cobranded-logo",
                        "url": "https://image.pbs.org/stations/kaet-color-cobranded-logo-7yONHt4.png"
                    },
                    {
                        "profile": "color-single-brand-logo",
                        "url": "https://image.pbs.org/stations/kaet-color-single-brand-logo-Bz3Oe7u.png"
                    },
                    {
                        "profile": "white-single-brand-logo",
                        "url": "https://image.pbs.org/stations/kaet-white-single-brand-logo-porNahY.png"
                    }
                ],
                "updated_at": "2019-07-31T21:31:55.164778Z"
            }, Filter by Station ID Requesting the station that will match WETA station ID. This will always return 1 or 0 results, because the filtering is an exact match by ID. How Do I Get Station ID? Look up the station ID using the link below and appending the station flagship call sign to the end. In the response, look for the "id" field. Use this id value to Filter by Station ID, which is the recommended way to request station data. This is because call signs can change; the ID will never change. The example below uses WETA: https://station.services.pbs.org/api/public/v1/stations/?call_sign=WETA Filter by Station ID GET https://station.services.pbs.org/api/public/v1/stations/92d89794-5ff0-4fe6-a443-cc888104e021 Station information returned {
    "data": {
        "type": "station",
        "id": "92d89794-5ff0-4fe6-a443-cc888104e021",
        "attributes": {
            "call_sign": "WETA",
            "full_common_name": "WETA",
            "short_common_name": "WETA",
            "tvss_url": "https://weta.org/schedule",
            "donate_url": "https://weta.org/pbs",
            "timezone": "America/New_York",
            "secondary_timezone": "",
            "video_portal_url": "https://watch.weta.org",
            "website_url": "https://weta.org",
            "facebook_url": "https://facebook.com/wetatvfm",
            "twitter_url": "https://twitter.com/wetatvfm",
            "station_kids_url": "https://weta.org/kids",
            "passport_url": "https://weta.org/givepassport",
            "telephone": "(703) 998-2724",
            "fax": "(703) 998-3401",
            "city": "Arlington",
            "state": "VA",
            "address_line_1": "3939 Campbell Avenue",
            "address_line_2": "",
            "zip_code": "22206",
            "country_code": "US",
            "email": "audienceservices@weta.org",
            "tag_line": "Public television and classical music for Greater Washington",
            "page_tracking": "UA-2017936-1",
            "event_tracking": "UA-2017926-7",
            "primary_channel": "WETA TV",
            "primetime_start": "8PM",
            "images": [
                {
                    "profile": "black-logo",
                    "url": "https://image.pbs.org/stations/weta-black-logo-fgPrvsK.png"
                },
                {
                    "profile": "white-logo",
                    "url": "https://image.pbs.org/stations/weta-white-logo-JQgQDpP.png"
                },
                {
                    "profile": "color-logo",
                    "url": "https://image.pbs.org/stations/weta-color-logo-iZbJH8k.png"
                },
                {
                    "profile": "station-scenery-11",
                    "url": "https://image.pbs.org/stations/weta-station-scenery-11-hmWZLVa.jpg"
                },
                {
                    "profile": "white-cobranded-logo",
                    "url": "https://image.pbs.org/stations/weta-white-cobranded-logo-vATvdJf.png"
                },
                {
                    "profile": "color-cobranded-logo",
                    "url": "https://image.pbs.org/stations/weta-color-cobranded-logo-OQf1Wwd.png"
                },
                {
                    "profile": "color-single-brand-logo",
                    "url": "https://image.pbs.org/stations/weta-color-single-brand-logo-ZeUHAPm.png"
                },
                {
                    "profile": "white-single-brand-logo",
                    "url": "https://image.pbs.org/stations/weta-white-single-brand-logo-RS8E5tA.png"
                }
            ],
            "updated_at": "2019-12-27T16:14:58.002251Z"
        }
    },
    "meta": {
        "type": "resource"
    },
    "links": {
        "self": "https://station.services.pbs.org/api/public/v1/stations/92d89794-5fg0-4fe6-a463-cc886104e021/"
    },
    "jsonapi": {
        "version": "1.0"
    }
} HTTP response status codes The possible Status codes returned by this call are  200, 401, 403, 500 . For information about these statuses, refer to the  HTTP response status codes section . The following are possible status codes returned by API calls responses. Status code Meaning Resolution 200 Success Operation was successful 400 Bad request Description of the error will be given in the payload 401 Unauthenticated consumer The consumer with this key:secret pair doesn’t exist in the system 403 Unauthorized consumer The consumer with the key:secret doesn’t have access to this resource 404 No resources found The demanded resources can not be found 500 Internal server error Unknown error Pagination The Station Manager API uses "page-size" to determine the number of results displayed on one page. The maximum allowed number of results displayed is 50.  The following is an example returning three stations: Pagination example https://station.services.pbs.org/api/public/v1/stations/?page-size=3 Select page The Station Manager API uses "page=" to determine which page of results you wish to view. If you have 10 pages of results, you can use this filter to jump to page two, or any other page within the 10 results. The following is an example of jumping to page two of the list of search results.  Select page example https://station.services.pbs.org/api/public/v1/stations/?page=2