Spade · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Spade Card Enrichment API
11 actions
11 updates
phrasing
extends
openapi/spade-card-enrichment-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Spade's API. It is a proposal applied on top of the contract, not a document Spade publishes.
What the actions change
x-apievangelist-phrasing
Targets 11
$.info
$.paths['/transactions/cards/enrich'].post
$.paths['/transactions/cards/enrich/parse'].post
$.paths['/batches/transactions/cards/enrich'].post
$.paths['/batches/transactions/cards/enrich'].options
$.paths['/batches/transactions/cards/enrich/parse'].post
$.paths['/batches/transactions/cards/enrich/parse'].options
$.paths['/batches/{cardEnrichmentBatchId}/results'].get
$.paths['/batches/{cardEnrichmentBatchId}'].get
$.paths['/transactions/enrich'].post
$.paths['/transactions/enrich/parse'].post
OpenAPI Overlay
# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand.
overlay: 1.0.0
info:
title: API Evangelist conversational phrasing for Spade Card Enrichment API
version: 1.0.0
extends: openapi/spade-card-enrichment-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-10-01'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 10
- target: $.paths['/transactions/cards/enrich'].post
update:
x-apievangelist-phrasing:
intent: Enrich a single card transaction
effect: write
questions:
- How do I turn a raw card swipe into a clean merchant name, logo and category with Spade?
- Which optional fields like acquirer ID or card BIN improve the match on one card transaction?
- Can I get my own custom attributes echoed back when I enrich a card purchase?
instructions:
- text: Enrich the card transaction from user {userId} for {amount} {currencyCode} at merchant {merchantName}, MCC {categoryCode}, on {occurredAt}.
slots:
userId: requestBody.userId
amount: requestBody.amount
currencyCode: requestBody.currencyCode
merchantName: requestBody.merchantName
categoryCode: requestBody.categoryCode
occurredAt: requestBody.occurredAt
- text: Enrich card purchase {transactionId} made at {location} and tag it with program {programId}.
slots:
transactionId: requestBody.transactionId
location: requestBody.location
programId: requestBody.programId
- text: Identify the merchant behind card swipe {merchantName} using acquirer ID {acquirerId}.
slots:
merchantName: requestBody.merchantName
acquirerId: requestBody.acquirerId
method: generated
generated: '2026-10-01'
- target: $.paths['/transactions/cards/enrich/parse'].post
update:
x-apievangelist-phrasing:
intent: Enrich a card transaction from a raw DE43 field
effect: write
questions:
- Can I send the unparsed DE43 field instead of splitting out merchant name and city myself?
- What happens when the DE43 string conflicts with the merchant name I also pass in?
- Is there a card enrichment call that parses a DE43 message for one transaction?
instructions:
- text: Parse DE43 message {de43} and enrich that card transaction for user {userId}, {amount} {currencyCode} on {occurredAt}.
slots:
de43: requestBody.de43
userId: requestBody.userId
amount: requestBody.amount
currencyCode: requestBody.currencyCode
occurredAt: requestBody.occurredAt
- text: Enrich the card swipe with raw DE43 {de43} and MCC {categoryCode} at {location}.
slots:
de43: requestBody.de43
categoryCode: requestBody.categoryCode
location: requestBody.location
method: generated
generated: '2026-10-01'
- target: $.paths['/batches/transactions/cards/enrich'].post
update:
x-apievangelist-phrasing:
intent: Submit a batch of card transactions for enrichment
effect: write
questions:
- How do I enrich thousands of card transactions in one job instead of one at a time?
- Can a card enrichment batch call my URL when the job finishes?
- What is the maximum number of card transactions in a single batch submission?
- Can I get a small set of card transactions enriched inline without waiting on a batch job?
instructions:
- text: Submit these card transactions {transactions} as an enrichment batch and notify {callbackUrl} when done.
slots:
transactions: requestBody.transactions
callbackUrl: requestBody.callbackUrl
- text: Enrich this microbatch of card transactions {transactions} synchronously ({synchronous}).
slots:
transactions: requestBody.transactions
synchronous: query.synchronous
method: generated
generated: '2026-10-01'
- target: $.paths['/batches/transactions/cards/enrich'].options
update:
x-apievangelist-phrasing:
intent: Check the synchronous cap for card batch enrichment
effect: read
questions:
- What is the current synchronousMax for enriching card transaction batches inline?
- How many card transactions can I send in one synchronous microbatch right now?
instructions:
- text: Fetch the current synchronous item cap for the card batch enrichment endpoint.
- text: Look up the metadata for card transaction batch enrichment.
method: generated
generated: '2026-10-01'
- target: $.paths['/batches/transactions/cards/enrich/parse'].post
update:
x-apievangelist-phrasing:
intent: Submit a batch of DE43 card transactions
effect: write
questions:
- Can I batch-enrich card transactions that only carry raw DE43 strings?
- Do batched DE43 card transactions still need merchant name and city fields?
instructions:
- text: Submit the DE43 card transactions {transactions} as a parse-and-enrich batch, calling {callbackUrl} on completion.
slots:
transactions: requestBody.transactions
callbackUrl: requestBody.callbackUrl
- text: Parse and enrich this small set of DE43 card swipes {transactions} inline with synchronous={synchronous}.
slots:
transactions: requestBody.transactions
synchronous: query.synchronous
method: generated
generated: '2026-10-01'
- target: $.paths['/batches/transactions/cards/enrich/parse'].options
update:
x-apievangelist-phrasing:
intent: Check the synchronous cap for DE43 batch enrichment
effect: read
questions:
- What is the inline item limit for batch DE43 parse enrichment of card transactions?
- Where can I fetch the synchronousMax for the card parse batch endpoint?
instructions:
- text: Get the current synchronous cap for the DE43 card parse batch endpoint.
- text: Read the metadata for batch card enrichment with DE43 parsing.
method: generated
generated: '2026-10-01'
- target: $.paths['/batches/{cardEnrichmentBatchId}/results'].get
update:
x-apievangelist-phrasing:
intent: Get results of a card enrichment batch
effect: read
questions:
- How do I download the enriched transactions once my card batch job is finished?
- Where do the results of a batch card enrichment job come back?
instructions:
- text: Fetch the enriched results of card batch {cardEnrichmentBatchId}.
slots:
cardEnrichmentBatchId: path.cardEnrichmentBatchId
- text: Pull the output of card enrichment job {cardEnrichmentBatchId}.
slots:
cardEnrichmentBatchId: path.cardEnrichmentBatchId
method: generated
generated: '2026-10-01'
- target: $.paths['/batches/{cardEnrichmentBatchId}'].get
update:
x-apievangelist-phrasing:
intent: Check the status of a card enrichment batch
effect: read
questions:
- Is my batch card enrichment job still running or has it completed?
- How can I poll progress on a card transaction batch I submitted?
instructions:
- text: Check whether card batch {cardEnrichmentBatchId} has finished.
slots:
cardEnrichmentBatchId: path.cardEnrichmentBatchId
- text: Show the job status for card enrichment batch {cardEnrichmentBatchId}.
slots:
cardEnrichmentBatchId: path.cardEnrichmentBatchId
method: generated
generated: '2026-10-01'
- target: $.paths['/transactions/enrich'].post
update:
x-apievangelist-phrasing:
intent: Enrich a card transaction via the legacy endpoint
effect: write
questions:
- Does the old /transactions/enrich card endpoint still work?
- My integration calls the legacy transaction enrich path; what does it map to now?
instructions:
- text: Enrich a card transaction through the deprecated /transactions/enrich alias.
- text: Send this card transaction to the legacy enrich endpoint my old integration uses.
method: generated
generated: '2026-10-01'
- target: $.paths['/transactions/enrich/parse'].post
update:
x-apievangelist-phrasing:
intent: Enrich a DE43 card transaction via the legacy endpoint
effect: write
questions:
- Is the legacy /transactions/enrich/parse DE43 endpoint still supported?
- What replaced the old DE43 parse path for card enrichment?
instructions:
- text: Enrich a DE43 card transaction through the deprecated /transactions/enrich/parse alias.
- text: Send this raw DE43 swipe to the legacy parse endpoint my old code still calls.
method: generated
generated: '2026-10-01'