const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({amount: 1000000, currency: 'EUR'})
};
fetch('https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request PUT \
--url https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"amount": 1000000,
"currency": "EUR"
}
'import requests
url = "https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit"
payload = {
"amount": 1000000,
"currency": "EUR"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit"
payload := strings.NewReader("{\n \"amount\": 1000000,\n \"currency\": \"EUR\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"amount\": 1000000,\n \"currency\": \"EUR\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"amount\": 1000000,\n \"currency\": \"EUR\"\n}"
response = http.request(request)
puts response.read_body{
"amount": 123,
"currency": "<string>",
"decimals": 123,
"sync_status": "pending",
"updated_at": "2023-11-07T05:31:56Z",
"spent_today": 123,
"remaining": 123
}{
"code": 123,
"message": "<string>",
"reason": "<string>"
}Set a card spending limit
Sets the daily spending limit for a card.
currency must match the card account native currency, and amount is
in minor units of that currency. Amounts above the maximum configured for
the partner are rejected. A successful request may return
sync_status: pending; use GET /cards/{card_id}/limit until it becomes
synced or failed.
Once synced, this is a cumulative spending limit, not a per-transaction cap. An authorization that causes the cumulative spend for today to meet or exceed the limit can be approved; subsequent eligible authorizations are declined.
const options = {
method: 'PUT',
headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'},
body: JSON.stringify({amount: 1000000, currency: 'EUR'})
};
fetch('https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));curl --request PUT \
--url https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"amount": 1000000,
"currency": "EUR"
}
'import requests
url = "https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit"
payload = {
"amount": 1000000,
"currency": "EUR"
}
headers = {
"Authorization": "Bearer <token>",
"Content-Type": "application/json"
}
response = requests.put(url, json=payload, headers=headers)
print(response.text)package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit"
payload := strings.NewReader("{\n \"amount\": 1000000,\n \"currency\": \"EUR\"\n}")
req, _ := http.NewRequest("PUT", url, payload)
req.Header.Add("Authorization", "Bearer <token>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.put("https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit")
.header("Authorization", "Bearer <token>")
.header("Content-Type", "application/json")
.body("{\n \"amount\": 1000000,\n \"currency\": \"EUR\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://core.prod.gnosispay.com/partner-api/v1/cards/{card_id}/limit")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Put.new(url)
request["Authorization"] = 'Bearer <token>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"amount\": 1000000,\n \"currency\": \"EUR\"\n}"
response = http.request(request)
puts response.read_body{
"amount": 123,
"currency": "<string>",
"decimals": 123,
"sync_status": "pending",
"updated_at": "2023-11-07T05:31:56Z",
"spent_today": 123,
"remaining": 123
}{
"code": 123,
"message": "<string>",
"reason": "<string>"
}Path Parameters
The card ID.
Body
New daily card spending limit.
Response
The request has succeeded.
Full card limit response including today's usage. Returned by
GET /cards/{card_id}/limit and PUT /cards/{card_id}/limit.
Configured daily limit in the currency's smallest unit.
ISO-4217 currency code.
Number of decimal places for this currency (2 for USD, EUR, and GBP).
Application status of the limit. pending means the update is still being
applied, synced means it is active, and failed means it could not be
applied.
pending, synced, failed Last time this limit was modified.
Eligible card spending counted against this limit since 00:00 UTC, expressed in the currency's smallest unit.
Remaining headroom for today, in the currency's smallest unit. Equal to
max(0, amount - spent_today).