Revoke a user's Google Wallet pass
Expires every saved Google Wallet object of the user's Google wallet key and clears the key it presents at a lock; the Google wallet worker serves the key no pass again. Only an API key may call it: a partner for its own org's keys, a super key for any key.
curl -X POST "https://api.spkey.co/users/example_string/wallet/revoke" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN (JWT)" \
-H "X-API-Key: YOUR_API_KEY" \
-d '{
"keyId": "example_string"
}'
import requests
import json
url = "https://api.spkey.co/users/example_string/wallet/revoke"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN (JWT)",
"X-API-Key": "YOUR_API_KEY"
}
data = {
"keyId": "example_string"
}
response = requests.post(url, headers=headers, json=data)
print(response.json())
const response = await fetch("https://api.spkey.co/users/example_string/wallet/revoke", {
method: "POST",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN (JWT)",
"X-API-Key": "YOUR_API_KEY"
},
body: JSON.stringify({
"keyId": "example_string"
})
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
"bytes"
"encoding/json"
)
func main() {
data := []byte(`{
"keyId": "example_string"
}`)
req, err := http.NewRequest("POST", "https://api.spkey.co/users/example_string/wallet/revoke", bytes.NewBuffer(data))
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN (JWT)")
req.Header.Set("X-API-Key", "YOUR_API_KEY")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api.spkey.co/users/example_string/wallet/revoke')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Post.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN (JWT)'
request['X-API-Key'] = 'YOUR_API_KEY'
request.body = '{
"keyId": "example_string"
}'
response = http.request(request)
puts response.body
{
"keyId": "example_string",
"walletType": "GOOGLE",
"revokedAt": "example_string",
"revoked": 42,
"notSaved": 42
}
{
"success": true,
"errors": [
{
"code": 3.14,
"message": "example_string"
}
]
}
{
"error": "example_string"
}
{
"error": "Forbidden",
"message": "You don't have permission to access this resource",
"code": 403
}
{
"success": true,
"errors": [
{
"code": 3.14,
"message": "example_string"
}
]
}
{
"error": "example_string"
}
{
"error": "Error",
"message": "WALLET_PROVIDER_ERROR: Google failed or refused; safe to retry (the pass is already refused)",
"code": 502
}
{
"error": "Service Unavailable",
"message": "The service is temporarily unavailable. Please try again later",
"code": 503
}
/users/{id}/wallet/revokeTarget server for requests. Edit to use your own host.
JWT token from SmartphoneKey authentication. Identifies the B2C user or B2B service.
API key for B2B organization access. Provided during organization onboarding.
User ID
The media type of the request body
The Google wallet key whose pass is revoked
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token (JWT). JWT token from SmartphoneKey authentication. Identifies the B2C user or B2B service.
API Key for authentication. API key for B2B organization access. Provided during organization onboarding.
Path Parameters
User ID
Body
The Google wallet key whose pass is revoked
Responses
GOOGLEWhen the key's pass was first revoked
Google Wallet objects a person holds, now expired with the key cleared
Objects of the key no one holds, expired too: a never-saved one is created expired so that none can be saved active