본문 바로가기

기타

클라우드플레어 API를 사용하는 방법

728x90

클라우드플레어 API를 사용하는 방법

Cloudflare API를 사용하여 다양한 작업을 수행할 수 있습니다. 이를 통해 도메인 설정, 방화벽 규칙 설정, 콘텐츠 최적화, 보안 설정 등을 관리할 수 있습니다.

Cloudflare 계정 생성 및 로그인

Cloudflare 계정을 생성하고 로그인합니다.

API 키 생성

Cloudflare 대시보드에서 API 키를 생성합니다. 이를 통해 API를 사용하여 Cloudflare에 액세스할 수 있습니다.

대시보드에서 'My Profile' > 'API Tokens'로 이동하여 새 토큰을 생성하고 적절한 권한을 부여합니다.

Cloudflare_API_1
Cloudflare_API_2
Cloudflare_API_3
Cloudflare_API_4
Cloudflare_API_5
Cloudflare_API_6

728x90

API 요청 보내기

API 요청을 보내려면 HTTP 클라이언트를 사용하여 적절한 엔드포인트에 요청을 보냅니다. 이때 인증에 위에서 생성한 API 키를 사용합니다.

curl -s -X GET "https://api.cloudflare.com/client/v4/user/tokens/verify" \
-H "Authorization: Bearer Cvlr" \
-H "Content-Type:application/json"
  • 유효한 API 토큰(활성 상태)
{
  "result": {
    "id": "999c",
    "status": "active"
  },
  "success": true,
  "errors": [],
  "messages": [
    {
      "code": 10000,
      "message": "This API Token is valid and active",
      "type": null
    }
  ]
}
  • 유효하지 않은 API 토큰
{
  "success": false,
  "errors": [
    {
      "code": 1000,
      "message": "Invalid API Token"
    }
  ],
  "messages": [],
  "result": null
}

API 문서 확인

Cloudflare의 API 문서를 확인하여 사용할 수 있는 엔드포인트 및 파라미터를 알아야 합니다. Cloudflare API는 RESTful API로서, HTTP 요청을 보내고 JSON 형식의 응답을 받습니다. Cloudflare의 API 문서는 다양한 작업을 위한 예제와 함께 설명되어 있습니다.

API 스크립트

  • Cloudflare 캐시 상태 확인
curl -sIXGET https://www.example.com/PAGE_URL | egrep cf-cache-status
  • Cloudflare 캐시 삭제
vim cloudflare_purge_cache.sh
#!/bin/bash

# Cloudflare 계정 정보 설정
ZONE_ID='YOUR_ZONE_ID'      # Cloudflare Zone ID
EMAIL='YOUR_EMAIL'          # Cloudflare 계정 이메일
API_KEY='YOUR_APIKEY'       # Cloudflare Global API Key

# 지워야 할 페이지 URL 설정
PAGE_URL='https://www.example.com/PAGE_URL'

# Cloudflare 캐시 지우기
curl -X POST "https://api.cloudflare.com/client/v4/zones/$ZONE_ID/purge_cache" \
-H "X-Auth-Email: $EMAIL" \
-H "X-Auth-Key: $API_KEY" \
-H "Content-Type: application/json" \
--data "{\"files\":[\"$PAGE_URL\"]}"

 

참고URL

- Cloudflare Docs : Cloudflare Fundamentals > Create API token

- Cloudflare API : Cloudflare API

- Cloudflare API : Purge Cached Content

 

728x90