### Full Working Example of Poof Payment Button Integration
Source: https://docs.poof.io/reference/poof-payment-button
This example combines the necessary HTML elements, the onclick event to trigger the payment modal, and the required JavaScript includes for a complete Poof payment button integration.
```html
open modal
```
--------------------------------
### Incoming Webhook Payload Example
Source: https://docs.poof.io/reference/webhook-validation
This is a full example of an incoming webhook payload, demonstrating the structure and data fields you can expect.
```json
{
"amount": "0.20",
"payment_method": "solana",
"currency": "usd",
"payment_id": "24675z8a",
"name": "Robert Robertson",
"email": "example@gmail.com",
"items": "Shoes",
"quantities": "1",
"date": "Dec 6, 05:23 AM 2022",
"note": "custom-form: custom_input example",
"paid": "yes",
"metadata": {"external": {"your_dictionary": "will be listed in external"},
"address": "5PEmyGfzdVuwGWVRcRAqZ9FyrNkxqSzNKGvk5Rtvh276", "due": "0.01413"},
"street_address": {"address": "1234 Main Street",
"city": "San Francisco",
"state": "CA",
"zipcode": "95150",
"country": "United States"},
"x-poof-signature": "0OgrjdRegx9OiF_H5EJm3w"
}
```
--------------------------------
### Send Transaction Request Example
Source: https://docs.poof.io/reference/sendtransaction
This is an example of a request body for sending a transaction. It specifies the amount, cryptocurrency, and recipient address.
```json
{
"amount": 0.2,
"crypto": "solana",
"address": "EREWUKBjJhxmFRFeh3gHjQTbbBxZGL1yiioiVG7wA6K6"
}
```
--------------------------------
### Webhook Signature Header Example
Source: https://docs.poof.io/reference/webhook-validation
The shared secret key is included in the payload within the 'x-poof-signature' dictionary key for validating incoming webhooks.
```json
{
"x-poof-signature": "your_shared_secret"
}
```
--------------------------------
### OpenAPI Definition for Create Invoice
Source: https://docs.poof.io/reference/createinvoice
This OpenAPI 3.0.0 definition specifies the structure and parameters for creating a fiat invoice via the Poof.io API. It includes details on the request body schema, required fields, and example payloads.
```json
{
"openapi": "3.0.0",
"info": {
"title": "Payment Gateways",
"contact": {},
"version": "1.0"
},
"servers": [
{
"url": "https://www.poof.io/api/v1",
"variables": {}
}
],
"paths": {
"/create_fiat_invoice": {
"post": {
"tags": [
"Misc"
],
"summary": "Create Invoice",
"operationId": "CreateInvoice",
"parameters": [
{
"name": "Authorization",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "DJ5PiPlB-OnpXUT4jAUn6A"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateInvoiceRequest"
},
{
"example": {
"amount": "15",
"payment": "cashapp",
"currency": "usd",
"redirect_url": "https://www.poof.io",
"success_url": "https://www.poof.io/success"
}
}
]
},
"example": {
"amount": "15",
"payment": "cashapp",
"currency": "usd",
"redirect_url": "https://www.poof.io",
"success_url": "https://www.poof.io/success"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
}
}
},
"components": {
"schemas": {
"CreateInvoiceRequest": {
"title": "CreateInvoiceRequest",
"required": [
"amount",
"payment",
"currency",
"redirect_url",
"success_url"
],
"type": "object",
"properties": {
"amount": {
"type": "string"
},
"payment": {
"type": "string"
},
"currency": {
"type": "string"
},
"redirect_url": {
"type": "string"
},
"success_url": {
"type": "string"
}
},
"example": {
"amount": "15",
"payment": "cashapp",
"currency": "usd",
"redirect_url": "https://www.poof.io",
"success_url": "https://www.poof.io/success"
}
}
}
},
"tags": [
{
"name": "Misc",
"description": ""
}
],
"x-readme": {
"explorer-enabled": true,
"proxy-enabled": true
}
}
```
--------------------------------
### Create a Wallet
Source: https://docs.poof.io/reference/crypto-wallet-api
This endpoint allows you to create a new cryptocurrency wallet. You need to provide the currency type in the request body and an authorization token.
```APIDOC
## POST /v2/create_wallet
### Description
Creates a new cryptocurrency wallet.
### Method
POST
### Endpoint
/v2/create_wallet
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **currency** (string) - Required - The type of cryptocurrency for which to create a wallet (e.g., "polygon").
### Request Example
```json
{
"currency": "polygon"
}
```
### Response
#### Success Response (200)
This endpoint returns a success status upon successful wallet creation. Specific response body details are not provided in the source documentation.
```
--------------------------------
### Create Checkout
Source: https://docs.poof.io/reference/poof-checkout
Initiates a new checkout session. This endpoint is used to set up a payment process for a user.
```APIDOC
## POST /checkout
### Description
Creates a new checkout session. This is the primary endpoint for initiating a payment process.
### Method
POST
### Endpoint
https://www.Poof.io/api/v1/checkout
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **username** (string) - Required - The username associated with the checkout.
- **amount** (string) - Required - The amount to be charged.
- **fields** (array[string]) - Optional - A list of fields to be collected (e.g., Email, Name).
- **disable_payments** (array[string]) - Optional - A list of payment methods to disable (e.g., paypal, bitcoin).
- **success_url** (string) - Optional - The URL to redirect to upon successful payment.
- **redirect** (string) - Optional - A general redirect URL.
- **product_id** (string) - Optional - The ID of the product being purchased.
- **instant_payment_notification** (string) - Optional - The URL for instant payment notifications.
- **product_quantity** (string) - Optional - The quantity of the product.
- **default** (object) - Optional - Default values for fields.
- **name** (string) - Optional - Default name.
- **email** (string) - Optional - Default email.
- **metadata** (object) - Optional - Additional metadata for the checkout.
### Request Example
```json
{
"username": "Poof",
"amount": "2",
"fields": [
"Email",
"Name"
],
"disable_payments": [
"paypal",
"bitcoin"
],
"success_url": "https://www.Poof.io/success",
"redirect": "https://www.Poof.io",
"product_id": "596293974748",
"instant_payment_notification": "https://external.site/webhook",
"product_quantity": "5",
"default": {
"name": "Bob",
"email": "example@gmail.com"
},
"metadata": {
"user": "Poof"
}
}
```
### Response
#### Success Response (200)
- The response body for a successful creation is empty.
```
--------------------------------
### Transaction Query OpenAPI Definition
Source: https://docs.poof.io/reference/transaction_query
This is the OpenAPI definition for the Transaction Query endpoint. It specifies the request body schema, including filters like 'payment' and 'name', and example search values.
```json
{
"openapi": "3.1.0",
"info": {
"title": "Webhooks Copy",
"contact": {},
"version": "1.0"
},
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"servers": [
{
"url": "https://www.poof.io/api/v2",
"variables": {}
}
],
"paths": {
"/transaction_query": {
"post": {
"tags": [
"Misc"
],
"summary": "Transaction Query",
"operationId": "TransactionQuery",
"parameters": [
{
"name": "Authorization",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"examples": [
"DJ5PiPlB-OnpXUT4jAUn6A"
]
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/TransactionQueryRequest"
},
{
"examples": [
{
"filter": "payment",
"search": "usdc"
}
]
}
],
"contentMediaType": "application/json"
},
"example": {
"filter": "payment",
"search": "usdc"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
},
"parameters": []
}
},
"components": {
"schemas": {
"TransactionQueryRequest": {
"title": "TransactionQueryRequest",
"required": [
"filter",
"search"
],
"type": "object",
"properties": {
"filter": {
"type": "string"
},
"search": {
"type": "string"
}
},
"examples": [
{
"filter": "payment",
"search": "usdc"
},
{
"filter": "name",
"search": "Bob"
}
]
}
}
},
"tags": [
{
"name": "Misc",
"description": ""
}
],
"x-readme": {
"explorer-enabled": true,
"proxy-enabled": true
}
}
```
--------------------------------
### Fetch Product
Source: https://docs.poof.io/reference/fetchproduct
This endpoint allows you to fetch product details by providing the product ID.
```APIDOC
## POST /fetch_product
### Description
Fetches product details using the product ID.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/fetch_product
### Request Body
- **product_id** (string) - Required - The unique identifier for the product.
### Request Example
{
"product_id": "e098921c-9db2-4796"
}
### Response
#### Success Response (200)
This endpoint returns a 200 OK status upon successful request. The response body schema is not explicitly defined in the provided OpenAPI definition, but it is expected to contain the fetched product details.
```
--------------------------------
### Open Poof Payment Modal with Link
Source: https://docs.poof.io/reference/poof-payment-button
Use this HTML structure to create a link that, when clicked, opens the Poof payment modal for a specific product.
```html
open modal
```
--------------------------------
### Fetch Smart Contracts
Source: https://docs.poof.io/reference/fetchsmartcontracts
This endpoint retrieves a list of smart contracts.
```APIDOC
## POST /contract_list
### Description
Fetches a list of smart contracts.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/contract_list
### Parameters
#### Header Parameters
- **Content-Type** (string) - Required - Must be "application/json"
- **Authorization** (string) - Required - Bearer token for authentication
### Request Example
```json
{
"example": "request body"
}
```
### Response
#### Success Response (200)
- **example** (object) - Description of the response body
```
--------------------------------
### Create Charge
Source: https://docs.poof.io/reference/createcharge
Initiates a fiat currency charge. Requires an Authorization header and a JSON request body containing charge details.
```APIDOC
## POST /create_fiat_charge
### Description
Creates a new charge for a fiat currency transaction.
### Method
POST
### Endpoint
https://www.poof.io/api/v1/create_fiat_charge
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **amount** (string) - Required - The amount to charge.
- **payment** (string) - Required - The payment method (e.g., "paypal").
- **currency** (string) - Required - The currency of the charge (e.g., "usd").
- **redirect_url** (string) - Required - The URL to redirect the user to.
- **success_url** (string) - Required - The URL to redirect to upon successful payment.
### Request Example
```json
{
"amount": "15",
"payment": "paypal",
"currency": "usd",
"redirect_url": "https://www.poof.io",
"success_url": "https://www.poof.io/success"
}
```
### Response
#### Success Response (200)
- The response body for a successful charge creation is not explicitly defined in the provided schema, but typically would contain details about the created charge or a redirect link.
```
--------------------------------
### Create Invoice
Source: https://docs.poof.io/reference/createinvoice
This endpoint allows you to create a new fiat invoice. You need to provide payment details, currency, and redirect URLs.
```APIDOC
## POST /create_fiat_invoice
### Description
Creates a new fiat invoice with specified amount, payment method, currency, and URLs.
### Method
POST
### Endpoint
https://www.poof.io/api/v1/create_fiat_invoice
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **amount** (string) - Required - The amount for the invoice.
- **payment** (string) - Required - The payment method (e.g., "cashapp").
- **currency** (string) - Required - The currency for the invoice (e.g., "usd").
- **redirect_url** (string) - Required - The URL to redirect to after invoice creation.
- **success_url** (string) - Required - The URL to redirect to upon successful payment.
### Request Example
```json
{
"amount": "15",
"payment": "cashapp",
"currency": "usd",
"redirect_url": "https://www.poof.io",
"success_url": "https://www.poof.io/success"
}
```
### Response
#### Success Response (200)
This endpoint returns a success response upon successful invoice creation. Specific response body details are not provided in the source.
```
--------------------------------
### Load Checkout Button Scripts and Initialize Payload
Source: https://docs.poof.io/reference/checkout-payment-button
Add these JavaScript lines to load the necessary Poof checkout scripts and initialize the payment payload. You can customize the username and amount.
```javascript
```
```javascript
```
```javascript
const payload = { "username": "Poof", "amount": "10" }
```
--------------------------------
### Send Transaction
Source: https://docs.poof.io/reference/sendtransaction
Initiates a cryptocurrency transaction to a specified address.
```APIDOC
## POST /payouts
### Description
Sends a cryptocurrency transaction to a specified address.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/payouts
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **amount** (number) - Required - The amount of cryptocurrency to send.
- **crypto** (string) - Required - The type of cryptocurrency (e.g., "solana").
- **address** (string) - Required - The recipient's cryptocurrency address.
### Request Example
```json
{
"amount": 0.2,
"crypto": "solana",
"address": "EREWUKBjJhxmFRFeh3gHjQTbbBxZGL1yiioiVG7wA6K6"
}
```
### Response
#### Success Response (200)
- The response body for a successful transaction is empty.
#### Response Example
(No specific example provided for success response body, typically an empty body or a confirmation ID if applicable)
```
--------------------------------
### OpenAPI Definition for Fetch Product
Source: https://docs.poof.io/reference/fetchproduct
This is the OpenAPI 3.0.0 definition for the Fetch Product API. It outlines the endpoint, request body schema, and responses.
```json
{
"openapi": "3.0.0",
"info": {
"title": "Products",
"contact": {},
"version": "1.0"
},
"servers": [
{
"url": "https://www.poof.io/api/v2",
"variables": {}
}
],
"paths": {
"/fetch_product": {
"post": {
"tags": [
"Misc"
],
"summary": "Fetch Product",
"operationId": "FetchProduct",
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/FetchProductRequest"
},
{
"example": {
"product_id": "e098921c-9db2-4796"
}
}
]
},
"example": {
"product_id": "e098921c-9db2-4796"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
}
}
},
"components": {
"schemas": {
"FetchProductRequest": {
"title": "FetchProductRequest",
"required": [
"product_id"
],
"type": "object",
"properties": {
"product_id": {
"type": "string"
}
},
"example": {
"product_id": "e098921c-9db2-4796"
}
}
}
},
"tags": [
{
"name": "Misc",
"description": ""
}
],
"x-readme": {
"explorer-enabled": true,
"proxy-enabled": true
}
}
```
--------------------------------
### Fetch All Transactions
Source: https://docs.poof.io/reference/fetch-transaction-list
Use this endpoint to retrieve all transactions associated with your account.
```APIDOC
## POST /fetch_transactions
### Description
Fetches all transactions.
### Method
POST
### Endpoint
https://www.poof.io/api/v1/fetch_transactions
### Parameters
#### Header Parameters
- **Authorization** (string) - Required -
### Request Example
```json
{
"example": ""
}
```
### Response
#### Success Response (200)
- **field1** (type) - Description
### Response Example
```json
{
"example": ""
}
```
```
--------------------------------
### Create Payment Link
Source: https://docs.poof.io/reference/createinvoice-1
Use this endpoint to generate a new payment link.
```APIDOC
## POST /create_invoice
### Description
Creates a payment link.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/create_invoice
### Parameters
#### Header Parameters
- **Authorization** (string) - Required -
### Request Body
- **amount** (string) - Required -
- **crypto** (string) - Required -
- **metadata** (object) - Required -
### Request Example
{
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
### Response
#### Success Response (200)
- (empty description)
```
--------------------------------
### OpenAPI Definition for Fetch Smart Contracts
Source: https://docs.poof.io/reference/fetchsmartcontracts
This OpenAPI 3.1.0 definition outlines the structure and parameters for the Smart Contracts API, including the POST request to /contract_list.
```json
{
"openapi": "3.1.0",
"info": {
"title": "Smart Contracts",
"contact": {},
"version": "1.0"
},
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"servers": [
{
"url": "https://www.poof.io/api/v2",
"variables": {}
}
],
"paths": {
"/contract_list": {
"post": {
"tags": [
"Misc"
],
"summary": "Fetch Smart Contracts",
"operationId": "FetchSmartContracts",
"parameters": [
{
"name": "Content-Type",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"const": "application/json",
"type": "string",
"examples": [
"application/json"
]
}
},
{
"name": "Authorization",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"examples": [
"DJ5PiPlB-OnpXUT4jAUn6A"
]
}
}
],
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
},
"parameters": []
}
},
"tags": [
{
"name": "Misc",
"description": ""
}
],
"x-readme": {
"explorer-enabled": true,
"proxy-enabled": true
}
}
```
--------------------------------
### Create Deposit Address
Source: https://docs.poof.io/reference/create_address
This endpoint creates a new deposit address for a specified cryptocurrency and amount.
```APIDOC
## POST /v2/create_charge
### Description
Creates a new deposit address for a specified cryptocurrency and amount.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/create_charge
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **amount** (string) - Required - The amount for the deposit.
- **crypto** (string) - Required - The cryptocurrency for which to create the address.
- **metadata** (object) - Optional - Additional metadata for the transaction.
- **example** (string) - Required - An example field for metadata.
### Request Example
```json
{
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
```
### Response
#### Success Response (200)
- The response body for a successful creation is not explicitly defined in the OpenAPI spec, but typically would contain details of the created address.
```
--------------------------------
### OpenAPI Definition for Crypto APIs
Source: https://docs.poof.io/reference/crypto-wallet-api
This is the OpenAPI 3.0.0 definition for the Crypto APIs, detailing endpoints like wallet creation.
```json
{
"openapi": "3.0.0",
"info": {
"title": "Crypto APIs",
"contact": {},
"version": "1.0"
},
"servers": [
{
"url": "https://www.poof.io/api",
"variables": {}
}
],
"paths": {
"/v2/create_wallet": {
"post": {
"tags": [
"Misc"
],
"summary": "Create a Wallet",
"operationId": "CreateaWallet",
"parameters": [
{
"name": "Authorization",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"example": "DJ5PiPlB-OnpXUT4jAUn6A"
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateaWalletRequest"
},
{
"example": {
"currency": "polygon"
}
}
]
},
"example": {
"currency": "polygon"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
}
}
},
"components": {
"schemas": {
"CreateaWalletRequest": {
"title": "CreateaWalletRequest",
"required": [
"currency"
],
"type": "object",
"properties": {
"currency": {
"type": "string"
}
},
"example": {
"currency": "polygon"
}
}
}
},
"security": [],
"tags": [
{
"name": "Misc",
"description": ""
}
],
"x-readme": {
"explorer-enabled": true,
"proxy-enabled": true
}
}
```
--------------------------------
### Fetch Price
Source: https://docs.poof.io/reference/fetchprice
This endpoint allows you to fetch the current price of a cryptocurrency by providing its symbol.
```APIDOC
## POST /price
### Description
Fetches the current price of a specified cryptocurrency.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/price
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **crypto** (string) - Required - The symbol of the cryptocurrency for which to fetch the price.
### Request Example
```json
{
"crypto": "bnb"
}
```
### Response
#### Success Response (200)
This endpoint returns a 200 OK status upon successful request. The response body is not explicitly defined in the OpenAPI spec provided, but typically would contain the price information.
```
--------------------------------
### Create ACH Debit
Source: https://docs.poof.io/reference/ach-debit-api
Initiates an ACH debit transaction to pull funds from a specified bank account. This endpoint is for registered US businesses and requires authorization. Ensure you have obtained access by contacting support@poof.io.
```APIDOC
## POST /api/v2/ach_debit
### Description
Initiates an ACH debit transaction to pull funds from a specified bank account.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/ach_debit
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication
#### Request Body
- **amount** (number) - Required - The amount to debit from the account (in USD).
- **account_number** (string) - Required - The account number to debit from.
- **routing_number** (string) - Required - The routing number of the bank associated with the account.
- **business_name** (string) - Optional - The name of the business.
- **first_name** (string) - Optional - The first name of the individual (if not a business).
- **last_name** (string) - Optional - The last name of the individual (if not a business).
- **statement_descriptor** (string) - Optional - The statement descriptor for the transaction (in USD).
- **metadata** (string) - Optional - Additional metadata for the transaction.
### Request Example
```json
{
"amount": 100.50,
"account_number": "1234567890",
"routing_number": "012345678",
"business_name": "Example Corp",
"statement_descriptor": "POOF PAYMENT",
"metadata": "customer_id_123"
}
```
### Response
#### Success Response (200)
- **(empty object)** - Indicates a successful ACH debit initiation.
```
--------------------------------
### Fetch Transaction
Source: https://docs.poof.io/reference/fetch-transaction
Use this endpoint to retrieve transaction information.
```APIDOC
## POST /transaction
### Description
Fetches transaction details.
### Method
POST
### Endpoint
https://www.poof.io/api/v1/transaction
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **transaction** (string) - Required - The transaction identifier.
### Request Example
```json
{
"transaction": "a35c1d8e"
}
```
### Response
#### Success Response (200)
- No specific fields are detailed in the source, but a successful response is indicated.
```
--------------------------------
### Receive Notifications
Source: https://docs.poof.io/reference/notifications-api
This endpoint allows you to register a URL to receive notifications.
```APIDOC
## POST /create_webhook
### Description
Allows you to register a URL to receive notifications.
### Method
POST
### Endpoint
https://www.poof.io/api/v1/create_webhook
### Parameters
#### Header Parameters
- **Authorization** (string) - Required -
#### Request Body
- **url** (string) - Required - The URL to receive notifications.
### Request Example
{
"url": "https://www.poof.io/example_route"
}
### Response
#### Success Response (200)
- (No specific fields documented)
#### Response Example
(No example provided)
```
--------------------------------
### Prefill Customer Information in Payload
Source: https://docs.poof.io/reference/checkout-payment-button
Modify the payload to prefill customer information, such as their name, from your website.
```javascript
const payload = { "username": "Poof", "amount": "10",
"default": {"name": "my_website_username"}
```
--------------------------------
### Check Balance
Source: https://docs.poof.io/reference/check_balance
This endpoint allows you to check the balance of a specific cryptocurrency.
```APIDOC
## POST /balance
### Description
Allows you to check the balance of a specific cryptocurrency.
### Method
POST
### Endpoint
https://www.poof.io/api/v2/balance
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **crypto** (string) - Required - The cryptocurrency to check the balance for (e.g., "bitcoin").
### Request Example
```json
{
"crypto": "bitcoin"
}
```
### Response
#### Success Response (200)
This endpoint returns a 200 OK status upon successful request. The specific balance details are not detailed in this documentation.
#### Response Example
(No specific response body example provided in the source documentation.)
```
--------------------------------
### OpenAPI Definition for Create Deposit Address
Source: https://docs.poof.io/reference/create_address
This OpenAPI 3.1.0 definition specifies the endpoint for creating a deposit address. It details the request parameters, including authorization headers and the request body schema, as well as the response structure.
```json
{
"openapi": "3.1.0",
"info": {
"title": "Crypto APIs",
"contact": {},
"version": "1.0"
},
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"servers": [
{
"url": "https://www.poof.io/api",
"variables": {}
}
],
"paths": {
"/v2/create_charge": {
"post": {
"tags": [
"Misc"
],
"summary": "Create Deposit Address",
"operationId": "CreateDepositAddress",
"parameters": [
{
"name": "Authorization",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"examples": [
"DJ5PiPlB-OnpXUT4jAUn6A"
]
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateDepositAddressRequest"
},
{
"examples": [
{
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
]
}
],
"contentMediaType": "application/json"
},
"example": {
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
}
},
"required": false
},
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
},
"parameters": []
}
},
"components": {
"schemas": {
"CreateDepositAddressRequest": {
"title": "CreateDepositAddressRequest",
"required": [
"amount",
"crypto"
],
"type": "object",
"properties": {
"amount": {
"type": "string"
},
"crypto": {
"type": "string"
},
"metadata": {
"allOf": [
{
"$ref": "#/components/schemas/Metadata"
},
{}
]
}
},
"examples": [
{
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
]
},
"Metadata": {
"title": "Metadata",
"required": [
"example"
],
"type": "object",
"properties": {
"example": {
"type": "string"
}
},
"examples": [
{
"example": "dictionary"
}
]
}
}
},
"security": [],
"tags": [
{
"name": "Misc",
"description": ""
}
],
"x-readme": {
"explorer-enabled": true,
"proxy-enabled": true
}
}
```
--------------------------------
### Fetch Gas Price
Source: https://docs.poof.io/reference/fetchgasprice
This endpoint allows you to fetch the current gas price for a given cryptocurrency. It requires an authorization header and a JSON request body specifying the cryptocurrency.
```APIDOC
## POST /gas_price
### Description
Fetches the current gas price for a specified cryptocurrency.
### Method
POST
### Endpoint
/gas_price
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **crypto** (string) - Required - The cryptocurrency for which to fetch the gas price (e.g., "usdc").
### Request Example
```json
{
"crypto": "usdc"
}
```
### Response
#### Success Response (200)
- The response body for a successful request is not explicitly defined in the provided schema, but it is expected to contain gas price information.
```
--------------------------------
### Standard API Request Headers
Source: https://docs.poof.io/reference/poof-api
These are the standard headers required for making requests to the Poof API. The Content-Type should be application/json, and Authorization should include your API key.
```Text
headers={"Content-Type": "application/json", "Authorization": your_key}
```
--------------------------------
### OpenAPI Definition for Create Payment Link
Source: https://docs.poof.io/reference/createinvoice-1
This is the full OpenAPI 3.1.0 definition for the create_invoice endpoint. It specifies the request method, parameters, request body schema, and responses.
```json
{
"openapi": "3.1.0",
"info": {
"title": "Webhooks Copy",
"contact": {},
"version": "1.0"
},
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"servers": [
{
"url": "https://www.poof.io/api/v2",
"variables": {}
}
],
"paths": {
"/create_invoice": {
"post": {
"tags": [
"Misc"
],
"summary": "Create Payment Link",
"operationId": "CreateInvoice",
"parameters": [
{
"name": "Authorization",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"examples": [
"DJ5PiPlB-OnpXUT4jAUn6A"
]
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateInvoiceRequest"
},
{
"examples": [
{
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
]
}
],
"contentMediaType": "application/json"
},
"example": {
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
},
"parameters": []
}
},
"components": {
"schemas": {
"CreateInvoiceRequest": {
"title": "CreateInvoiceRequest",
"required": [
"amount",
"crypto",
"metadata"
],
"type": "object",
"properties": {
"amount": {
"type": "string"
},
"crypto": {
"type": "string"
},
"metadata": {
"allOf": [
{
"$ref": "#/components/schemas/Metadata"
},
{}
]
}
},
"examples": [
{
"amount": "15",
"crypto": "ethereum",
"metadata": {
"example": "dictionary"
}
}
]
},
"Metadata": {
"title": "Metadata",
"required": [
"example"
],
"type": "object",
"properties": {
"example": {
"type": "string"
}
},
"examples": [
{
"example": "dictionary"
}
]
}
}
},
"tags": [
{
"name": "Misc",
"description": ""
}
],
"x-readme": {
"explorer-enabled": true,
"proxy-enabled": true
}
}
```
--------------------------------
### Poof Checkout OpenAPI Definition
Source: https://docs.poof.io/reference/poof-checkout
The OpenAPI 3.1.0 definition for the Poof Checkout API. This specifies the structure and parameters for creating a checkout session.
```json
{
"openapi": "3.1.0",
"info": {
"title": "Checkout",
"contact": {},
"version": "1.0"
},
"jsonSchemaDialect": "https://json-schema.org/draft/2020-12/schema",
"servers": [
{
"url": "https://www.Poof.io/api/v1",
"variables": {}
}
],
"paths": {
"/checkout": {
"post": {
"tags": [
"Misc"
],
"summary": "Create Checkout",
"operationId": "CreateCheckout",
"parameters": [
{
"name": "Authorization",
"in": "header",
"description": "",
"required": true,
"style": "simple",
"schema": {
"type": "string",
"examples": [
"DJ5PiPlB-OnpXUT4jAUn6A"
]
}
}
],
"requestBody": {
"description": "",
"content": {
"application/json": {
"schema": {
"allOf": [
{
"$ref": "#/components/schemas/CreateCheckoutRequest"
},
{
"examples": [
{
"username": "Poof",
"amount": "2",
"fields": [
"Email",
"Name"
],
"disable_payments": [
"paypal",
"bitcoin"
],
"success_url": "https://www.Poof.io/success",
"redirect": "https://www.Poof.io",
"product_id": "596293974748",
"instant_payment_notification": "https://external.site/webhook",
"product_quantity": "5",
"default": {
"name": "Bob",
"email": "example@gmail.com"
},
"metadata": {
"user": "Poof"
}
}
]
}
],
"contentMediaType": "application/json"
},
"example": {
"username": "Poof",
"amount": "2",
"fields": [
"Email",
"Name"
],
"disable_payments": [
"paypal",
"bitcoin"
],
"success_url": "https://www.Poof.io/success",
"redirect": "https://www.Poof.io",
"product_id": "596293974748",
"instant_payment_notification": "https://external.site/webhook",
"product_quantity": "5",
"default": {
"name": "Bob",
"email": "example@gmail.com"
},
"metadata": {
"user": "Poof"
}
}
}
},
"required": true
},
"responses": {
"200": {
"description": "",
"headers": {}
}
},
"deprecated": false,
"security": []
},
"parameters": []
}
},
"components": {
"schemas": {
"CreateCheckoutRequest": {
"title": "CreateCheckoutRequest",
"required": [
"username",
"amount"
],
"type": "object",
"properties": {
"username": {
"type": "string"
},
"amount": {
"type": "string"
},
"fields": {
"type": "array",
"items": {
"type": "string"
},
"description": ""
},
"disable_payments": {
"type": "array",
"items": {
"type": "string"
},
"description": ""
},
"success_url": {
"type": "string"
},
"redirect": {
"type": "string"
},
"product_id": {
"type": "string"
},
"instant_payment_notification": {
"type": "string"
},
"product_quantity": {
"type": "string"
},
"default": {
"allOf": [
{
"$ref": "#/components/schemas/Default"
},
{}
]
},
"metadata": {
"allOf": [
{
"$ref": "#/components/schemas/Metadata"
},
{}
]
}
},
"examples": [
{
"username": "Poof",
"amount": "2",
"fields": [
"Email",
"Name"
]
}
]
}
}
}
}
```
--------------------------------
### Transaction Query Endpoint
Source: https://docs.poof.io/reference/transaction_query
This endpoint allows you to query transactions by specifying a filter and a search term. The available filters are id, email, name, amount, payment, crypto_address, and metadata.
```APIDOC
## POST /transaction_query
### Description
Queries transactions based on a specified filter and search term.
### Method
POST
### Endpoint
/transaction_query
### Parameters
#### Header Parameters
- **Authorization** (string) - Required - API key for authentication.
#### Request Body
- **filter** (string) - Required - The field to filter transactions by (e.g., "payment", "name").
- **search** (string) - Required - The value to search for within the specified filter.
### Request Example
```json
{
"filter": "payment",
"search": "usdc"
}
```
### Response
#### Success Response (200)
- **Dictionary** - A dictionary containing transactions that match the search criteria.
```