Issue
You want to see when changes to a Heroku SSL endpoint took place.
Resolution
Information about an SSL certificate's expiration can be obtained via the CLI with the heroku certs
command. However, information about when the certificate was created can only be obtained via the Heroku API directly.
This information is currently available via the Heroku Platform API here: https://devcenter.heroku.com/articles/platform-api-reference#sni-endpoint-info
First, you'll want to obtain the name of your API endpoint. You can do this with the CLI command: heroku certs
. Example:
Name Common Name(s) Expires Trusted Type
andesaurus-56621 mydomain.com 2023-09-21 15:57 UTC True ACM
argentinosaurus-68132 www.mydomain.com 2023-09-21 16:01 UTC True ACM
Then, to find out additional information about the endpoint in question (we'll use the argentinosaurus-68132
endpoint in this example), you can run the following curl
command against the Heroku API:
$ curl -n GET https://api.heroku.com/apps/my-heroku-app-name/sni-endpoints/argentinosaurus-68132 \
-H "Accept: application/vnd.heroku+json; version=3" \
-H "Authorization: Bearer HEROKU_API_KEY"
(make sure to replace my-heroku-app-name
with your Heroku app's name, argentinosaurus-68132
with your endpoint name, and HEROKU_API_KEY
with your Heroku API token)
The output of this command will include the certificate chain, as well as the created_at
and updated_at
information. For example:
{
"app": {
"id": "061x7fa0-1350-40b5-943c-372d3d60e77a",
"name": "my-heroku-app-name"
},
...
"created_at": "2023-06-23T17:01:28Z",
"id": "f81c3e55-8793-46f8-8651-ac17b672c18f",
"name": "argentinosaurus-68132",
"updated_at": "2023-06-23T17:01:28Z",
...
}
Note the created_at
and updated_at
endpoints.