Xflow ExchangeRates API
The ExchangeRates API from Xflow — 2 operation(s) for exchangerates.
The ExchangeRates API from Xflow — 2 operation(s) for exchangerates.
openapi: 3.0.0
info:
contact:
email: support@xflowpay.com
name: Xflow Support
url: https://xflowpay.com
description: The Xflow REST API. Please see https://docs.xflowpay.com/2024-02-05/api for more details.
termsOfService: https://docs.xflowpay.com/platform-agreement
title: Xflow Accounts ExchangeRates API
version: '2024-02-05'
servers:
- url: https://api.xflowpay.com/
security:
- bearerAuth: []
tags:
- name: ExchangeRates
paths:
/v1/exchange_rates:
get:
description: Returns a list of ExchangeRates.
operationId: ListExchangeRates
parameters:
- description: This header specifies the connected user's account on behalf of which the request is being made.
in: header
name: Xflow-Account
required: false
schema:
type: string
- description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the buy amount currency.
in: query
name: buy.currency
required: false
schema:
type: string
- description: Return results where the `created` field is equal to the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.eq
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is greater than the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.gt
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is greater than or equal to the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.gte
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is lesser than the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.lt
required: false
schema:
format: unix-time
type: integer
- description: Return results where the `created` field is lesser than or equal to the timestamp value in seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time).
in: query
name: created.lte
required: false
schema:
format: unix-time
type: integer
- description: The currency pair associated with buy and sell currencies.
in: query
name: currency_pair
required: false
schema:
type: string
- description: A cursor for use in pagination. `ending_before` is an object identifier that defines your place in the list. For instance, if you make a list request and receive 5 objects, starting with `obj_bar`, your subsequent call can include `ending_before=obj_bar` in order to fetch the previous page of the list.
in: query
name: ending_before
required: false
schema:
type: string
- description: A limit on the number of objects to be returned, between 1 and 10. If this parameter is not specified, a default value of 10 is assumed.
in: query
name: limit
required: false
schema:
type: integer
- description: Unique identifier for the payment object associated with the ExchangeRate.
in: query
name: payment_id
required: false
schema:
items:
type: string
type: array
- description: A cursor for use in pagination. `starting_after` is an object identifier that defines your place in the list. For instance, if you make a list request and receive 5 objects, ending with `obj_bar`, your subsequent call can include `starting_after=obj_bar` in order to fetch the next page of the list.
in: query
name: starting_after
required: false
schema:
type: string
- description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the sell amount currency.
in: query
name: sell.currency
required: false
schema:
type: string
responses:
'200':
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
properties:
data:
items:
$ref: '#/components/schemas/exchange_rate'
type: array
has_next:
description: True if this list has another page of items after this one that can be fetched.
type: boolean
object:
description: String representing the object's type. Objects of the same type share the same value. Always has the value `list`.
enum:
- list
type: string
title: ListExchangeRatesResponse
type: object
description: Successful response.
default:
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/error_object'
description: Error response.
tags:
- ExchangeRates
/v1/exchange_rates/{exchange_rate}:
get:
description: Retrieves the details of an ExchangeRate.
operationId: RetrieveExchangeRate
parameters:
- description: This header specifies the connected user's account on behalf of which the request is being made.
in: header
name: Xflow-Account
required: false
schema:
type: string
- in: path
name: exchange_rate
required: true
schema:
type: string
style: simple
responses:
'200':
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/exchange_rate'
description: Successful response.
default:
headers:
Date:
schema:
type: string
Content-Length:
schema:
type: integer
Connection:
schema:
type: string
x-amzn-RequestId:
schema:
type: string
xflow-request-id:
schema:
type: string
x-amz-apigw-id:
schema:
type: string
X-Amzn-Trace-Id:
schema:
type: string
content:
application/json:
schema:
$ref: '#/components/schemas/error_object'
description: Error response.
tags:
- ExchangeRates
components:
schemas:
exchange_rate:
description: The ExchangeRate object models the details behind currency conversion. It transparently offers details like the buy and sell amounts, what the mid-market (or inter-bank) and the user-facing rates are and (if applicable) how long the rates are valid. The ExchangeRate object is always created by a payment object.
properties:
buy:
description: Details of the buy amount and currency.
properties:
amount:
description: Buy amount value.
type: string
currency:
description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the amount currency.
enum:
- INR
type: string
title: ExchangeRateBuy
type: object
created:
description: The seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time) at which the ExchangeRate object was created.
format: unix-time
type: integer
currency_pair:
description: The currency pair associated with buy and sell currencies.
type: string
dealt_currency:
description: Dealt currency denotes the fixed side of the conversion request. If `buy.amount` was specified, then `buy.currency`; else, `sell.currency` (in 3-letter [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) format).
type: string
id:
description: Unique identifier for the object.
type: string
livemode:
description: Has the value true if the object exists in `livemode` or the value false if the object exists in `testmode`.
type: boolean
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- exchange_rate
type: string
payment_id:
description: Unique identifier for the payment object associated with this ExchangeRate object.
type: string
rate:
description: Details of the sell amount and currency.
properties:
mid_market:
description: For reference purposes only. This rate represents the midpoint of the current bid and ask price.
type: string
user:
description: The returned FX quote.
type: string
valid_from:
description: The seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time) from which the rates in this ExchangeRate object are valid.
format: unix-time
type: integer
valid_to:
description: The seconds elapsed since [Unix epoch time](https://en.wikipedia.org/wiki/Unix_time) till which the rates in this ExchangeRate object are valid.
format: unix-time
type: integer
title: ExchangeRateRate
type: object
sell:
description: Details of the sell amount and currency.
properties:
amount:
description: Sell amount value.
type: string
currency:
description: The [ISO 4217](https://en.wikipedia.org/wiki/ISO_4217) 3-digit code for the amount currency.
type: string
title: ExchangeRateSell
type: object
type:
description: Types of ExchangeRate objects. For now, this only accepts type `lock` and `stp`.
enum:
- lock
- stp
type: string
title: ExchangeRate
type: object
error_object:
description: 'Xflow uses conventional HTTP response codes to indicate the success or failure of an API request. In general: Codes in the `2xx` range indicate success. Codes in the `4xx` range indicate an error that failed given the information provided (e.g., a required parameter was omitted, a payment failed, etc.). Codes in the `5xx` range indicate an error with Xflow’s servers (these are rare).'
properties:
errors:
description: An array of errors. Each element is a specific error.
maxItems: 1
minItems: 1
items:
properties:
code:
description: Enum value specific to the error. All Xflow error codes are defined [here](https://docs.xflowpay.com/latest/errors).
enum:
- account_activation_failed_missing_payout_address
- account_activation_failed_missing_person
- account_activation_failed_incorrect_number_of_persons
- account_activation_failed_incorrect_relationship_for_person
- account_email_invalid
- account_id_invalid
- account_not_unique_nickname
- account_parameter_not_editable
- account_partner_activate_disallowed
- account_partner_deactivate_disallowed
- account_platform_activate_disallowed
- account_platform_create_disallowed
- account_setting_parameter_not_editable
- account_status_invalid
- account_type_invalid
- account_update_access_unauthorized
- account_user_activate_disallowed
- account_user_create_disallowed
- action_invalid
- action_not_enabled
- action_unauthorized
- address_cannot_be_deactivated
- address_category_mismatch
- address_category_not_allowed
- address_domestic_credit_invalid
- address_global_wire_invalid
- address_global_wire_not_supported
- address_parameter_not_editable
- address_type_not_allowed
- balance_insufficient
- cancelled_request
- country_code_invalid
- country_code_not_supported
- currency_amount_mismatch
- currency_not_supported
- date_invalid_format
- deposit_account_address_mismatch
- deposit_account_id_mismatch
- deposit_parameter_not_editable
- duplicate_currencies_not_supported
- duplicate_values_found
- event_type_invalid
- fee_plan_parameter_not_editable
- file_name_invalid
- file_name_length_invalid
- file_parameter_not_editable
- file_purpose_mismatch
- file_size_limit_exceeded
- file_request_body_invalid
- file_type_unsupported
- header_parameter_invalid
- header_parameter_missing
- http_parameter_invalid
- invalid_amount
- invoice_date_invalid
- invoice_due_date_invalid
- metadata_count_exceeded
- metadata_key_max_length_invalid
- metadata_key_min_length_invalid
- metadata_value_max_length_invalid
- metadata_value_min_length_invalid
- multiple_xflow_receive_same_category_not_allowed
- minimum_required_values_not_present
- object_not_found
- parameter_address_invalid
- parameter_character_invalid
- parameter_empty
- parameter_file_invalid
- parameter_max_length_invalid
- parameter_min_length_invalid
- parameter_range_invalid
- parameter_receivable_invalid
- parameter_unexpected
- parameter_value_invalid
- payment_link_account_receivable_mismatch
- payment_link_activate_disallowed
- payment_link_deactivate_invalid
- payment_link_expire_invalid
- payment_link_extend_disallowed
- payment_link_extend_invalid
- payment_link_non_us_account_non_usd_currency
- payment_link_parameter_not_editable
- payment_link_receivable_count_exceed
- payment_link_receivable_status_invalid
- payout_parameter_not_editable
- person_delete_not_allowed
- person_parameter_not_editable
- person_relationship_not_set
- person_update_not_allowed
- purpose_code_not_supported
- receivable_additional_info_required
- receivable_amount_invoice_amount_mismatch
- receivable_amount_maximum_reconcilable_incorrect
- receivable_cancel_disallowed
- receivable_confirm_action_disallowed
- receivable_creation_date_invoice_creation_date_mismatch
- receivable_currency_invoice_currency_mismatch
- receivable_due_date_invoice_due_date_mismatch
- receivable_hold
- receivable_invoice_document_incorrect
- receivable_invoice_reference_number_exists
- receivable_invoice_transaction_type_incorrect
- receivable_parameter_not_editable
- receivable_partner_country_invoice_partner_country_mismatch
- receivable_partner_invoice_partner_mismatch
- receivable_reconcile_action_disallowed
- receivable_reconcile_amount_exceed
- receivable_reference_number_invoice_reference_number_mismatch
- receivable_unable_to_process
- receivable_update_access_unauthorized
- request_body_invalid
- request_query_parameter_invalid
- resource_locked
- secret_key_invalid
- secret_key_missing
- testmode_action_only
- timestamp_invalid
- transfer_failed
- transfer_parameter_not_editable
- transfer_type_invalid
- url_invalid
- webhook_endpoint_limit_exceeded
- webhook_endpoint_parameter_not_editable
- website_invalid
type: string
message:
description: Description of the error with guidance on how to recover.
type: string
metadata:
additionalProperties:
type: string
description: Additional information associated with the error in the form of key-value pairs.
nullable: true
title: ErrorMetadata
type: object
title: ErrorObjectSingle
type: object
type: array
http_status_code:
description: HTTP status code.
type: integer
object:
description: String representing the object's type. Objects of the same type share the same value.
enum:
- error
type: string
title: ErrorObject
type: object
securitySchemes:
bearerAuth:
bearerFormat: auth-scheme
description: 'Bearer HTTP authentication. Allowed headers-- Authorization: Bearer <api_key>'
scheme: bearer
type: http