curl --request POST \
--url https://api.dash.fi/v1/public/cards \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"categories": [
"ad-card"
],
"name": "adspend card meta",
"accountId": 123,
"expiry": "202512"
}
'import requests
url = "https://api.dash.fi/v1/public/cards"
payload = {
"categories": ["ad-card"],
"name": "adspend card meta",
"accountId": 123,
"expiry": "202512"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
categories: ['ad-card'],
name: 'adspend card meta',
accountId: 123,
expiry: '202512'
})
};
fetch('https://api.dash.fi/v1/public/cards', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dash.fi/v1/public/cards",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'categories' => [
'ad-card'
],
'name' => 'adspend card meta',
'accountId' => 123,
'expiry' => '202512'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.dash.fi/v1/public/cards"
payload := strings.NewReader("{\n \"categories\": [\n \"ad-card\"\n ],\n \"name\": \"adspend card meta\",\n \"accountId\": 123,\n \"expiry\": \"202512\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.post("https://api.dash.fi/v1/public/cards")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"categories\": [\n \"ad-card\"\n ],\n \"name\": \"adspend card meta\",\n \"accountId\": 123,\n \"expiry\": \"202512\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dash.fi/v1/public/cards")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"categories\": [\n \"ad-card\"\n ],\n \"name\": \"adspend card meta\",\n \"accountId\": 123,\n \"expiry\": \"202512\"\n}"
response = http.request(request)
puts response.read_body{
"id": "550e8400-e29b-41d4-a716-446655440000"
}{
"code": "<string>",
"message": "<string>"
}{
"code": "unauthorized",
"message": "authorization header not provided"
}{
"code": "forbidden",
"message": "access to this resource is not provided"
}{
"code": "internal-server-error",
"message": "<string>"
}Create a card
Allows creating a card of different types with different limit configurations. Access to this endpoint must be requested via support team.
curl --request POST \
--url https://api.dash.fi/v1/public/cards \
--header 'Authorization: <api-key>' \
--header 'Content-Type: application/json' \
--data '
{
"categories": [
"ad-card"
],
"name": "adspend card meta",
"accountId": 123,
"expiry": "202512"
}
'import requests
url = "https://api.dash.fi/v1/public/cards"
payload = {
"categories": ["ad-card"],
"name": "adspend card meta",
"accountId": 123,
"expiry": "202512"
}
headers = {
"Authorization": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {Authorization: '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
categories: ['ad-card'],
name: 'adspend card meta',
accountId: 123,
expiry: '202512'
})
};
fetch('https://api.dash.fi/v1/public/cards', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.dash.fi/v1/public/cards",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'categories' => [
'ad-card'
],
'name' => 'adspend card meta',
'accountId' => 123,
'expiry' => '202512'
]),
CURLOPT_HTTPHEADER => [
"Authorization: <api-key>",
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.dash.fi/v1/public/cards"
payload := strings.NewReader("{\n \"categories\": [\n \"ad-card\"\n ],\n \"name\": \"adspend card meta\",\n \"accountId\": 123,\n \"expiry\": \"202512\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Authorization", "<api-key>")
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.post("https://api.dash.fi/v1/public/cards")
.header("Authorization", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"categories\": [\n \"ad-card\"\n ],\n \"name\": \"adspend card meta\",\n \"accountId\": 123,\n \"expiry\": \"202512\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.dash.fi/v1/public/cards")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Authorization"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"categories\": [\n \"ad-card\"\n ],\n \"name\": \"adspend card meta\",\n \"accountId\": 123,\n \"expiry\": \"202512\"\n}"
response = http.request(request)
puts response.read_body{
"id": "550e8400-e29b-41d4-a716-446655440000"
}{
"code": "<string>",
"message": "<string>"
}{
"code": "unauthorized",
"message": "authorization header not provided"
}{
"code": "forbidden",
"message": "access to this resource is not provided"
}{
"code": "internal-server-error",
"message": "<string>"
}Authorizations
Type "Bearer" followed by a space and your API token. Obtain your key from the Dash.fi dashboard. Example: "Bearer YOUR_API_KEY"
Body
Card creation request
Card creation request
Card categories. Categories have specific MCC restrictions.
advertising, saas_software, shipping, cloud_computing, professional_services, airlines, books_and_newspapers, car_rental, car_services, charitable_donations, clothing, clubs_and_memberships, education, electronics, fees_and_financial_institutions, freight_moving_and_delivery_services, fuel_and_gas, general_merchandise, general_expenses, government_services, insurance, internet_and_phone, legal, lodging, medical, office_supplies_and_cleaning, other, parking, pet, restaurants, supermarkets_and_grocery_stores, taxes_and_tax_preparation, taxi_and_rideshare, travel_misc, utilities, entertainment ["ad-card"]
Card name. Card name must be unique for cards created unless the previous card with the same name has been archived.
"adspend card meta"
Card type. Single-use can be used for a single transaction (exluding auths up to 5$). Recurring can be used for multiple transactions.
single-use, recurring Account to create the card on. Required for customer-scoped API keys; optional otherwise and must then match the key's account.
123
Card expiry in YYYYMM format. Cannot be in the past. Earliest possible is current month. Generates random expiration if not provided.
"202512"
Limit to set on card. Optional — a card without a limit is capped only by the account's available balance.
Show child attributes
Show child attributes
Response
Created card response
Card ID.
"550e8400-e29b-41d4-a716-446655440000"