Skip to main content
API Reference
Cards
Cards

Cards may operate on credit, debit, or prepaid BINs. They’ll immediately work for online purchases after you create them. All cards work on a good funds model, and maintain a maximum limit of 100% of the Account’s available balance at the time of transaction. Funds are deducted from the Account upon transaction settlement.

Events
Your application can listen to webhooks about this resource. The events about Cards will have the categories "card.created" or "card.updated" .
The Card object
{
  "account_id": "account_in71c4amph0vgo2qllky",
  "authorization_controls": {
    "merchant_acceptor_identifier": null,
    "merchant_category_code": {
      "allowed": null,
      "blocked": [
        {
          "code": "5734"
        }
      ]
    },
    "merchant_country": null,
    "usage": {
      "category": "multi_use",
      "multi_use": {
        "spending_limits": [
          {
            "interval": "per_month",
            "merchant_category_codes": null,
            "settlement_amount": 100000
          }
        ]
      },
      "single_use": null
    }
  },
  "billing_address": {
    "city": "New York",
    "line1": "33 Liberty Street",
    "line2": null,
    "postal_code": "10045",
    "state": "NY"
  },
  "bin": "42424242",
  "created_at": "2020-01-31T23:59:59Z",
  "description": "Office Expenses",
  "digital_wallet": {
    "digital_card_profile_id": "digital_card_profile_s3puplu90f04xhcwkiga",
    "email": "user@example.com",
    "phone": "+16505046304"
  },
  "entity_id": null,
  "expiration_month": 11,
  "expiration_year": 2028,
  "id": "card_oubs0hwk5rn6knuecxg2",
  "idempotency_key": null,
  "last4": "4242",
  "status": "active",
  "type": "card"
}
Attributes
account_id
string

The identifier for the account this card belongs to.

More about Accounts.
authorization_controls
dictionary
Nullable

Controls that restrict how this card can be used.

billing_address
dictionary

The Card’s billing address.

bin
string

The Bank Identification Number (BIN) of the Card.

created_at
string

The ISO 8601 date and time at which the Card was created.

description
string
Nullable

The card’s description for display purposes.

digital_wallet
dictionary
Nullable

The contact information used in the two-factor steps for digital wallet card creation. At least one field must be present to complete the digital wallet steps.

entity_id
string
Nullable

The identifier for the entity associated with this card.

More about Entities.
expiration_month
integer

The month the card expires in M format (e.g., August is 8).

expiration_year
integer

The year the card expires in YYYY format (e.g., 2025).

id
string

The card identifier.

idempotency_key
string
Nullable

The idempotency key you chose for this object. This value is unique across Increase and is used to ensure that a request is only processed once. Learn more about idempotency.

last4
string

The last 4 digits of the Card’s Primary Account Number.

status
enum

This indicates if payments can be made with the card.

type
string

A constant representing the object’s type. For this resource it will always be card.

List Cards
curl \
  --url "${INCREASE_URL}/cards?account_id=account_in71c4amph0vgo2qllky" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
import Increase from 'increase';

const client = new Increase({
  apiKey: process.env['INCREASE_API_KEY'], // This is the default and can be omitted
});

// Automatically fetches more pages as needed.
for await (const card of client.cards.list()) {
  console.log(card.id);
}
import os
from increase import Increase

client = Increase(
    api_key=os.environ.get("INCREASE_API_KEY"),  # This is the default and can be omitted
)
page = client.cards.list()
page = page.data[0]
print(page.id)
require "increase"

increase = Increase::Client.new(
  api_key: ENV["INCREASE_API_KEY"] # This is the default and can be omitted
)

page = increase.cards.list

puts(page)
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Increase/increase-go"
	"github.com/Increase/increase-go/option"
)

func main() {
	client := increase.NewClient(
		option.WithAPIKey(os.Getenv("INCREASE_API_KEY")), // This is the default and can be omitted
	)
	page, err := client.Cards.List(context.TODO(), increase.CardListParams{})
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", page)
}
package com.increase.api.example;

import com.increase.api.client.IncreaseClient;
import com.increase.api.client.okhttp.IncreaseOkHttpClient;
import com.increase.api.models.cards.CardListPage;
import com.increase.api.models.cards.CardListParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        IncreaseClient client = IncreaseOkHttpClient.fromEnv();

        CardListPage page = client.cards().list();
    }
}
package com.increase.api.example

import com.increase.api.client.IncreaseClient
import com.increase.api.client.okhttp.IncreaseOkHttpClient
import com.increase.api.models.cards.CardListPage
import com.increase.api.models.cards.CardListParams

fun main() {
    val client: IncreaseClient = IncreaseOkHttpClient.fromEnv()

    val page: CardListPage = client.cards().list()
}
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Increase\Client;
use Increase\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('INCREASE_API_KEY'));

try {
  $page = $client->cards->list(
    accountID: 'account_id',
    createdAt: [
      'after' => new \DateTimeImmutable('2019-12-27T18:11:19.117Z'),
      'before' => new \DateTimeImmutable('2019-12-27T18:11:19.117Z'),
      'onOrAfter' => new \DateTimeImmutable('2019-12-27T18:11:19.117Z'),
      'onOrBefore' => new \DateTimeImmutable('2019-12-27T18:11:19.117Z'),
    ],
    cursor: 'cursor',
    idempotencyKey: 'x',
    limit: 1,
    status: ['in' => ['active']],
  );

  var_dump($page);
} catch (APIException $e) {
  echo $e->getMessage();
}
using System;
using Increase.Api;
using Increase.Api.Models.Cards;

IncreaseClient client = new();

CardListParams parameters = new();

var page = await client.Cards.List(parameters);
await foreach (var item in page.Paginate())
{
    Console.WriteLine(item);
}
Returns a list response :
{
  "data": [
    { /* Card object */ },
    { /* Card object */ }
    /* ... */
  ],
  "next_cursor": "v57w5d",
}
Parameters
account_id
string

Filter Cards to ones belonging to the specified Account.

More about Accounts.
status.in
array of strings

Filter Cards by status. For GET requests, this should be encoded as a comma-delimited string, such as ?in=one,two,three.

idempotency_key
string

Filter records to the one with the specified idempotency_key you chose for that object. This value is unique across Increase and is used to ensure that a request is only processed once. Learn more about idempotency.

Between 1 and 200 characters
More
cursor
string
limit
integer
created_at.after
string
created_at.before
string
created_at.on_or_after
string
created_at.on_or_before
string
Create a Card
curl -X "POST" \
  --url "${INCREASE_URL}/cards" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d $'{
    "account_id": "account_in71c4amph0vgo2qllky",
    "description": "Card for Ian Crease"
  }'
import Increase from 'increase';

const client = new Increase({
  apiKey: process.env['INCREASE_API_KEY'], // This is the default and can be omitted
});

const card = await client.cards.create({ account_id: 'account_in71c4amph0vgo2qllky' });

console.log(card.id);
import os
from increase import Increase

client = Increase(
    api_key=os.environ.get("INCREASE_API_KEY"),  # This is the default and can be omitted
)
card = client.cards.create(
    account_id="account_in71c4amph0vgo2qllky",
)
print(card.id)
require "increase"

increase = Increase::Client.new(
  api_key: ENV["INCREASE_API_KEY"] # This is the default and can be omitted
)

card = increase.cards.create(account_id: "account_in71c4amph0vgo2qllky")

puts(card)
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Increase/increase-go"
	"github.com/Increase/increase-go/option"
)

func main() {
	client := increase.NewClient(
		option.WithAPIKey(os.Getenv("INCREASE_API_KEY")), // This is the default and can be omitted
	)
	card, err := client.Cards.New(context.TODO(), increase.CardNewParams{
		AccountID: increase.F("account_in71c4amph0vgo2qllky"),
	})
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", card.ID)
}
package com.increase.api.example;

import com.increase.api.client.IncreaseClient;
import com.increase.api.client.okhttp.IncreaseOkHttpClient;
import com.increase.api.models.cards.Card;
import com.increase.api.models.cards.CardCreateParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        IncreaseClient client = IncreaseOkHttpClient.fromEnv();

        CardCreateParams params = CardCreateParams.builder()
            .accountId("account_in71c4amph0vgo2qllky")
            .build();
        Card card = client.cards().create(params);
    }
}
package com.increase.api.example

import com.increase.api.client.IncreaseClient
import com.increase.api.client.okhttp.IncreaseOkHttpClient
import com.increase.api.models.cards.Card
import com.increase.api.models.cards.CardCreateParams

fun main() {
    val client: IncreaseClient = IncreaseOkHttpClient.fromEnv()

    val params: CardCreateParams = CardCreateParams.builder()
        .accountId("account_in71c4amph0vgo2qllky")
        .build()
    val card: Card = client.cards().create(params)
}
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Increase\Client;
use Increase\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('INCREASE_API_KEY'));

try {
  $card = $client->cards->create(
    accountID: 'account_in71c4amph0vgo2qllky',
    authorizationControls: [
      'merchantAcceptorIdentifier' => [
        'allowed' => [['identifier' => 'x']],
        'blocked' => [['identifier' => 'x']],
      ],
      'merchantCategoryCode' => [
        'allowed' => [['code' => '0253']], 'blocked' => [['code' => '0253']]
      ],
      'merchantCountry' => [
        'allowed' => [['country' => 'xx']], 'blocked' => [['country' => 'xx']]
      ],
      'usage' => [
        'category' => 'single_use',
        'multiUse' => [
          'spendingLimits' => [
            [
              'interval' => 'all_time',
              'settlementAmount' => 0,
              'merchantCategoryCodes' => [['code' => 'x']],
            ],
          ],
        ],
        'singleUse' => [
          'settlementAmount' => ['comparison' => 'equals', 'value' => 0]
        ],
      ],
    ],
    billingAddress: [
      'city' => 'x',
      'line1' => 'x',
      'postalCode' => 'x',
      'state' => 'x',
      'line2' => 'x',
    ],
    description: 'Card for Ian Crease',
    digitalWallet: [
      'digitalCardProfileID' => 'digital_card_profile_id',
      'email' => 'dev@stainless.com',
      'phone' => 'x',
    ],
    entityID: 'entity_id',
  );

  var_dump($card);
} catch (APIException $e) {
  echo $e->getMessage();
}
using System;
using Increase.Api;
using Increase.Api.Models.Cards;

IncreaseClient client = new();

CardCreateParams parameters = new()
{
    AccountID = "account_in71c4amph0vgo2qllky"
};

var card = await client.Cards.Create(parameters);

Console.WriteLine(card);
Parameters
account_id
string
Required

The Account the card should belong to.

More about Accounts.
authorization_controls
dictionary

Controls that restrict how this card can be used.

billing_address
dictionary

The card’s billing address.

description
string

The description you choose to give the card.

Between 1 and 200 characters
digital_wallet
dictionary

The contact information used in the two-factor steps for digital wallet card creation. To add the card to a digital wallet, you may supply an email or phone number with this request. Otherwise, subscribe and then action a Real Time Decision with the category digital_wallet_token_requested or digital_wallet_authentication_requested.

entity_id
string

The Entity the card belongs to. You only need to supply this in rare situations when the card is not for the Account holder.

More about Entities.
Retrieve a Card
curl \
  --url "${INCREASE_URL}/cards/card_oubs0hwk5rn6knuecxg2" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
import Increase from 'increase';

const client = new Increase({
  apiKey: process.env['INCREASE_API_KEY'], // This is the default and can be omitted
});

const card = await client.cards.retrieve('card_oubs0hwk5rn6knuecxg2');

console.log(card.id);
import os
from increase import Increase

client = Increase(
    api_key=os.environ.get("INCREASE_API_KEY"),  # This is the default and can be omitted
)
card = client.cards.retrieve(
    "card_oubs0hwk5rn6knuecxg2",
)
print(card.id)
require "increase"

increase = Increase::Client.new(
  api_key: ENV["INCREASE_API_KEY"] # This is the default and can be omitted
)

card = increase.cards.retrieve("card_oubs0hwk5rn6knuecxg2")

puts(card)
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Increase/increase-go"
	"github.com/Increase/increase-go/option"
)

func main() {
	client := increase.NewClient(
		option.WithAPIKey(os.Getenv("INCREASE_API_KEY")), // This is the default and can be omitted
	)
	card, err := client.Cards.Get(context.TODO(), "card_oubs0hwk5rn6knuecxg2")
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", card.ID)
}
package com.increase.api.example;

import com.increase.api.client.IncreaseClient;
import com.increase.api.client.okhttp.IncreaseOkHttpClient;
import com.increase.api.models.cards.Card;
import com.increase.api.models.cards.CardRetrieveParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        IncreaseClient client = IncreaseOkHttpClient.fromEnv();

        Card card = client.cards().retrieve("card_oubs0hwk5rn6knuecxg2");
    }
}
package com.increase.api.example

import com.increase.api.client.IncreaseClient
import com.increase.api.client.okhttp.IncreaseOkHttpClient
import com.increase.api.models.cards.Card
import com.increase.api.models.cards.CardRetrieveParams

fun main() {
    val client: IncreaseClient = IncreaseOkHttpClient.fromEnv()

    val card: Card = client.cards().retrieve("card_oubs0hwk5rn6knuecxg2")
}
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Increase\Client;
use Increase\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('INCREASE_API_KEY'));

try {
  $card = $client->cards->retrieve('card_oubs0hwk5rn6knuecxg2');

  var_dump($card);
} catch (APIException $e) {
  echo $e->getMessage();
}
using System;
using Increase.Api;
using Increase.Api.Models.Cards;

IncreaseClient client = new();

CardRetrieveParams parameters = new() { CardID = "card_oubs0hwk5rn6knuecxg2" };

var card = await client.Cards.Retrieve(parameters);

Console.WriteLine(card);
Parameters
card_id
string
Required

The identifier of the Card.

More about Cards.
Update a Card
curl -X "PATCH" \
  --url "${INCREASE_URL}/cards/card_oubs0hwk5rn6knuecxg2" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d $'{
    "description": "New description"
  }'
import Increase from 'increase';

const client = new Increase({
  apiKey: process.env['INCREASE_API_KEY'], // This is the default and can be omitted
});

const card = await client.cards.update('card_oubs0hwk5rn6knuecxg2');

console.log(card.id);
import os
from increase import Increase

client = Increase(
    api_key=os.environ.get("INCREASE_API_KEY"),  # This is the default and can be omitted
)
card = client.cards.update(
    card_id="card_oubs0hwk5rn6knuecxg2",
)
print(card.id)
require "increase"

increase = Increase::Client.new(
  api_key: ENV["INCREASE_API_KEY"] # This is the default and can be omitted
)

card = increase.cards.update("card_oubs0hwk5rn6knuecxg2")

puts(card)
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Increase/increase-go"
	"github.com/Increase/increase-go/option"
)

func main() {
	client := increase.NewClient(
		option.WithAPIKey(os.Getenv("INCREASE_API_KEY")), // This is the default and can be omitted
	)
	card, err := client.Cards.Update(
		context.TODO(),
		"card_oubs0hwk5rn6knuecxg2",
		increase.CardUpdateParams{},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", card.ID)
}
package com.increase.api.example;

import com.increase.api.client.IncreaseClient;
import com.increase.api.client.okhttp.IncreaseOkHttpClient;
import com.increase.api.models.cards.Card;
import com.increase.api.models.cards.CardUpdateParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        IncreaseClient client = IncreaseOkHttpClient.fromEnv();

        Card card = client.cards().update("card_oubs0hwk5rn6knuecxg2");
    }
}
package com.increase.api.example

import com.increase.api.client.IncreaseClient
import com.increase.api.client.okhttp.IncreaseOkHttpClient
import com.increase.api.models.cards.Card
import com.increase.api.models.cards.CardUpdateParams

fun main() {
    val client: IncreaseClient = IncreaseOkHttpClient.fromEnv()

    val card: Card = client.cards().update("card_oubs0hwk5rn6knuecxg2")
}
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Increase\Client;
use Increase\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('INCREASE_API_KEY'));

try {
  $card = $client->cards->update(
    'card_oubs0hwk5rn6knuecxg2',
    authorizationControls: [
      'merchantAcceptorIdentifier' => [
        'allowed' => [['identifier' => 'x']],
        'blocked' => [['identifier' => 'x']],
      ],
      'merchantCategoryCode' => [
        'allowed' => [['code' => '0253']], 'blocked' => [['code' => '0253']]
      ],
      'merchantCountry' => [
        'allowed' => [['country' => 'xx']], 'blocked' => [['country' => 'xx']]
      ],
      'usage' => [
        'category' => 'single_use',
        'multiUse' => [
          'spendingLimits' => [
            [
              'interval' => 'all_time',
              'settlementAmount' => 0,
              'merchantCategoryCodes' => [['code' => 'x']],
            ],
          ],
        ],
        'singleUse' => [
          'settlementAmount' => ['comparison' => 'equals', 'value' => 0]
        ],
      ],
    ],
    billingAddress: [
      'city' => 'x',
      'line1' => 'x',
      'postalCode' => 'x',
      'state' => 'x',
      'line2' => 'x',
    ],
    description: 'New description',
    digitalWallet: [
      'digitalCardProfileID' => 'digital_card_profile_id',
      'email' => 'dev@stainless.com',
      'phone' => 'x',
    ],
    entityID: 'entity_id',
    status: 'active',
  );

  var_dump($card);
} catch (APIException $e) {
  echo $e->getMessage();
}
using System;
using Increase.Api;
using Increase.Api.Models.Cards;

IncreaseClient client = new();

CardUpdateParams parameters = new() { CardID = "card_oubs0hwk5rn6knuecxg2" };

var card = await client.Cards.Update(parameters);

Console.WriteLine(card);
Parameters
card_id
string
Required

The card identifier.

More about Cards.
authorization_controls
dictionary

Controls that restrict how this card can be used.

billing_address
dictionary

The card’s updated billing address.

description
string

The description you choose to give the card.

Between 1 and 200 characters
digital_wallet
dictionary

The contact information used in the two-factor steps for digital wallet card creation. At least one field must be present to complete the digital wallet steps.

entity_id
string

The Entity the card belongs to. You only need to supply this in rare situations when the card is not for the Account holder.

More about Entities.
status
enum

The status to update the Card with.

Create a Card details iframe

Create an iframe URL for a Card to display the card details. More details about styling and usage can be found in the documentation.

curl -X "POST" \
  --url "${INCREASE_URL}/cards/card_oubs0hwk5rn6knuecxg2/create_details_iframe" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d $'{}'
import Increase from 'increase';

const client = new Increase({
  apiKey: process.env['INCREASE_API_KEY'], // This is the default and can be omitted
});

const cardIframeURL = await client.cards.createDetailsIframe('card_oubs0hwk5rn6knuecxg2');

console.log(cardIframeURL.expires_at);
import os
from increase import Increase

client = Increase(
    api_key=os.environ.get("INCREASE_API_KEY"),  # This is the default and can be omitted
)
card_iframe_url = client.cards.create_details_iframe(
    card_id="card_oubs0hwk5rn6knuecxg2",
)
print(card_iframe_url.expires_at)
require "increase"

increase = Increase::Client.new(
  api_key: ENV["INCREASE_API_KEY"] # This is the default and can be omitted
)

card_iframe_url = increase.cards.create_details_iframe("card_oubs0hwk5rn6knuecxg2")

puts(card_iframe_url)
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Increase/increase-go"
	"github.com/Increase/increase-go/option"
)

func main() {
	client := increase.NewClient(
		option.WithAPIKey(os.Getenv("INCREASE_API_KEY")), // This is the default and can be omitted
	)
	cardIframeURL, err := client.Cards.NewDetailsIframe(
		context.TODO(),
		"card_oubs0hwk5rn6knuecxg2",
		increase.CardNewDetailsIframeParams{},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", cardIframeURL.ExpiresAt)
}
package com.increase.api.example;

import com.increase.api.client.IncreaseClient;
import com.increase.api.client.okhttp.IncreaseOkHttpClient;
import com.increase.api.models.cards.CardCreateDetailsIframeParams;
import com.increase.api.models.cards.CardIframeUrl;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        IncreaseClient client = IncreaseOkHttpClient.fromEnv();

        CardIframeUrl cardIframeUrl = client.cards().createDetailsIframe("card_oubs0hwk5rn6knuecxg2");
    }
}
package com.increase.api.example

import com.increase.api.client.IncreaseClient
import com.increase.api.client.okhttp.IncreaseOkHttpClient
import com.increase.api.models.cards.CardCreateDetailsIframeParams
import com.increase.api.models.cards.CardIframeUrl

fun main() {
    val client: IncreaseClient = IncreaseOkHttpClient.fromEnv()

    val cardIframeUrl: CardIframeUrl = client.cards().createDetailsIframe("card_oubs0hwk5rn6knuecxg2")
}
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Increase\Client;
use Increase\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('INCREASE_API_KEY'));

try {
  $cardIframeURL = $client->cards->createDetailsIframe(
    'card_oubs0hwk5rn6knuecxg2', physicalCardID: 'physical_card_id'
  );

  var_dump($cardIframeURL);
} catch (APIException $e) {
  echo $e->getMessage();
}
using System;
using Increase.Api;
using Increase.Api.Models.Cards;

IncreaseClient client = new();

CardCreateDetailsIframeParams parameters = new()
{
    CardID = "card_oubs0hwk5rn6knuecxg2"
};

var cardIframeUrl = await client.Cards.CreateDetailsIframe(parameters);

Console.WriteLine(cardIframeUrl);
Returns a Card iframe URL object:
{
  "expires_at": "2020-01-31T23:59:59Z",
  "iframe_url": "https://increase.com/card_details_iframe/index.html?token=0",
  "type": "card_iframe_url"
}
Parameters
card_id
string
Required

The identifier of the Card to create an iframe for.

More about Cards.
physical_card_id
string

The identifier of the Physical Card to create an iframe for. This will inform the appearance of the card rendered in the iframe.

More about Physical Cards.
Retrieve sensitive details for a Card

Sensitive details for a Card include the primary account number, expiry, card verification code, and PIN.

curl \
  --url "${INCREASE_URL}/cards/card_oubs0hwk5rn6knuecxg2/details" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}"
import Increase from 'increase';

const client = new Increase({
  apiKey: process.env['INCREASE_API_KEY'], // This is the default and can be omitted
});

const cardDetails = await client.cards.details('card_oubs0hwk5rn6knuecxg2');

console.log(cardDetails.card_id);
import os
from increase import Increase

client = Increase(
    api_key=os.environ.get("INCREASE_API_KEY"),  # This is the default and can be omitted
)
card_details = client.cards.details(
    "card_oubs0hwk5rn6knuecxg2",
)
print(card_details.card_id)
require "increase"

increase = Increase::Client.new(
  api_key: ENV["INCREASE_API_KEY"] # This is the default and can be omitted
)

card_details = increase.cards.details("card_oubs0hwk5rn6knuecxg2")

puts(card_details)
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Increase/increase-go"
	"github.com/Increase/increase-go/option"
)

func main() {
	client := increase.NewClient(
		option.WithAPIKey(os.Getenv("INCREASE_API_KEY")), // This is the default and can be omitted
	)
	cardDetails, err := client.Cards.Details(context.TODO(), "card_oubs0hwk5rn6knuecxg2")
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", cardDetails.CardID)
}
package com.increase.api.example;

import com.increase.api.client.IncreaseClient;
import com.increase.api.client.okhttp.IncreaseOkHttpClient;
import com.increase.api.models.cards.CardDetails;
import com.increase.api.models.cards.CardDetailsParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        IncreaseClient client = IncreaseOkHttpClient.fromEnv();

        CardDetails cardDetails = client.cards().details("card_oubs0hwk5rn6knuecxg2");
    }
}
package com.increase.api.example

import com.increase.api.client.IncreaseClient
import com.increase.api.client.okhttp.IncreaseOkHttpClient
import com.increase.api.models.cards.CardDetails
import com.increase.api.models.cards.CardDetailsParams

fun main() {
    val client: IncreaseClient = IncreaseOkHttpClient.fromEnv()

    val cardDetails: CardDetails = client.cards().details("card_oubs0hwk5rn6knuecxg2")
}
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Increase\Client;
use Increase\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('INCREASE_API_KEY'));

try {
  $cardDetails = $client->cards->details('card_oubs0hwk5rn6knuecxg2');

  var_dump($cardDetails);
} catch (APIException $e) {
  echo $e->getMessage();
}
using System;
using Increase.Api;
using Increase.Api.Models.Cards;

IncreaseClient client = new();

CardDetailsParams parameters = new() { CardID = "card_oubs0hwk5rn6knuecxg2" };

var cardDetails = await client.Cards.Details(parameters);

Console.WriteLine(cardDetails);
Returns a Card Details object:
{
  "card_id": "card_oubs0hwk5rn6knuecxg2",
  "expiration_month": 7,
  "expiration_year": 2025,
  "pin": "1234",
  "primary_account_number": "4242424242424242",
  "type": "card_details",
  "verification_code": "123"
}
Parameters
card_id
string
Required

The identifier of the Card to retrieve details for.

More about Cards.
Update a Card's PIN
curl -X "POST" \
  --url "${INCREASE_URL}/cards/card_oubs0hwk5rn6knuecxg2/update_pin" \
  -H "Authorization: Bearer ${INCREASE_API_KEY}" \
  -H "Content-Type: application/json" \
  -d $'{
    "pin": "1234"
  }'
import Increase from 'increase';

const client = new Increase({
  apiKey: process.env['INCREASE_API_KEY'], // This is the default and can be omitted
});

const cardDetails = await client.cards.updatePin('card_oubs0hwk5rn6knuecxg2', { pin: '1234' });

console.log(cardDetails.card_id);
import os
from increase import Increase

client = Increase(
    api_key=os.environ.get("INCREASE_API_KEY"),  # This is the default and can be omitted
)
card_details = client.cards.update_pin(
    card_id="card_oubs0hwk5rn6knuecxg2",
    pin="1234",
)
print(card_details.card_id)
require "increase"

increase = Increase::Client.new(
  api_key: ENV["INCREASE_API_KEY"] # This is the default and can be omitted
)

card_details = increase.cards.update_pin("card_oubs0hwk5rn6knuecxg2", pin: "1234")

puts(card_details)
package main

import (
	"context"
	"fmt"
	"os"

	"github.com/Increase/increase-go"
	"github.com/Increase/increase-go/option"
)

func main() {
	client := increase.NewClient(
		option.WithAPIKey(os.Getenv("INCREASE_API_KEY")), // This is the default and can be omitted
	)
	cardDetails, err := client.Cards.UpdatePin(
		context.TODO(),
		"card_oubs0hwk5rn6knuecxg2",
		increase.CardUpdatePinParams{
			Pin: increase.F("1234"),
		},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", cardDetails.CardID)
}
package com.increase.api.example;

import com.increase.api.client.IncreaseClient;
import com.increase.api.client.okhttp.IncreaseOkHttpClient;
import com.increase.api.models.cards.CardDetails;
import com.increase.api.models.cards.CardUpdatePinParams;

public final class Main {
    private Main() {}

    public static void main(String[] args) {
        IncreaseClient client = IncreaseOkHttpClient.fromEnv();

        CardUpdatePinParams params = CardUpdatePinParams.builder()
            .cardId("card_oubs0hwk5rn6knuecxg2")
            .pin("1234")
            .build();
        CardDetails cardDetails = client.cards().updatePin(params);
    }
}
package com.increase.api.example

import com.increase.api.client.IncreaseClient
import com.increase.api.client.okhttp.IncreaseOkHttpClient
import com.increase.api.models.cards.CardDetails
import com.increase.api.models.cards.CardUpdatePinParams

fun main() {
    val client: IncreaseClient = IncreaseOkHttpClient.fromEnv()

    val params: CardUpdatePinParams = CardUpdatePinParams.builder()
        .cardId("card_oubs0hwk5rn6knuecxg2")
        .pin("1234")
        .build()
    val cardDetails: CardDetails = client.cards().updatePin(params)
}
<?php

require_once dirname(__DIR__) . '/vendor/autoload.php';

use Increase\Client;
use Increase\Core\Exceptions\APIException;

$client = new Client(apiKey: getenv('INCREASE_API_KEY'));

try {
  $cardDetails = $client->cards->updatePin(
    'card_oubs0hwk5rn6knuecxg2', pin: '1234'
  );

  var_dump($cardDetails);
} catch (APIException $e) {
  echo $e->getMessage();
}
using System;
using Increase.Api;
using Increase.Api.Models.Cards;

IncreaseClient client = new();

CardUpdatePinParams parameters = new()
{
    CardID = "card_oubs0hwk5rn6knuecxg2",
    Pin = "1234",
};

var cardDetails = await client.Cards.UpdatePin(parameters);

Console.WriteLine(cardDetails);
Returns a Card Details object:
{
  "card_id": "card_oubs0hwk5rn6knuecxg2",
  "expiration_month": 7,
  "expiration_year": 2025,
  "pin": "1234",
  "primary_account_number": "4242424242424242",
  "type": "card_details",
  "verification_code": "123"
}
Parameters
card_id
string
Required

The identifier of the Card to update the PIN for.

More about Cards.
pin
string
Required

The 4-digit PIN for the card, for use with ATMs.

Exactly 4 characters,