diff --git a/.github/workflows/check-deployed-package.yml b/.github/workflows/check-deployed-package.yml index ece8c14..4d5b031 100644 --- a/.github/workflows/check-deployed-package.yml +++ b/.github/workflows/check-deployed-package.yml @@ -28,4 +28,5 @@ jobs: - name: Check deployed package env: LOGDASH_API_KEY: ${{ secrets.LOGDASH_API_KEY }} + LOGDASH_PERSONAL_API_KEY: ${{ secrets.LOGDASH_PERSONAL_API_KEY }} run: ./check-deployed-package/run.sh diff --git a/check-deployed-package/run.sh b/check-deployed-package/run.sh index b18a4f1..d6a0b47 100755 --- a/check-deployed-package/run.sh +++ b/check-deployed-package/run.sh @@ -29,18 +29,16 @@ echo "Demo completed!" echo echo "Authenticating with Logdash API..." -# Authenticate with API using the API key -AUTH_RESPONSE=$(curl -s -X 'POST' \ - 'https://api.logdash.io/auth/api-key' \ +# Identify the project via the read-only personal API key (whoami). +# The ingest key (LOGDASH_API_KEY) is write-only and is no longer exchangeable for a token. +TOKEN="${LOGDASH_PERSONAL_API_KEY}" +AUTH_RESPONSE=$(curl -s -X 'GET' \ + 'https://api.logdash.io/personal-api-keys/whoami' \ -H 'accept: application/json' \ - -H 'Content-Type: application/json' \ - -d "{ - \"apiKey\": \"${LOGDASH_API_KEY}\" -}") + -H "Authorization: Bearer ${TOKEN}") -# Extract token and projectId from response -TOKEN=$(echo "$AUTH_RESPONSE" | grep -o '"token":"[^"]*"' | sed 's/"token":"\(.*\)"/\1/') -PROJECT_ID=$(echo "$AUTH_RESPONSE" | grep -o '"projectId":"[^"]*"' | sed 's/"projectId":"\(.*\)"/\1/') +# The key is scoped to a single project; whoami returns it under access.ids. +PROJECT_ID=$(echo "$AUTH_RESPONSE" | grep -o '"ids":\[[^]]*\]' | grep -o '"[^"]*"' | head -1 | tr -d '"') if [ -z "$TOKEN" ] || [ -z "$PROJECT_ID" ]; then echo "Error: Failed to authenticate with Logdash API" @@ -55,7 +53,7 @@ echo "Fetching logs from Logdash API..." # Fetch logs from the API LOGS_RESPONSE=$(curl -s -X 'GET' \ - "https://api.logdash.io/projects/${PROJECT_ID}/logs?limit=10" \ + "https://api.logdash.io/projects/${PROJECT_ID}/logs/v2?limit=10" \ -H 'accept: application/json' \ -H "Authorization: Bearer ${TOKEN}")