Fin Catalogue API
A set of endpoints to retrieve contextual data to assemble requests to fin.com's API
A set of endpoints to retrieve contextual data to assemble requests to fin.com's API
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/fin:fin-catalogue-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Fin Catalogue API
version: 1.0.0
description: 'Operations tagged Catalogue across 2 of this provider''s published API definitions: fin-openapi-original.yml, fin-openapi.yml. Each path carries the servers of the definition it was published in.'
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
tags:
- name: Catalogue
description: 'A set of endpoints to retrieve contextual data to assemble requests
to fin.com''s API'
paths:
/v1/industries:
get:
summary: List Industries
description: Retrieve a list of available industries
x-mint:
content: "<Note>\n This endpoint is used for **Create Business Customer V1** only. It is not applicable for Create Business Customer V2.\n</Note>\n"
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/PerPageParam'
- $ref: '#/components/parameters/CurrentPageParam'
responses:
'200':
description: List of industries retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
industries:
type: array
items:
type: object
properties:
id:
type: integer
example: 1
title:
type: string
example: Oilseed Except Soybean Farming
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1Industries
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/occupations:
get:
summary: List Occupations
description: Retrieve a list of available occupations
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/PerPageParam'
- $ref: '#/components/parameters/CurrentPageParam'
responses:
'200':
description: List of occupations retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
occupations:
type: array
items:
type: object
properties:
id:
type: integer
example: 1
title:
type: string
example: Software Engineer
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1Occupations
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/source-of-funds:
get:
summary: List Source of Funds
description: Retrieve a list of available source of funds
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/PerPageParam'
- $ref: '#/components/parameters/CurrentPageParam'
- name: type
in: query
description: Filter source of funds by type
required: true
schema:
type: string
enum:
- INDIVIDUAL
- BUSINESS
responses:
'200':
description: List of source of funds retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
source_of_funds:
type: array
items:
type: object
properties:
id:
type: integer
example: 1
title:
type: string
example: Employment Income
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1SourceOfFunds
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/source-of-wealth:
get:
summary: List Source of Wealth
description: Retrieve a list of available source of wealth options
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/PerPageParam'
- $ref: '#/components/parameters/CurrentPageParam'
- name: type
in: query
description: Filter source of wealth by type
required: true
schema:
type: string
enum:
- INDIVIDUAL
- BUSINESS
responses:
'200':
description: List of source of wealth retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
source_of_wealth:
type: array
items:
type: object
properties:
id:
type: integer
example: 1
title:
type: string
example: Business dividends or profits
example:
data:
pagination:
current_page: 1
per_page: 10
total_page: 1
total: 7
source_of_wealth:
- id: 1
title: Business dividends or profits
- id: 2
title: Investment income
- id: 3
title: Real estate
- id: 4
title: Inheritance
- id: 5
title: Salary
- id: 6
title: Sale of business
- id: 7
title: Other
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1SourceOfWealth
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/purposes:
get:
summary: List Account Purposes
description: Retrieve a list of available account purposes
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/PerPageParam'
- $ref: '#/components/parameters/CurrentPageParam'
- name: type
in: query
description: Filter account purposes by type
required: true
schema:
type: string
enum:
- INDIVIDUAL
- BUSINESS
responses:
'200':
description: List of account purposes retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
purposes:
type: array
items:
type: object
properties:
id:
type: integer
example: 1
title:
type: string
example: Personal Savings
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1Purposes
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/countries:
get:
summary: List Generic Country Codes
description: Retrieve a list of country specific codes following ISO 3166-1 alpha-3 standard
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/PerPageParam'
- $ref: '#/components/parameters/CurrentPageParam'
responses:
'200':
description: List of countries retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
countries:
type: array
items:
type: object
properties:
code:
type: string
example: BLR
name:
type: string
example: Belarus
currency_code:
type: string
example: BYN
phone_code:
type: string
example: '+375'
flag_url:
type: string
format: uri
example: https://flagcdn.com/by.svg
postal_code:
type: object
properties:
required:
type: boolean
example: true
regex:
type: string
nullable: true
example: \A\d{6}\Z
example:
data:
pagination:
current_page: 1
per_page: 20
total_page: 13
total: 248
countries:
- code: AFG
name: Afghanistan
currency_code: AFN
phone_code: '+93'
flag_url: https://flagcdn.com/af.svg
postal_code:
required: true
regex: \A\d{4}\Z
- code: ALA
name: Åland Islands
currency_code: EUR
phone_code: '+358'
flag_url: https://flagcdn.com/ax.svg
postal_code:
required: true
regex: \A22\d{3}\Z
- code: ALB
name: Albania
currency_code: ALL
phone_code: '+355'
flag_url: https://flagcdn.com/al.svg
postal_code:
required: true
regex: \A\d{4}\Z
- code: DZA
name: Algeria
currency_code: DZD
phone_code: '+213'
flag_url: https://flagcdn.com/dz.svg
postal_code:
required: true
regex: \A\d{5}\Z
- code: ASM
name: American Samoa
currency_code: USD
phone_code: +1-684
flag_url: https://flagcdn.com/as.svg
postal_code:
required: true
regex: \A(96799)(?:[ \-](\d{4}))?\Z
- code: AND
name: Andorra
currency_code: EUR
phone_code: '+376'
flag_url: https://flagcdn.com/ad.svg
postal_code:
required: true
regex: \AAD[1-7]0\d\Z
- code: AGO
name: Angola
currency_code: AOA
phone_code: '+244'
flag_url: https://flagcdn.com/ao.svg
postal_code:
required: false
regex: null
- code: AIA
name: Anguilla
currency_code: XCD
phone_code: +1-264
flag_url: https://flagcdn.com/ai.svg
postal_code:
required: true
regex: \A(?:AI-)?2640\Z
- code: ATA
name: Antarctica
flag_url: https://flagcdn.com/aq.svg
postal_code:
required: false
regex: null
- code: ATG
name: Antigua and Barbuda
currency_code: XCD
phone_code: +1-268
flag_url: https://flagcdn.com/ag.svg
postal_code:
required: false
regex: null
- code: ARG
name: Argentina
currency_code: ARS
phone_code: '+54'
flag_url: https://flagcdn.com/ar.svg
postal_code:
required: true
regex: \A((?:[A-HJ-NP-Z])?\d{4})([A-Z]{3})?\Z
- code: ARM
name: Armenia
currency_code: AMD
phone_code: '+374'
flag_url: https://flagcdn.com/am.svg
postal_code:
required: true
regex: \A(?:37)?\d{4}\Z
- code: ABW
name: Aruba
currency_code: AWG
phone_code: '+297'
flag_url: https://flagcdn.com/aw.svg
postal_code:
required: false
regex: null
- code: AUS
name: Australia
currency_code: AUD
phone_code: '+61'
flag_url: https://flagcdn.com/au.svg
postal_code:
required: true
regex: \A\d{4}\Z
- code: AUT
name: Austria
currency_code: EUR
phone_code: '+43'
flag_url: https://flagcdn.com/at.svg
postal_code:
required: true
regex: \A\d{4}\Z
- code: AZE
name: Azerbaijan
currency_code: AZN
phone_code: '+994'
flag_url: https://flagcdn.com/az.svg
postal_code:
required: true
regex: \A\d{4}\Z
- code: BHS
name: Bahamas
currency_code: BSD
phone_code: +1-242
flag_url: https://flagcdn.com/bs.svg
postal_code:
required: false
regex: null
- code: BHR
name: Bahrain
currency_code: BHD
phone_code: '+973'
flag_url: https://flagcdn.com/bh.svg
postal_code:
required: true
regex: \A(?:\d|1[0-2])\d{2}\Z
- code: BGD
name: Bangladesh
currency_code: BDT
phone_code: '+880'
flag_url: https://flagcdn.com/bd.svg
postal_code:
required: true
regex: \A\d{4}\Z
- code: BRB
name: Barbados
currency_code: BBD
phone_code: +1-246
flag_url: https://flagcdn.com/bb.svg
postal_code:
required: true
regex: \ABB\d{5}\Z
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1Countries
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/countries/{country_code}/subdivisions:
get:
summary: 'List Subdivision Codes: ISO 3166-1 alpha-2'
description: Retrieve a list of subdivision codes for a specific country following ISO 3166-2 standard
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/CountryCodeParam'
responses:
'200':
description: List of subdivisions retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
subdivisions:
type: array
items:
type: object
properties:
name:
type: string
example: Bandarban
code:
type: string
example: BD-01
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1CountriesByCountryCodeSubdivisions
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/transaction-purposes:
get:
summary: List Transaction Purposes
description: Retrieve a list of available transaction purposes
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- $ref: '#/components/parameters/PerPageParam'
- $ref: '#/components/parameters/CurrentPageParam'
- name: type
in: query
description: Filter transaction purposes by type
required: true
schema:
type: string
enum:
- INDIVIDUAL
- BUSINESS
responses:
'200':
description: List of transaction purposes retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
pagination:
$ref: '#/components/schemas/Pagination'
transaction_purposes:
type: array
items:
type: object
properties:
id:
type: integer
example: 1
title:
type: string
example: Personal Transfer
'401':
$ref: '#/components/responses/AuthenticationError'
operationId: getV1TransactionPurposes
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
/v1/fx-rate:
get:
summary: Fetch Exchange Rates
description: Retrieve exchange rates for a specific country
tags:
- Catalogue
security:
- bearerAuth: []
parameters:
- name: country_code
in: query
required: true
schema:
$ref: '#/components/schemas/CountryCode_2'
description: ISO 3166-1 alpha-3 country code
responses:
'200':
description: Exchange rates retrieved successfully
content:
application/json:
schema:
type: object
properties:
data:
type: object
properties:
from_currency:
type: string
description: Source currency code
example: USD
to_currency:
type: string
description: Target currency code
example: BDT
exchange_rate:
type: number
format: float
description: Exchange rate from source to target currency
example: 117.19
country:
type: string
description: ISO 3166-1 alpha-3 country code
example: BGD
'401':
$ref: '#/components/responses/AuthenticationError_2'
operationId: getV1FxRate
x-operation-id-source: derived
servers:
- url: https://sandbox.api.fin.com
description: Sandbox server
- url: https://api.fin.com
description: Production server
components:
schemas:
CountryCode:
type: string
description: ISO 3166-1 alpha-3 country code
example: USA
enum:
- AFG
- ALB
- DZA
- ASM
- AND
- AGO
- AIA
- ATA
- ATG
- ARG
- ARM
- ABW
- AUS
- AUT
- AZE
- BHS
- BHR
- BGD
- BRB
- BLR
- BEL
- BLZ
- BEN
- BMU
- BTN
- BOL
- BES
- BIH
- BWA
- BVT
- BRA
- IOT
- BRN
- BGR
- BFA
- BDI
- CPV
- KHM
- CMR
- CAN
- CYM
- CAF
- TCD
- CHL
- CHN
- CXR
- CCK
- COL
- COM
- COD
- COG
- COK
- CRI
- HRV
- CUB
- CUW
- CYP
- CZE
- CIV
- DNK
- DJI
- DMA
- DOM
- ECU
- EGY
- SLV
- GNQ
- ERI
- EST
- SWZ
- ETH
- FLK
- FRO
- FJI
- FIN
- FRA
- GUF
- PYF
- ATF
- GAB
- GMB
- GEO
- DEU
- GHA
- GIB
- GRC
- GRL
- GRD
- GLP
- GUM
- GTM
- GGY
- GIN
- GNB
- GUY
- HTI
- HMD
- VAT
- HND
- HKG
- HUN
- ISL
- IND
- IDN
- IRN
- IRQ
- IRL
- IMN
- ISR
- ITA
- JAM
- JPN
- JEY
- JOR
- KAZ
- KEN
- KIR
- PRK
- KOR
- KWT
- KGZ
- LAO
- LVA
- LBN
- LSO
- LBR
- LBY
- LIE
- LTU
- LUX
- MAC
- MDG
- MWI
- MYS
- MDV
- MLI
- MLT
- MHL
- MTQ
- MRT
- MUS
- MYT
- MEX
- FSM
- MDA
- MCO
- MNG
- MNE
- MSR
- MAR
- MOZ
- MMR
- NAM
- NRU
- NPL
- NLD
- NCL
- NZL
- NIC
- NER
- NGA
- NIU
- NFK
- MNP
- NOR
- OMN
- PAK
- PLW
- PSE
- PAN
- PNG
- PRY
- PER
- PHL
- PCN
- POL
- PRT
- PRI
- QAT
- MKD
- ROU
- RUS
- RWA
- REU
- BLM
- SHN
- KNA
- LCA
- MAF
- SPM
- VCT
- WSM
- SMR
- STP
- SAU
- SEN
- SRB
- SYC
- SLE
- SGP
- SXM
- SVK
- SVN
- SLB
- SOM
- ZAF
- SGS
- SSD
- ESP
- LKA
- SDN
- SUR
- SJM
- SWE
- CHE
- SYR
- TWN
- TJK
- TZA
- THA
- TLS
- TGO
- TKL
- TON
- TTO
- TUN
- TUR
- TKM
- TCA
- TUV
- UGA
- UKR
- ARE
- GBR
- UMI
- USA
- URY
- UZB
- VUT
- VEN
- VNM
- VGB
- VIR
- WLF
- ESH
- YEM
- ZMB
- ZWE
- ALA
Pagination:
type: object
properties:
current_page:
type: integer
example: 1
per_page:
type: integer
example: 10
total_page:
type: integer
example: 1
total:
type: integer
example: 10
CountryCode_2:
type: string
enum:
- AFG
- ALB
- DZA
- ASM
- AND
- AGO
- AIA
- ATA
- ATG
- ARG
- ARM
- ABW
- AUS
- AUT
- AZE
- BHS
- BHR
- BGD
- BRB
- BLR
- BEL
- BLZ
- BEN
- BMU
- BTN
- BOL
- BES
- BIH
- BWA
- BVT
- BRA
- IOT
- BRN
- BGR
- BFA
- BDI
- CPV
- KHM
- CMR
- CAN
- CYM
- CAF
- TCD
- CHL
- CHN
- CXR
- CCK
- COL
- COM
- COD
- COG
- COK
- CRI
- HRV
- CUB
- CUW
- CYP
- CZE
- CIV
- DNK
- DJI
- DMA
- DOM
- ECU
- EGY
- SLV
- GNQ
- ERI
- EST
- SWZ
- ETH
- FLK
- FRO
- FJI
- FIN
- FRA
- GUF
- PYF
- ATF
- GAB
- GMB
- GEO
- DEU
- GHA
- GIB
- GRC
- GRL
- GRD
- GLP
- GUM
- GTM
- GGY
- GIN
- GNB
- GUY
- HTI
- HMD
- VAT
- HND
- HKG
- HUN
- ISL
- IND
- IDN
- IRN
- IRQ
- IRL
- IMN
- ISR
- ITA
- JAM
- JPN
- JEY
- JOR
- KAZ
- KEN
- KIR
- PRK
- KOR
- KWT
- KGZ
- LAO
- LVA
- LBN
- LSO
- LBR
- LBY
- LIE
- LTU
- LUX
- MAC
- MDG
- MWI
- MYS
- MDV
- MLI
- MLT
- MHL
- MTQ
- MRT
- MUS
- MYT
- MEX
- FSM
- MDA
- MCO
- MNG
- MNE
- MSR
- MAR
- MOZ
- MMR
- NAM
- NRU
- NPL
- NLD
- NCL
- NZL
- NIC
- NER
- NGA
- NIU
- NFK
- MNP
- NOR
- OMN
- PAK
- PLW
- PSE
- PAN
- PNG
- PRY
- PER
- PHL
- PCN
- POL
- PRT
- PRI
- QAT
- MKD
- ROU
- RUS
- RWA
- REU
- BLM
- SHN
- KNA
- LCA
- MAF
- SPM
- VCT
- WSM
- SMR
- STP
- SAU
- SEN
- SRB
- SYC
- SLE
- SGP
- SXM
- SVK
- SVN
- SLB
- SOM
- ZAF
- SGS
- SSD
- ESP
- LKA
- SDN
- SUR
- SJM
- SWE
- CHE
- SYR
- TWN
- TJK
- TZA
- THA
- TLS
- TGO
- TKL
- TON
- TTO
- TUN
- TUR
- TKM
- TCA
- TUV
- UGA
- UKR
- ARE
- GBR
- UMI
- USA
- URY
- UZB
- VUT
- VEN
- VNM
- VGB
- VIR
- WLF
- ESH
- YEM
- ZMB
- ZWE
- ALA
description: ISO 3166-1 alpha-3 country code
parameters:
PerPageParam:
name: per_page
in: query
description: Number of items to return per page
required: false
schema:
type: integer
default: 10
minimum: 1
maximum: 512
CountryCodeParam:
name: country_code
in: path
description: ISO 3166-1 alpha-3 country code
required: true
schema:
$ref: '#/components/schemas/CountryCode'
CurrentPageParam:
name: current_page
in: query
description: The page number to retrieve
required: false
schema:
type: integer
default: 1
minimum: 1
responses:
AuthenticationError:
description: Authentication failed due to invalid credentials
content:
application/json:
schema:
type: object
properties:
message:
type: string
example: Authentication failed
AuthenticationError_2:
description: Authentication failed due to invalid credentials
content:
application/json:
schema:
type: object
properties:
message:
type: string
description: The error message
example: Authentication failed
securitySchemes:
bearerAuth:
type: http
scheme: bearer
bearerFormat: JWT
description: Bearer token authentication. Obtain token from [Issue a Token](https://developer.fin.com/api-reference/authentication/issue-a-token) endpoint
x-refined-from:
- fin-openapi-original.yml
- fin-openapi.yml