diff --git a/.github/workflows/check-deployed-package.yml b/.github/workflows/check-deployed-package.yml index e086219..644d283 100644 --- a/.github/workflows/check-deployed-package.yml +++ b/.github/workflows/check-deployed-package.yml @@ -36,6 +36,7 @@ jobs: - name: Run LogDash demo env: LOGDASH_API_KEY: ${{ secrets.LOGDASH_API_KEY }} + LOGDASH_PERSONAL_API_KEY: ${{ secrets.LOGDASH_PERSONAL_API_KEY }} GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} GITHUB_ACTOR: ${{ github.actor }} run: ./check-deployed-package/run.sh \ No newline at end of file diff --git a/check-deployed-package/run.sh b/check-deployed-package/run.sh index 9bb06d7..db3881e 100755 --- a/check-deployed-package/run.sh +++ b/check-deployed-package/run.sh @@ -31,18 +31,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" @@ -57,7 +55,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}")