---
title: "Apply or modify limits to a card"
description: "Apply or change how much a card may spend in a given period."
source: https://developers.qashio.com/v2/reference/post-public-v1-core-cards-by-cardid-update-velocity-limit/
---

# Apply or modify limits to a card

`POST /public/v1/core/cards/{cardId}/update_velocity_limit`

Requires a Bearer access token.

**Purpose.** Apply or change how much a card may spend in a given period.

**Description.** Sets the card's spend limit: whether a limit is enforced, the amount, the period it
resets over, and how many times it may be used within that period. The change is applied at the card
issuer as well as in Qashio, and the cardholder is notified by email.

Each call writes an audit record and may trigger a notification even when the values are unchanged,
so avoid sending it on an unconditional schedule.

**Input.**

| Field | In | Type | Description |
| --- | --- | --- | --- |
| `cardId` | path | string | Card identifier (`CA…`) |
| `spend_limit_active` | body | boolean | Whether the limit is enforced |
| `spend_limit_period` | body | string | Reset period, e.g. `DAILY`, `WEEKLY`, `MONTHLY` |
| `spend_limit_max_amount` | body | integer | Maximum spend within the period |
| `spend_limit_frequency` | body | integer | Permitted number of transactions within the period |

```json
{
  "spend_limit_active": true,
  "spend_limit_period": "MONTHLY",
  "spend_limit_max_amount": 2000,
  "spend_limit_frequency": 10
}
```

**Output.** `200` (or `201`) with `message: "Resource created successfully."` and `data.card` — the
card with its updated limits.

**Errors.** `400` (the limit could not be applied at the issuer), `401`, `404`.

### Path parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `cardId` | string | yes | Card identifier (`CA…`) |

### Request body

```json
{
  "spend_limit_active": true,
  "spend_limit_period": "MONTHLY",
  "spend_limit_max_amount": 20,
  "spend_limit_frequency": 10
}
```

### Example request

```bash
curl -X POST 'https://api.qashio.com/public/v1/core/cards/%3AcardId/update_velocity_limit' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer <access_token>' \
  -H 'Content-Type: application/json' \
  -d '{
    "spend_limit_active": true,
    "spend_limit_period": "MONTHLY",
    "spend_limit_max_amount": 2000,
    "spend_limit_frequency": 10
  }'
```

### Example response (200)

```json
{
  "status_code": 200,
  "success": true,
  "message": "Missing Bearer token",
  "data": {
    "card": {
      "id": 12143,
      "user_name": "John Doe",
      "company_name": "Qashio",
      "user_email": "john.doe@example.com",
      "status": "active",
      "display_status": "draft",
      "card_type": "Virtual",
      "nickname": "Qashio Card - 1",
      "card_number": "******",
      "allow_replace_card": true,
      "card_replaced": false,
      "velocity_period": "MONTHLY",
      "allow_atm": false,
      "return_card": "company_address",
      "shipping_card": "company_address",
      "terminated_at": "2026-08-06T07:30:44.941Z",
      "spend_restriction_type": "no_limit",
      "last_four": "4554",
      "limit_amount_notification": "250.00",
      "card_balance_running_low_notification": false,
      "allowed_countries_list_active": false,
      "foreign_entity": false,
      "atm_restricted_at": "2026-08-06T07:30:44.941Z",
      "issuer": "John Doe",
      "allowed_mccs_active": false,
      "spend_limit_active": true,
      "atm_limit_active": "sample",
      "auto_top_up_amount": 0,
      "auto_load_on_transaction_approval": false,
      "tokenization_status": "active",
      "account_type": "company_account",
      "account_id": 600,
      "currency": "AED",
      "show_pool_balance_to_cardholder": false,
      "is_manager": "false",
      "is_account_manager": false,
      "is_dept_manager": "false",
      "can_edit_all_time_limit": false,
      "can_reset_limit": false,
      "reset_summary": "Limits reset on the 1st of each month",
      "issued_at": "2026-08-06T07:30:44.941Z",
      "first_activated_at": "2026-08-06T07:30:44.941Z",
      "external_id": "UPc7ws3qre31j5uw",
      "replaced_by_card_external_id": "CAj2w5b3w9hoe0ga",
      "replaced_by_card_id": "CAj2w5b3w9hoe0ga",
      "card_usage_type": "MANUAL_CARD",
      "card_usage_type_amount": "0",
      "account_balance": "Empty",
      "shipment_tracking": "1Z999AA10123456784",
      "atm_transactions_limit_active": "false",
      "transactions_limit_active": false,
      "atm_transactions_limit": "5",
      "atm_limit": "2000.00",
      "department": "Finance",
      "location": "Dubai",
      "division": "Operations",
      "project": "Office Fit-out",
      "shipping_address": "Dubai Internet City, Dubai, AE",
      "return_address": "Dubai Internet City, Dubai, AE",
      "card_template": "virtual-standard",
      "erp_bank_account": "160104",
      "step_up_auth_delegated_user_profile": "UPc7ws3qre31j5uw",
      "created_at": "2026-08-06T07:30:44.941Z",
      "shipping_details": {
        "method": "COURIER",
        "return_address": {},
        "shipping_address": {}
      },
      "allowed_countries_list": [
        "string"
      ],
      "wallets_status": {
        "apple_pay": false,
        "google_pay": false,
        "samsung_pay": false
      },
      "transactions_limit": {
        "max_amount": 250,
        "min_amount": 0,
        "currency": "AED",
        "period": "MONTHLY",
        "frequency": 10,
        "transaction_scope": []
      },
      "spend_limit": {
        "id": 12143,
        "name": "Qashio",
        "active": true,
        "description": "CPnsya5pgz5qjdhq",
        "min_amount": 0,
        "max_amount": 250,
        "currency": "AED",
        "period": "MONTHLY",
        "limit_type": "PER_CARD",
        "frequency": 10,
        "num_of_days": "sample",
        "remote_id": "295",
        "external_id": "UPc7ws3qre31j5uw",
        "remaining_balance": 1000,
        "remaining_frequency": 1,
        "remote_sync": "pendingsync",
        "consumed_limit": 0,
        "consumed_frequency": 0,
        "transaction_scope": [],
        "remote_data": {
          "id": null,
          "name": null,
          "type": null,
          "group": null,
          "active": null,
          "amount": null,
          "period": null,
          "created": null,
          "currency": null,
          "modified": null,
          "frequency": null,
          "description": null,
          "effective_to": null,
          "program_level": null,
          "effective_from": null,
          "conditions": null,
          "per_transaction": null,
          "transaction_scope": null
        }
      },
      "expense_categories": [
        {
          "id": null,
          "name": null,
          "label": null,
          "code": null,
          "erp_internal_id": null,
          "erp_code": null
        }
      ],
      "merchants": [
        {
          "id": null,
          "name": null
        }
      ],
      "user_profile": {
        "department_name": "Finance",
        "first_name": "David Chen",
        "last_name": "Sara Ali",
        "company_name": "Qashio",
        "user_name": "John Doe",
        "system_role_name": "End User",
        "email": "john.doe@example.com",
        "user_email": "john.doe@example.com",
        "external_id": "UPc7ws3qre31j5uw",
        "user_id": 2711,
        "status": "active",
        "fullname": "John Doe",
        "employee_id": "EMP-1001",
        "department_id": 1692,
        "managing_departments": []
      },
      "card_product": {
        "id": 12143,
        "name": "Qashio",
        "status": "active",
        "description": "CPnsya5pgz5qjdhq",
        "pan_format_token": "default_pan_format_8g",
        "track_format_token": "default_track_format",
        "proxy_format_token": "default_proxy_format_8g",
        "remote_id": "295",
        "external_id": "UPc7ws3qre31j5uw",
        "notification_template_remote_id": "f5d9ce44-4ab7-4cec-b6c3-6c0a8d69e324",
        "auth_settings_allowed_list_status_active": false,
        "currency_settings": {
          "supported_currency": null,
          "settlement_currency": null,
          "priority": null,
          "status": null,
          "allow_loads": null,
          "allow_unloads": null,
          "allow_scheme_debit_txn": null,
          "allow_scheme_credit_txn": null,
          "allow_incoming_transfer": null,
          "allow_outgoing_transfer": null,
          "allow_incoming_sweeps": null,
          "allow_outgoing_sweeps": null,
          "allow_initial_load": null
        },
        "pin_settings": {
          "pin_type": null,
          "pin_length": null,
          "pin_retries": null
        }
      },
      "merchant_groups": [
        {
          "id": null,
          "name": null
        }
      ],
      "advanced_velocity_limits": [
        {
          "id": null,
          "title": null,
          "limit_by_type": null,
          "active": null,
          "amount": null,
          "currency": null,
          "period": null,
          "remote_linked": null,
          "remote_sync": null,
          "remaining_balance": null,
          "limit_type": null,
          "issuer": null,
          "external_id": null,
          "effective_from": null,
          "effective_to": null,
          "frequency": null,
          "remaining_frequency": null,
          "consumed_limit": null,
          "consumed_frequency": null,
          "expense_category_ids": null
        }
      ],
      "custom_segments": [
        {
          "id": null,
          "name": null,
          "label": null,
          "code": null,
          "erp_internal_id": null,
          "erp_code": null
        }
      ]
    }
  },
  "meta": {
    "request_id": "3adb2d16090c7b3bdbde3b326a814b30",
    "timestamp": "2026-09-09T10:07:52.143Z"
  }
}
```

### Errors

- `401` Unauthorized - missing or invalid Bearer token
- `404` Not Found
