При устранении неполадок, связанных с ClickBank, очень важно указать, возникают ли проблемные запросы во время «живых транзакций» на сервере API (https://api.clickbank.com) или, скорее, во время «тестовых транзакций» на сервере песочницы (https://sandbox.clickbank.com).
Похоже, что OP тестирует функциональность ClickBank, отправляя запросы на работающий сервер ClickBank, а не на сервер тестирования.
Как показывает предыдущий ответ, строка CURLOPT_URL должна выглядеть так:
curl_setopt($ch, CURLOPT_URL, "https://sandbox.clickbank.com/rest/1.2/sandbox/validateDeveloperKey");
Кроме того, ключи разработчика и API, представленные в OP, не являются ключами песочницы, которые подходят для использования на сервере песочницы. Вместо этого они являются основными ключами разработчика и API, которые должны использоваться для выполнения реальных транзакций на реальном API-сервере.
Ключ разработчика SandBank API ClickBank имеет следующий формат:
DEV-SB-4900BEDD687A7893D3E61CDE7009D4900CB0
Ключ разработчика OP не содержит части "-SB-", что указывает на то, что это не ключ песочницы.
Первым шагом при использовании сервера SandBank SandBank является «подготовка» среды SandBank API SandBank. Вот документация для этого метода от ClickBank https://sandbox.clickbank.com/rest/1.2/sandbox:
POST /1.2/sandbox/prepare - подготовить среду песочницы.
Он создаст ключ разработчика песочницы и вернет его конечному пользователю. Заметка
что пользователь должен иметь действующий ключ разработчика в авторизации
заголовок для доступа к этому API.
Возвращаемый тип: SandboxDeveloperData
Поддерживаемые типы вывода: application / xml, application / json
Чтобы повторить, прежде чем вы сможете начать отправку тестового кода на сервер песочницы ClickBank, вы должны сначала запросить ключ разработчика песочницы ClickBank, отправив запрос PREPARE на правильный URL песочницы. Запрос 'prepare' должен содержать действительный основной ключ разработчика ClickBank в заголовке авторизации, иначе он не будет выполнен.
Продолжая, предыдущий ответ также правильно указывает на то, что хотя в собственном примере PHP ClickBank говорится об использовании параметра опций curl CURLOPT_GET, на самом деле такого параметра curl не существует. Правильный параметр для установки - CURLOPT_HTTPGET, если вы пытаетесь указать запрос GET.
Сказав все это, YMMV. Существует не так много документации об API ClickBank, и что мало информации от ClickBank содержит ошибки. Вполне возможно, что после отладки кода вы все равно получите 403 возврата с сервера Sandbox без видимой причины.
Наконец, один инструмент, который стал для меня бесценным при работе со службами REST, - это "rest-client" http://code.google.com/p/rest-client/
rest-client позволяет вам тестировать запросы GET, POST и HEAD для любой службы REST, прежде чем вы когда-либо напишете первую строку кода.
НТН!