Uphold · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Core Accounts API
11 actions
11 updates
phrasing
extends
openapi/uphold-accounts-api-openapi.yml
Generated by API Evangelist
Written by API Evangelist tooling for Uphold's API. It is a proposal applied on top of the contract, not a document Uphold publishes.
What the actions change
x-apievangelist-phrasing
Targets 11
$.info
$.paths['/core/accounts'].get
$.paths['/core/accounts'].post
$.paths['/core/accounts/defaults'].get
$.paths['/core/accounts/{accountId}'].get
$.paths['/core/accounts/{accountId}'].delete
$.paths['/core/accounts/{accountId}'].patch
$.paths['/core/accounts/{accountId}/deposit-method'].get
$.paths['/core/accounts/{accountId}/deposit-method'].put
$.paths['/core/accounts/test-helpers/bank-deposits'].post
$.paths['/core/accounts/test-helpers/crypto-deposits'].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 Core Accounts API
version: 1.0.0
extends: openapi/uphold-accounts-api-openapi.yml
actions:
- target: $.info
update:
x-apievangelist-phrasing:
method: generated
generated: '2026-09-26'
generator: build-phrasing.py
label: Generated by API Evangelist
operations: 10
- target: $.paths['/core/accounts'].get
update:
x-apievangelist-phrasing:
intent: List a user's accounts
effect: read
questions:
- Which accounts does this user hold on Uphold?
- Can I see only the accounts held in one asset, like BTC?
instructions:
- text: List all my accounts.
- text: Show my accounts denominated in {asset}.
slots:
asset: query.asset
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts'].post
update:
x-apievangelist-phrasing:
intent: Open a new account in an asset
effect: write
questions:
- How do I open a new account for holding a specific asset?
- Can I give a newly opened account a custom label?
instructions:
- text: Open a new {asset} account labelled {label}.
slots:
asset: requestBody.asset
label: requestBody.label
- text: Create another {asset} account called {label} for savings.
slots:
asset: requestBody.asset
label: requestBody.label
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/defaults'].get
update:
x-apievangelist-phrasing:
intent: List the default account per asset
effect: read
questions:
- Which account is the default one for each asset I own?
- What is my default account for EUR?
instructions:
- text: Show my default account for every asset.
- text: Find my default {asset} account.
slots:
asset: query.asset
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/{accountId}'].get
update:
x-apievangelist-phrasing:
intent: Look up one account by id
effect: read
questions:
- How do I fetch the details and balance of a single account?
- What does an account record show when I look it up by its id?
instructions:
- text: Get account {accountId}.
slots:
accountId: path.accountId
- text: Show me the details of account {accountId}.
slots:
accountId: path.accountId
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/{accountId}'].delete
update:
x-apievangelist-phrasing:
intent: Archive an account
effect: destructive
questions:
- How do I archive an account I no longer use?
- Can an account be archived instead of kept open?
instructions:
- text: Archive account {accountId}.
slots:
accountId: path.accountId
- text: Close out and archive my account {accountId}.
slots:
accountId: path.accountId
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/{accountId}'].patch
update:
x-apievangelist-phrasing:
intent: Rename an account
effect: write
questions:
- How do I change the label on an existing account?
- Can I rename an account after it has been created?
instructions:
- text: Rename account {accountId} to {label}.
slots:
accountId: path.accountId
label: requestBody.label
- text: Change the label of account {accountId} to {label}.
slots:
accountId: path.accountId
label: requestBody.label
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/{accountId}/deposit-method'].get
update:
x-apievangelist-phrasing:
intent: Get deposit details for funding an account
effect: read
questions:
- Where do I send funds to deposit into an account from outside?
- What address should I use to deposit a crypto asset on a given network into my account?
instructions:
- text: Get the {type} deposit details for account {accountId} in {asset} on {network}.
slots:
type: query.type
accountId: path.accountId
asset: query.asset
network: query.network
- text: Show me where to deposit {asset} over {network} into account {accountId} using {type}.
slots:
asset: query.asset
network: query.network
accountId: path.accountId
type: query.type
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/{accountId}/deposit-method'].put
update:
x-apievangelist-phrasing:
intent: Set up a deposit method for an account
effect: write
questions:
- How do I enable external deposits into an account for a new asset and network?
- Do I need to set up a deposit method before an account can receive outside funds?
instructions:
- text: Set up a {type} deposit method on account {accountId} for {asset} on {network}.
slots:
type: query.type
accountId: path.accountId
asset: query.asset
network: query.network
- text: Enable {asset} deposits over {network} into account {accountId} via {type}.
slots:
asset: query.asset
network: query.network
accountId: path.accountId
type: query.type
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/test-helpers/bank-deposits'].post
update:
x-apievangelist-phrasing:
intent: Simulate an incoming bank deposit
effect: write
questions:
- How can I fake an incoming bank transfer while testing my integration?
- Is there a test helper that simulates a bank deposit arriving?
instructions:
- text: Simulate a bank deposit arriving in the test environment.
- text: Trigger a test incoming bank deposit.
method: generated
generated: '2026-09-26'
- target: $.paths['/core/accounts/test-helpers/crypto-deposits'].post
update:
x-apievangelist-phrasing:
intent: Simulate an incoming crypto deposit
effect: write
questions:
- How do I test receiving a crypto deposit without sending real coins?
- Can I simulate a crypto deposit of a chosen amount to a specific address?
instructions:
- text: Simulate a {amount} {asset} deposit on {network} to address {address}.
slots:
amount: requestBody.amount
asset: requestBody.asset
network: requestBody.network
address: requestBody.address
- text: Send a test crypto deposit of {amount} {asset} over {network} to {address} with reference {reference}.
slots:
amount: requestBody.amount
asset: requestBody.asset
network: requestBody.network
address: requestBody.address
reference: requestBody.reference
method: generated
generated: '2026-09-26'