Дерево страниц
Перейти к концу метаданных
Переход к началу метаданных

Вы просматриваете старую версию данной страницы. Смотрите текущую версию.

Сравнить с текущим просмотр истории страницы

Версия 1 Следующий »

Ваши сертификаты

В этом разделе описаны методы API для создания, удаления и изменения ваших SSL-сертификатов.

Получить список всех сертификатов

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/certificate/

  • Тип запроса: GET
  • Заголовки: CDN-AUTH-TOKEN
  • Тип данных ответа: JSON Object

Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип string, data: тип JSON ArrayJSONИнформация о сертификатах или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0OK
454Record not found in database
455Not Allowed
550Internal Server Error


Формат JSON, возвращаемого в элементах параметра data:

"comment": "july_23",  - string
"end_timestamp": 1689570782,  - timestamp
"cn": "*.rcloud.ru",  - string
"seq": 1,  - int (uid)
"start_timestamp": 1655269983, - timestamp 
"alt": "*.rcloud.ru, rcloud.ru",  - string
"issuer": "Go Daddy Secure Certificate Authority - G2", - string
"start_iso8601": "2022-06-15T05:13:03Z", - string
"end_iso8601": "2023-07-17T05:13:02Z" - string


Пример запроса

curl -H "CDN-AUTH-TOKEN: $TOKEN"  https://apicdn.rcloud.ru/app/ssl/v1/account/zpylkbwv/certificate/

Пример успешного ответа

 {"status": 0, "message": "", "data": [{"comment": "july_23", "end_timestamp": 1689570782, "cn": "*.rcloud.ru", "seq": 1, "start_timestamp": 1655269983, "alt": "*.rcloud.ru, rcloud.ru", "issuer": "Go Daddy Secure Certificate Authority - G2", "start_iso8601": "2022-06-15T05:13:03Z", "end_iso8601": "2023-07-17T05:13:02Z"}]}

Пример неуспешного ответа

{"status": 454, "message": "Record not found in database"}

Получить сертификат по ID

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/certificate/<certificate_seq>

  • Тип запроса: GET
  • Заголовки: CDN-AUTH-TOKEN
  • Тип данных ответа: JSON Object

Возможные query-параметры:

Имя параметраНазначениеОбязательный
detailsПолучение дополнительной информации о цепочке сертификатовНет


Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип string, data: тип JSON ArrayJSONИнформация о сертификате или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0OK
454Record not found in database
455Not Allowed
550Internal Server Error


Формат JSON, возвращаемого в элементах параметра data:

"comment": "july_23",  - string
"end_timestamp": 1689570782,  - timestamp
"cn": "*.rcloud.ru",  - string
"seq": 1,  - int (uid)
"start_timestamp": 1655269983, - timestamp 
"alt": "*.rcloud.ru, rcloud.ru",  - string
"issuer": "Go Daddy Secure Certificate Authority - G2", - string
"start_iso8601": "2022-06-15T05:13:03Z", - string
"end_iso8601": "2023-07-17T05:13:02Z", - string
"chain_info": [], - JSON Array of JSON objects *


* только при запросе с query-параметром 'details'

Формат JSON, возвращаемого в элементах параметра data.chain_info:

"end_timestamp": 1689570782,  - timestamp
"subject_CN": "*.rcloud.ru",  - string
"start_timestamp": 1655269983, - timestamp 
"issuer_CN": "GlobalSign GCC R3 DV TLS CA 2020", - string
"start_iso8601": "2022-06-15T05:13:03Z", - string
"end_iso8601": "2023-07-17T05:13:02Z", - string
"fingerprint": "22:C2:D3:6B:6B:EE:AF:D3:1C:61:0A:0A:87:D4:92:F4:83:BE:9B:6A", - string
"serial": "42:D5:2A:6F:9A:D9:E9:D0:49:D7:74:77" - string


Пример запроса

curl -H "CDN-AUTH-TOKEN: $TOKEN"  https://apicdn.rcloud.ru/app/ssl/v1/account/zpylkbwv/certificate/1/

Пример успешного ответа

 {"status": 0, "message": "", "data": [{"comment": "july_23", "end_timestamp": 1689570782, "cn": "*.rcloud.ru", "seq": 1, "start_timestamp": 1655269983, "alt": "*.rcloud.ru, rcloud.ru", "issuer": "Go Daddy Secure Certificate Authority - G2", "start_iso8601": "2022-06-15T05:13:03Z", "end_iso8601": "2023-07-17T05:13:02Z"}]}

Пример неуспешного ответа

{"status": 454, "message": "Record not found in database"}

Пример запроса с дополнительной информацией о цепочке

curl -H "CDN-AUTH-TOKEN: $TOKEN"  https://apicdn.rcloud.ru/app/ssl/v1/account/zpylkbwv/certificate/1/?details

Пример успешного ответа

 {"status": 0, "message": "", "data": [{"comment": "july_23", "end_timestamp": 1689570782, "cn": "*.rcloud.ru", "seq": 1, "start_timestamp": 1655269983, "alt": "*.rcloud.ru, rcloud.ru", "issuer": "GlobalSign GCC R3 DV TLS CA 2020", "start_iso8601": "2022-06-15T05:13:03Z", "end_iso8601": "2023-07-17T05:13:02Z", "chain_info": [{"start_timestamp": 1655269983, "end_iso8601": "2023-07-17T05:13:02Z", "start_iso8601": "2022-06-15T05:13:03Z", "subject_CN": "*.rcloud.ru", "fingerprint": "22:C2:D3:6B:6B:EE:AF:D3:1C:61:0A:0A:87:D4:92:F4:83:BE:9B:6A", "issuer_CN": "GlobalSign GCC R3 DV TLS CA 2020", "serial": "42:D5:2A:6F:9A:D9:E9:D0:49:D7:74:77", "end_timestamp": 1689570782}, {"start_timestamp": 1595883600, "end_iso8601": "2029-03-18T00:00:00Z", "start_iso8601": "2020-07-28T00:00:00Z", "subject_CN": "GlobalSign GCC R3 DV TLS CA 2020", "fingerprint": "1C:61:0A:0A:87:D4:92:F4:83:22:C2:AF:D3:BE:9B:6A:D3:6B:6B:EE", "issuer_CN": "GlobalSign", "serial": "77:BD:0E:07:42:D5:D9:E9:D0:49:D7:74:D0:2A:6F:9A", "end_timestamp": 1868475600}, {"start_timestamp": 1237359600, "end_iso8601": "2029-03-18T10:00:00Z", "start_iso8601": "2009-03-18T10:00:00Z", "subject_CN": "GlobalSign", "fingerprint": "D6:9B:56:11:48:F0:1C:77:C5:45:78:C1:09:26:DF:5B:85:69:76:AD", "issuer_CN": "GlobalSign", "serial": "04:00:00:00:00:01:21:58:53:08:A2", "end_timestamp": 1868511600}]}]}

Добавить сертификат

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/certificate/

  • Тип запроса: POST
  • Заголовки: CDN-AUTH-TOKEN
  • Тело запроса: JSON с данными сертификата
  • Тип данных ответа: JSON Object

Описание параметров тела запроса:

Имя параметраТип параметраОбязательный
certificateТекстДа
private_keyТекстДа
commentТекстДа


Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип string, data: тип JSON ObjectJSONСертификат добавлен или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0cert saved
450Invalid request
455Not Allowed
459Certificate already exist, use PATCH to update certificate
471Invalid certificate
472Invalid private key
473Private key does not match certificate
474Certificate is expired
475Root certificate is not found in system trusted certificates
476One of certificates is not signed by previous certificate in chain
477Certificate has N invalid line(s)
478Cert chain error: Two or more certificates have the same subject
479Cert chain error: Too many certificates have the same issuer
550Internal Server Error


Формат JSON, возвращаемого в параметре data:

"seq": 1,  - int (uid)


Пример запроса

curl -X POST -d '{"comment": "new comment", \
    "certificate": "-----BEGIN CERTIFICATE-----\nMIIMvzCCC6egAwIBAgISBDOHrUbe+jaL2W0x4w3T5YuBMA0GCSqGSIb3DQEBCwUA\n-----END CERTIFICATE-----", \
    "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQtDgBy3kRiv2\n-----END PRIVATE KEY-----"}' \
-H "CDN-AUTH-TOKEN: $TOKEN" \
'https://apicdn.rcloud.ru/app/ssl/v1/account/zpylkbwv/certificate/'

Пример успешного ответа

{
  "status": 0,
  "message": "cert saved",
  "data": {
    "seq": 2
  }
}

Пример неуспешного ответа

{"status": 459, "message": "Certificate already exist, use PATCH to update certificate"}

Изменить сертификат

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/certificate/<certificate_seq>

  • Тип запроса: PATCH
  • Заголовки: CDN-AUTH-TOKEN
  • Тело запроса: JSON с новыми данными сертификата
  • Тип данных ответа: JSON Object

Описание параметров тела запроса:

Имя параметраТип параметраОбязательный
certificateТекстНет
private_keyТекстНет
commentТекстНет


Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип string, data: тип JSON ObjectJSONСертификат изменен или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0cert updated
450Invalid request
454Record not found in database
455Not Allowed
471Invalid certificate
472Invalid private key
473Private key does not match certificate
474Certificate is expired
475Root certificate is not found in system trusted certificates
476One of certificates is not signed by previous certificate in chain
477Certificate has N invalid line(s)
550Internal Server Error


Формат JSON, возвращаемого в параметре data:

"seq": 1,  - int (uid)


Пример запроса

curl -X PATCH -d '{ \
    "certificate": "-----BEGIN CERTIFICATE-----\nMIIMvzCCC6egAwIBAgISBDOHrUbe+jaL2W0x4w3T5YuBMA0GCSqGSIb3DQEBCwUA\n-----END CERTIFICATE-----", \
    "private_key": "-----BEGIN PRIVATE KEY-----\nMIIEvgIBADANBgkqhkiG9w0BAQEFAASCBKgwggSkAgEAAoIBAQDQtDgBy3kRiv2\n-----END PRIVATE KEY-----", \
    "comment": "new comment"}' \
-H "CDN-AUTH-TOKEN: $TOKEN" \
'https://apicdn.rcloud.ru/app/ssl/v1/account/zpylkbwv/certificate/1'

Пример успешного ответа

{
  "status": 0,
  "message": "cert updated",
  "data": {
    "seq": 2
  }
}

Пример неуспешного ответа

{"status": 471, "message": "Invalid certificate"}

Удалить сертификат

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/certificate/<certificate_seq>

  • Тип запроса: DELETE
  • Заголовки: CDN-AUTH-TOKEN
  • Тип данных ответа: JSON Object

Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип string, data: тип JSON ObjectJSONСертификат удален или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0cert deleted
450Invalid request
454Record not found in database
455Not Allowed
550Internal Server Error


Формат JSON, возвращаемого в параметре data:

"seq": 1,  - int (uid)


Пример запроса

curl -X DELETE \
-H "CDN-AUTH-TOKEN: $TOKEN" \
'https://apicdn.rcloud.ru/app/ssl/v1/account/zpylkbwv/certificate/1'

Пример успешного ответа

{
  "status": 0,
  "message": "cert deleted",
  "data": {
    "seq": 2
  }
}

Пример неуспешного ответа

{"status": 454, "message": "Record not found in database"}

Let’s Encrypt сертификаты

Мы также предоставляем возможность генерировать Let's Encrypt сертификаты. Подробнее о проекте можно прочитать по ссылке: https://letsencrypt.org

Получить статус заказа сертификата

Получение статуса о создании сертификата (только с указанием ресурса)

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/letsencrypt/<resource_id>/

  • Тип запроса: GET
  • Заголовки: CDN-AUTH-TOKEN
  • Тип данных ответа: JSON Object

Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип string, data: тип JSON ObjectJSONСтатус задачи или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0Success
450Invalid Request
454Record not found in database (about resource)
455Not Allowed
550Internal Server Error


Формат JSON, возвращаемого в параметре data:

task_status: string
("no"/"accepted"/"processed"/"failed")

Пример запроса

curl -H "CDN-AUTH-TOKEN: $TOKEN" \
https://apicdn.rcloud.ru/app/ssl/v1/account/cpfgdakp/letsencrypt/lajjncnn6d

Пример успешного ответа

 {
   "status": 0,
   "message": "Success",
   "data": {
     "task_status": "accepted"
   }
 }

Пример неуспешного ответа

{"status": 450, "message": "Invalid Request"}

Заказать сертификат

Создание Let's Encrypt сертификата для ресурса, при помощи HTTP-01 вызова.

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/letsencrypt/<resource_id>/

  • Тип запроса: POST
  • Заголовки: CDN-AUTH-TOKEN
  • Тип данных ответа: JSON Object

Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип stringJSONСертификат заказан или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0Success
450Invalid request
454Record not found in database (about resource)
455Not Allowed
479Main domain already in use
489Task already exist
550Internal Server Error


Пример запроса

curl -X POST \
-H "CDN-AUTH-TOKEN: $TOKEN" \
https://apicdn.rcloud.ru/app/ssl/v1/account/cpfgdakp/letsencrypt/lajjncnn6d

Пример успешного ответа

{"status": 0, "message": "Success"}

Пример неуспешного ответа

{"status": 450, "message": "Invalid Request"}

Заказать wildcard сертификат

URL: https://apicdn.rcloud.ru/app/ssl/v1/account/<your_account_name>/letsencrypt/

  • Тип запроса: POST
  • Заголовки: CDN-AUTH-TOKEN
  • Тело запроса: JSON со списком доменов
  • Тип данных ответа: JSON Object

Описание параметров тела запроса:

Имя параметраТип параметраОбязательный
domainsСписок строкДа


Возможные коды ответа HTTP:

Код ответаДанные ответаФормат ответаОписание
200status: тип int, message: тип stringJSONСертификат заказан или ошибка
503NoneNoneСервис недоступен


Возможные коды ответа API в параметре status:

Код ответаСообщение
0Success
450Invalid request
454Record not found in database (about resource)
455Not Allowed
479Main domain already in use
480DNS settings are incorrect
489Task already exist
550Internal Server Error


Пример запроса

curl -X POST -d '{"domains": ["*.d.example.com"]}' \
-H "CDN-AUTH-TOKEN: $TOKEN" \
https://apicdn.rcloud.ru/app/ssl/v1/account/cpfgdakp/letsencrypt/

Пример успешного ответа

 {"status": 0, "message": "Success"}

Пример неуспешного ответа

 {"status": 480, "message": "DNS settings are incorrect"}
  • Нет меток