Narmi scheduled transfers API
The scheduled transfers API from Narmi — 1 operation(s) for scheduled transfers.
The scheduled transfers API from Narmi — 1 operation(s) for scheduled transfers.
openapi: 3.0.3
info:
title: Narmi Public account balances scheduled transfers API
version: v1
description: To read about Public API access and authentication, go to [API Overview](https://docs.narmi.com/docs/narmi-developer-docs/xl9dvbz84o11l-introduction).
termsOfService: https://www.narmi.com/policies/developer-terms-conditions
contact:
name: Narmi Support
email: support@narmi.com
servers:
- url: https://api.sandbox.narmi.dev/
description: ''
tags:
- name: scheduled transfers
paths:
/v1/transfers/scheduled/:
get:
operationId: transfers_scheduled_list
description: 'List the authenticated user''s scheduled transfers.
All monetary values are represented in minor units, or the smallest unit of the currency with no decimal (e.g., cents). For example, $10.00 is represented as 1000.
<i>How can we improve these docs? <a href="mailto:docs+feedback@narmi.com">Share your feedback.</a></i>'
summary: List scheduled transfers
parameters:
- in: query
name: is_expired
schema:
type: boolean
description: When present, will filter results by either expired only, or unexpired only.
- name: page
required: false
in: query
description: A page number within the paginated result set.
schema:
type: integer
- name: per_page
required: false
in: query
description: Number of results to return per page.
schema:
type: integer
tags:
- scheduled transfers
security:
- oauth2:
- banking:scheduled_transfers:read
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/PaginatedScheduledTransferList'
description: ''
'404':
content:
application/json:
schema:
$ref: '#/components/schemas/NotFoundError'
description: ''
x-stoplight:
id: wnqwd2vuvsmeg
post:
operationId: transfers_scheduled_create
description: 'Create a scheduled transfer for the authenticated user.
All monetary values are represented in minor units, or the smallest unit of the currency with no decimal (e.g., cents). For example, $10.00 is represented as 1000.
<i>How can we improve these docs? <a href="mailto:docs+feedback@narmi.com">Share your feedback.</a></i>'
summary: Create a scheduled transfer
tags:
- scheduled transfers
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScheduledTransferRequest'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ScheduledTransferRequest'
multipart/form-data:
schema:
$ref: '#/components/schemas/ScheduledTransferRequest'
required: true
security:
- oauth2:
- banking:scheduled_transfers:write
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/NestedScheduledTransfer'
description: ''
'404':
content:
application/json:
schema:
type: object
properties:
id:
type: string
message:
type: string
examples:
NotFoundError:
value:
id: not_found_error
message: The requested resource was not found.
description: ''
'422':
content:
application/json:
schema:
type: object
properties:
id:
type: string
message:
type: string
examples:
InvalidPayload:
value:
id: invalid_request_error
message: Transfer amount is greater than account balance.
summary: Invalid Payload
description: ''
x-stoplight:
id: edb7uvtg5ajmd
put:
operationId: transfers_scheduled_update
description: 'Edit a scheduled transfer for the authenticated user.
All monetary values are represented in minor units, or the smallest unit of the currency with no decimal (e.g., cents). For example, $10.00 is represented as 1000.
<i>How can we improve these docs? <a href="mailto:docs+feedback@narmi.com">Share your feedback.</a></i>'
summary: Edit a scheduled transfer
tags:
- scheduled transfers
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/ScheduledTransferRequest'
application/x-www-form-urlencoded:
schema:
$ref: '#/components/schemas/ScheduledTransferRequest'
multipart/form-data:
schema:
$ref: '#/components/schemas/ScheduledTransferRequest'
required: true
security:
- oauth2:
- banking:scheduled_transfers:write
responses:
'200':
content:
application/json:
schema:
$ref: '#/components/schemas/NestedScheduledTransfer'
description: ''
'404':
content:
application/json:
schema:
type: object
properties:
id:
type: string
message:
type: string
examples:
NotFoundError:
value:
id: not_found_error
message: The requested resource was not found.
description: ''
'422':
content:
application/json:
schema:
type: object
properties:
id:
type: string
message:
type: string
examples:
InvalidPayload:
value:
id: invalid_request_error
message: Scheduled transfers with end dates cannot be edited. If you want to change this transfer, delete it and create a new one instead.
summary: Invalid Payload
description: ''
x-stoplight:
id: tbggyxdmhikya
delete:
operationId: transfers_scheduled_destroy
description: "Delete a user's scheduled transfer. Accepts a payload containing an identifier for the scheduled transfer,\neither a Narmi UUID or a core identifier.\n\nExample:\n```http\nDELETE /v1/transfers/scheduled/ HTTP/1.1\nHost: api.example.com\nContent-Type: application/json\n\n{\n \"id\": \"07231f46-23f1-482e-bdc4-35f2267b60e6\"\n}\n\n```\n\nAll monetary values are represented in minor units, or the smallest unit of the currency with no decimal (e.g., cents). For example, $10.00 is represented as 1000.\n\n\n\n<i>How can we improve these docs? <a href=\"mailto:docs+feedback@narmi.com\">Share your feedback.</a></i>"
summary: Delete scheduled transfer
tags:
- scheduled transfers
security:
- oauth2:
- banking:scheduled_transfers:write
responses:
'200':
description: No response body
'404':
content:
application/json:
schema:
type: object
properties:
id:
type: string
message:
type: string
examples:
NotFoundError:
value:
id: not_found_error
message: The requested resource was not found.
description: ''
x-stoplight:
id: bvn3o9dxj90sz
components:
schemas:
ScheduledTransfer:
type: object
description: 'Represents:
indigo.models.recurring_transfer.AchTransfer,
indigo.models.recurring_transfer.IntraInstitutionTransfer'
properties:
id:
type: string
format: uuid
readOnly: true
state:
allOf:
- $ref: '#/components/schemas/ScheduledTransferStateEnum'
readOnly: true
description: 'Whether or not the scheduled transfer is expired.
* `expired` - expired
* `active` - active'
created_at:
type: string
format: date-time
readOnly: true
nullable: true
amount:
example: 100
maximum: 1000000000000000
minimum: -1000000000000000
description: A field that returns the original value in the currency's smallest unit (e.g. cents).
type: integer
from_account_id:
type: string
format: uuid
description: UUID identifying the source account in the Narmi database.
to_account_id:
type: string
format: uuid
description: UUID identifying the destination account in the Narmi database.
next_transfer_at:
type: string
format: date-time
readOnly: true
recurring_rule:
type: string
example: RRULE:FREQ=DAILY;COUNT=1
description: Cadence of recurring event, as per the RFC-5545 specification.
memo:
type: string
default: ''
description: Free-form description of transfer.
description:
type: string
default: ''
description: Free-form description of transfer.
required:
- amount
- from_account_id
- recurring_rule
- to_account_id
x-stoplight:
id: tfuhvwk5p8fsx
NotFoundError:
type: object
properties:
id:
type: string
default: not_found
message:
type: string
description: An error response detailing the nature of the error.
required:
- message
x-stoplight:
id: qazjpvfdteybw
ScheduledTransferStateEnum:
enum:
- expired
- active
type: string
description: '* `expired` - expired
* `active` - active'
x-stoplight:
id: 3uyhod4xb85tf
NestedScheduledTransfer:
type: object
properties:
scheduled_transfers:
type: array
items:
$ref: '#/components/schemas/ScheduledTransfer'
required:
- scheduled_transfers
x-stoplight:
id: dsndbtq2zlgwc
ScheduledTransferRequest:
type: object
description: 'Represents:
indigo.models.recurring_transfer.AchTransfer,
indigo.models.recurring_transfer.IntraInstitutionTransfer'
properties:
amount:
example: 100
maximum: 1000000000000000
minimum: -1000000000000000
description: A field that returns the original value in the currency's smallest unit (e.g. cents).
type: integer
from_account_id:
type: string
format: uuid
description: UUID identifying the source account in the Narmi database.
to_account_id:
type: string
format: uuid
description: UUID identifying the destination account in the Narmi database.
agreement:
type: boolean
writeOnly: true
description: Whether or not the terms of the transfer were agreed to.
device_id:
type: string
writeOnly: true
minLength: 1
description: Device 'fingerprint' from alloy/iovation.
recurring_rule:
type: string
minLength: 1
example: RRULE:FREQ=DAILY;COUNT=1
description: Cadence of recurring event, as per the RFC-5545 specification.
memo:
type: string
minLength: 1
default: ''
description: Free-form description of transfer.
description:
type: string
minLength: 1
default: ''
description: Free-form description of transfer.
ach_transfer:
type: string
format: uuid
writeOnly: true
description: Associated ACH Transfer used to evaluate transfer limits, and if they've been exceeded.
required:
- agreement
- amount
- from_account_id
- recurring_rule
- to_account_id
x-stoplight:
id: xtzufkz4xtogz
PaginatedScheduledTransferList:
type: object
required:
- meta
- links
properties:
meta:
description: Free-form object, contains total object count.
type: object
properties:
total:
type: integer
links:
type: object
description: URIs linking to sequential pages of the result.
properties:
next:
type: string
format: uri
nullable: true
example: http://api.example.org/accounts/?page=4
prev:
type: string
format: uri
nullable: true
example: http://api.example.org/accounts/?page=4
scheduled_transfers:
type: array
items:
$ref: '#/components/schemas/ScheduledTransfer'
x-stoplight:
id: dahasasw0vcuq
securitySchemes:
oauth2:
type: oauth2
flows:
authorizationCode:
authorizationUrl: /v2/oauth/authorize/
tokenUrl: /v2/oauth/token/
scopes:
banking:accounts:read: Can read account information.
banking:transactions:read: Can read transaction information.
banking:scheduled_transfers:read: Can read scheduled transfer information.
banking:scheduled_transfers:write: Can create and update scheduled transfers.
banking:accounts:write: Can update account information.
banking:transactions:write: Can update transaction information.
banking:users:read: Can read user profile information.
banking:products:read: Can read product information.
banking:documents:read: Can read user statements and documents.
x-stoplight:
id: 68n444msv6n7x