Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| PADDLE_API_KEY | Yes | Your Paddle API key from Paddle > Developer tools > Authentication | |
| PADDLE_ENVIRONMENT | Yes | The Paddle environment to use (sandbox or production) |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_products | This tool will list products in the account's catalog. Use the maximum perPage by default (200) to ensure comprehensive results. Filter products by id, status, taxCategory, and type as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Amounts are in the smallest currency unit (e.g., cents). Use the include parameter to include related entities in the response:
|
| create_product | This tool will create a new product in Paddle. Product entities describe the items that customers can purchase. Products work with prices, which describe how much a product costs and how often it's billed. For imageUrl, images must be hosted on an HTTPS server that's publicly accessible. Paddle doesn't upload product images to a CDN. It's recommended to use square images (1:1 ratio). When selecting a taxCategory, choose the one that best describes the product:
The tax category affects how taxes are calculated in different jurisdictions. Choose carefully as it impacts customers' tax rates. When using the standard tax category, remind the user to review the tax category in the Paddle dashboard. Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new product entity. Once a product has been created, relate it to a price. |
| get_product | This tool will retrieve a product from Paddle by its ID. Use the include parameter to include related entities in the response:
|
| list_prices | This tool will list prices in the account's catalog. Use the maximum perPage by default (200) to ensure comprehensive results. Filter prices by id, productId, status, recurring, and type as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Amounts are in the smallest currency unit (e.g., cents). Use the include parameter to include related entities in the response:
|
| create_price | This tool will create a new price in Paddle. Prices describe how to charge for products. Always include a productId in the request to relate the price to a product. If the quantity object is omitted, Paddle automatically sets a minimum of 1 and a maximum of 100. This means the most units that a customer can buy is 100. Set a quantity to offer a different amount. When selecting type, choose the one that best describes the use case:
When selecting taxMode, choose the one that best describes how the tax should be calculated for the price:
When using unitPriceOverrides:
Example unitPriceOverrides structure: [ { "countryCodes": ["GB"], "unitPrice": { "amount": "8500", "currencyCode": "GBP" } }, { "countryCodes": ["IE"], "unitPrice": { "amount": "9500", "currencyCode": "EUR" } }, { "countryCodes": ["GR"], "unitPrice": { "amount": "6500", "currencyCode": "EUR" } }, { "countryCodes": ["IN"], "unitPrice": { "amount": "30000", "currencyCode": "INR" } }, { "countryCodes": ["CN"], "unitPrice": { "amount": "20000", "currencyCode": "CNY" } } ] Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new price entity. |
| get_price | This tool will retrieve a price from Paddle by its ID. Use the include parameter to include related entities in the response:
|
| list_discounts | This tool will list discounts in the account's catalog. Use the maximum perPage by default (200) to ensure comprehensive results. Filter discounts by code, id, status, and mode as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Amounts are in the smallest currency unit (e.g., cents). |
| create_discount | This tool will create a new discount in Paddle. Discounts reduce a transaction total. They're sometimes called coupons or promo codes. Use discount codes to let customers apply discounts themselves at checkout, or apply discounts manually to transactions as part of the sales process. Discounts can be added to a discount group to organize them. Only one discount group can be added at a time. List discounts by discount groups with the list_discount_groups tool to see which discounts are in which groups. When selecting type, choose the one that best describes how to apply the discount to the total:
When selecting mode, choose the one that best describes the use case:
Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new discount entity. Discounts can be applied to transactions, subscriptions, or passed to checkout through Paddle.js. |
| get_discount | This tool will retrieve a discount from Paddle by its ID. |
| list_discount_groups | This tool will list discount groups in the account's catalog. Use the maximum perPage by default (200) to ensure comprehensive results. Filter discount groups by id as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. |
| create_discount_group | This tool will create a new discount group in Paddle. Discount groups are used to organize and manage related discounts under a group name. Create one when managing multiple discounts together, like for a campaign, promotion, or team. Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new discount group entity. |
| get_discount_group | This tool will retrieve a discount group from Paddle by its ID. |
| list_customers | This tool will list customers in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter customers by email, id, search (fuzzy search on the customer's name), and status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. |
| create_customer | This tool will create a new customer in Paddle. Customer entities hold information about the people and businesses that make purchases. Customers have two sub-entities:
Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new customer entity. |
| get_customer | This tool will retrieve a customer from Paddle by its ID. |
| list_addresses | This tool will list addresses for a customer in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter addresses by id, search (fuzzy search on the address's street, city, state, postalCode, or country), and status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. |
| create_address | This tool will create a new address for a customer in Paddle. Address entities hold billing address information for a customer. Customers must have an address to make a purchase. A transaction can be created without an address, but it can't go past a status of draft until an address is added. To make buying as frictionless as possible, Paddle only requires a country. For tax calculation, fraud prevention, and compliance purposes, postalCode is required when creating addresses for some countries, like ZIP codes in the USA and postcodes in the UK. Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new address entity. |
| get_address | This tool will retrieve an address for a customer from Paddle using its ID and related customer ID. |
| list_businesses | This tool will list businesses for a customer in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter businesses by id, search (fuzzy search on the business's name or tax or VAT number), and status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. |
| create_business | This tool will create a new business for a customer in Paddle. Business entities hold business information for a customer when working with a business rather than an individual. Customers do not need to have a business to make a purchase, but should if working with a business. Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new business entity. |
| get_business | This tool will retrieve a business for a customer from Paddle using its ID and related customer ID. |
| list_transactions | This tool will list transactions in Paddle. Use the maximum perPage by default (30) to ensure comprehensive results. Filter transactions by billedAt, collectionMode, createdAt, customerId, id, invoiceNumber, origin, status, subscriptionId, and updatedAt as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Amounts are in the smallest currency unit (e.g., cents). Use the include parameter to include related entities in the response:
Transactions have a collectionMode that determines how Paddle tries to collect for payment:
Transactions have a status that determines the current state of the transaction:
|
| create_transaction | This tool will create a new transaction in Paddle. Don't use this tool without checking with the user first. Avoid using before gaining explicit approval. The collectionMode against a transaction determines how Paddle tries to collect for payment:
Transactions have a status. Set the status or omit it to have Paddle set it. It's only recommended to set the status manually if working with manually-collected transactions as part of an invoicing workflow. Options are:
When status is omitted, transactions are initially created with the status of draft or ready:
When a transaction has items which are recurring, and the transaction has a status of billed when manually-collected or completed when automatically-collected, Paddle automatically creates a related subscription for the items on the transaction. Use the returned subscriptionId to get the subscription entity. Use the include parameter to include related entities in the response:
Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. Consider using the preview_transaction_create tool to preview and confirm the transaction before creating it. If successful, the response includes a copy of the new transaction entity. |
| get_transaction | This tool will retrieve a transaction from Paddle by its ID. Use the include parameter to include related entities in the response:
Transactions have a collectionMode that determines how Paddle tries to collect for payment:
Transactions have a status that determines the current state of the transaction:
|
| preview_prices | This tool will preview price calculations for one or more prices. Consider using the preview_transaction_create tool for more advanced and accurate pricing calculations or for all manually-collected invoiced transactions. Providing location information when previewing prices allows Paddle to calculate tax or automatically localize prices. Provide one of the following:
Each line item includes formattedUnitTotals and formattedTotals objects that return totals formatted for the country or region being worked with, including the currency symbol. If successful, the response includes the data sent with a details object that includes totals for the supplied prices. |
| preview_transaction_create | This tool will preview a transaction without creating a transaction entity. Consider using the preview_prices tool for simpler pricing calculations where payment is often taken through checkout. Providing location information when previewing a transaction allows Paddle to calculate tax or automatically localize prices. Provide one of the following:
Exclude items from the total calculation using the includeInTotals boolean. By default, recurring items with trials are considered to have a zero charge when previewing. Set ignoreTrials to true to ignore trial periods against prices for transaction preview calculations. Transaction previews don't create transactions, so no id is returned. If successful, the response includes the data sent with a details object that includes totals for the supplied prices. |
| get_transaction_invoice | This tool will retrieve a link to an invoice PDF for a transaction from Paddle. Invoice PDFs are available for both automatically and manually-collected transactions:
Invoice PDFs aren't available for zero-value transactions. The link returned isn't a permanent link. It expires after an hour. |
| list_adjustments | This tool will list adjustments in Paddle. Use the maximum perPage by default (50) to ensure comprehensive results. Filter adjustments by action, customerId, status, subscriptionId, transactionId, and id as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Amounts are in the smallest currency unit (e.g., cents). Adjustments have an action that determines how the adjustment impacts the related transaction:
|
| create_adjustment | This tool will create an adjustment to refund or credit all or part of a transaction and its items. Billed transactions are considered financial records for tax and legal purposes, so they can't be changed. Adjustments record actions that impact revenue for a transaction after it's been billed. Don't use this tool without checking with the user first. Avoid using before gaining explicit approval. The transaction ID and the IDs of any transaction items (details.lineItems[].id) are required to create a refund or credit. An adjustment can have an action of credit or refund:
Most refunds for live accounts are created with the status of pending_approval until reviewed by Paddle, but some are automatically approved. For sandbox accounts, Paddle automatically approves refunds every ten minutes. Other action types (chargeback, chargeback_reverse, chargeback_warning, chargeback_warning_reverse, credit_reverse) are automatically created by Paddle and can't be set manually. Adjustments can apply to some or all items on a transaction by defining the type:
When selecting taxMode, choose the one that best describes how the tax should be calculated for the adjustment:
Creating an adjustment for a transaction that has a refund that's pending approval isn't possible. Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the new adjustment entity. |
| get_adjustment_credit_note | This tool will retrieve a link to a credit note PDF for an adjustment from Paddle. Credit note PDFs are created for refunds and credits as a record of an adjustment. Return this if record is needed to be given to the customer immediately after the adjustment is created. The link returned is not a permanent link. It expires after an hour. |
| list_credit_balances | This tool will list credit balances in each currency for a customer. Credit balances are created automatically by Paddle when a customer takes an action that results in Paddle creating a credit for a customer, like making prorated changes to a subscription. These are transaction credits, not promotional credits like from discounts. Each balance has three totals:
Credit is added to the available total initially. When used, it moves to the used total. The reserved total is used when a credit balance is applied to a transaction that's marked as billed, like when working with an issued invoice. It's not available for other transactions at this point, but isn't considered used until the transaction is completed. If a billed transaction is canceled, any reserved credit moves back to available. A credit balance can only be used for transactions in the same currency. Adding to a credit balance directly isn't possible. Create a credit adjustment with the create_adjustment tool to reduce the amount due to pay for a transaction instead. Filter credit balances by currencyCode as needed. Amounts are in the smallest currency unit (e.g., cents). The response isn't paginated. An empty array is returned if a customer has no credit balances. |
| get_subscription | This tool will retrieve a subscription from Paddle by its ID. Use the include parameter to include related entities in the response:
|
| list_subscriptions | This tool will list subscriptions in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter subscriptions by addressId, collectionMode, customerId, id, priceId, scheduledChangeAction, and status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Amounts are in the smallest currency unit (e.g., cents). |
| preview_subscription_update | This tool will preview an update for a subscription without applying those changes. It's best practice to preview every time before updating the subscription to confirm the changes are as expected, especially when making updates to items, billing periods, and anything affecting proration. The updateSummary object contains details of prorated credits and charges created, along with the overall result of the update. If successful, the response includes immediateTransaction, nextTransaction, and recurringTransactionDetails to see expected transactions for the changes. |
| create_subscription_charge | This tool will create a one-time charge for a subscription in Paddle. Use to bill non-recurring items to a subscription. Non-recurring items are price entities where the billingCycle is null. Don't use this tool without checking with the user first. Avoid using before gaining explicit approval. When selecting effectiveFrom, choose the one that best describes when the one-time charges should be billed:
When selecting onPaymentFailure, choose the one that best describes how Paddle should handle subscription updates when payment fails during one-time charges:
Once created, to get details of a one-time charge:
When an update results in an immediate charge, responses may take longer than usual while a payment attempt is processed. Ensure you have all the information needed before making the call. Don't fabricate, imagine, or infer details and parameter values unless explicitly asked to. If anything is ambiguous, unknown, or unclear, ask the user for clarification or details before you proceed. If successful, the response includes a copy of the updated subscription entity. However, one-time charges aren't held against the subscription entity, so the charges billed aren't returned in the response. |
| preview_subscription_charge | This tool will preview creating a one-time charge for a subscription without billing that charge, typically used for previewing calculations before making changes to a subscription. One-time charges are non-recurring items. These are price entities where the billingCycle is null. If successful, the response includes immediateTransaction, nextTransaction, and recurringTransactionDetails to see expected transactions for the changes. |
| list_saved_payment_methods | This tool will list payment methods for a customer in Paddle. These are payment methods saved by the customer at checkout to be presented for future purchases. They aren't payment methods stored for transactions related to a recurring subscription. View a customers most recently used payment method for purchases or subscriptions by listing transactions (with the list_transactions tool) with a filter of customerId or subscriptionId, and looking at the returned payments[].methodDetails object. Use the maximum perPage by default (200) to ensure comprehensive results. Filter payment methods by addressId and supportsCheckout as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. |
| get_saved_payment_method | This tool will retrieve a payment method for a customer from Paddle using its ID and related customer ID. These are payment methods saved by the customer at checkout to be presented for future purchases. They aren't payment methods stored for transactions related to a recurring subscription. View a customers most recently used payment method for purchases or subscriptions by listing transactions (with the list_transactions tool) with a filter of customerId or subscriptionId, and looking at the returned payments[].methodDetails object. |
| create_customer_portal_session | This tool will create a customer portal session for a customer in Paddle. The customer portal is a secure, Paddle-hosted site that allows customers and authorized individuals to:
Don't use this tool without checking with the user first. Avoid using before gaining explicit approval. Authenticated links are returned which automatically sign in the customer. Ensure those creating a customer portal session are authorized to access the customer portal.
Provide subscriptionIds to return urls.subscriptions[] to manage one or more subscriptions directly:
If subscriptions are paused or canceled, links open the overview page for a subscription. If successful, the response includes a copy of the new customer portal session entity with the urls to open up the customer portal for access. Customer portal sessions are temporary and shouldn't be cached. |
| list_notification_settings | This tool will list notification settings in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter notification settings by active and trafficSource as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. The endpointSecretKey is returned for webhook signature verification, but is a secure value and should never be shared, never be made publicly-accessible, and should only be stored securely. |
| create_notification_setting | This tool will create a new notification setting (notification destination) in Paddle. Create notification destinations to get notifications, like webhooks, for events that happen in Paddle. Paddle recommends handling the storage and provisioning of access after purchase and subscription using webhooks. The type describes how and where the event should be sent:
The destination URL must be publicly accessible. localhost is not a valid address. For local development, use a tunnelling service like ngrok or Hookdeck to generate a public URL. Pass an array of event type names to subscribedEvents to say which events should be subscribed to. Paddle responds with the full event type object for each event type. Provide the trafficSource to define if the notification destination should be sent real events and/or simulated test events:
Create notification destinations as many as needed, but only 10 can be active as per the active boolean parameter. Prompt users to toggle in the dashboard. Alternatively, use the list_notification_setting tool, verify which should be active, and use the update_notification_setting tool to toggle the boolean accordingly. If successful, the response includes a copy of the new notification setting entity. The endpointSecretKey is returned for webhook signature verification, but is a secure value and should never be shared, never be made publicly-accessible, and should only be stored securely. |
| get_notification_setting | This tool will retrieve a notification setting (notification destination) from Paddle by its ID. The endpointSecretKey is returned for webhook signature verification, but is a secure value and should never be shared, never be made publicly-accessible, and should only be stored securely. |
| list_events | This tool will list events in Paddle. When something notable occurs, Paddle creates an event entity with information about what happened. Events are created for actions regardless of how they happened and regardless of whether a notification setting is subscribed to be notified by Paddle. Some actions might create multiple events. For example, resuming a subscription typically results in a subscription.resumed, transaction.created, and other transaction events being created. Use the maximum perPage by default (200) to ensure comprehensive results. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. |
| list_notifications | This tool will list notifications in Paddle. When an event that has a notification destination occurs, Paddle creates a notification entity with information about the notification. A single event might create multiple notifications. This is common when working with multiple notification destinations that are subscribed to the same events. When an event occurs, Paddle creates a separate notification entity for each notification destination. They'll share the same eventId, but have different notificationId. Notifications older than 90 days aren't retained and won't be returned. Use the maximum perPage by default (200) to ensure comprehensive results. Filter notifications by notificationSettingId, search (fuzzy search on the event's type or id), status, filter (pass a transaction, customer, or subscription ID), to, and from as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Check the following details to understand the success or failure of the notification delivery according to Paddle and debug issues:
|
| get_notification | This tool will retrieve a notification from Paddle by its ID. When an event that has a notification destination occurs, Paddle creates a notification entity with information about the notification. Notifications older than 90 days aren't retained. If trying to get a notification that's no longer retained, Paddle returns an error. Check the following details to understand the success or failure of the notification according to Paddle and debug issues:
|
| list_notification_logs | This tool will list notification logs in Paddle. When Paddle sends a notification to a webhook endpoint or email address, it records information about each delivery attempt as a log against the notification. Every delivered notification has at least one log with information about the response that Paddle received on delivery. Where a notification isn't delivered successfully, Paddle tries to deliver the notification again. Each delivery attempt is logged against a notification. Use the maximum perPage by default (200) to ensure comprehensive results. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Check the following details to understand the success or failure of each delivery attempt and debug issues:
|
| replay_notification | This tool will resend a delivered or failed notification, like a webhook notification, using its ID. Don't use this tool without checking with the user first. Avoid using before gaining explicit approval. Paddle creates a new notification entity for the replay, related to the same eventId. The response includes the new notificationId of the created notification. Notifications older than 90 days aren't retained. If trying to replay a notification that's no longer retained, Paddle returns an error. Only notifications with the origin of event can be replayed. Replaying a notification created for a replay isn't possible. Check the following details to understand the success or failure of the notification according to Paddle and debug issues:
|
| list_simulations | This tool will list simulations in Paddle. These are the configurations for simulations, as opposed to the simulation runs which are used to send the events to the notification destination. Use the maximum perPage by default (200) to ensure comprehensive results. Filter simulations by notificationSettingId, id, and status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. |
| create_simulation | This tool will create a new simulation for a notification setting (notification destination) in Paddle. Test webhooks can be sent through the webhook simulator in the dashboard or via the API by creating and running a simulation. Simulations configure which test webhooks are sent by Paddle when run. They can simulate the sending of single events or scenarios which send multiple events, like subscription renewals or cancellations. This is ideal for testing webhook implementations and validating data before sending real events. If implementing webhooks or making changes to an implementation, create and run a simulation prior to sending real events. For scenario simulations (type of subscription_creation, subscription_renewal, subscription_pause, subscription_resume, subscription_cancellation), config objects can be provided. The config object contains a key matching the scenario type (e.g., for type "subscription_creation", use config.subscription_creation). This nested object can contain entities and options fields to control which webhooks are sent and populate payloads with real entity data. If provided, the config object must match the scenario type selected. Option values for scenario simulations: subscriptionCancellation and subscriptionPause:
subscriptionResume and subscriptionRenewal:
subscriptionCreation:
If config.entities are not provided, simulated webhook payloads are populated with static demo examples. If successful, the response includes a copy of the new simulation entity. The simulation can then be run to send the events to the notification destination with the create_simulation_run tool. |
| get_simulation | This tool will retrieve a simulation from Paddle by its ID. This is for the configuration of a simulation, as opposed to the simulation run which is used to send the events to the notification destination. |
| list_simulation_runs | This tool will list simulation runs in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter simulationRuns by id as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Use the include parameter to include related entities in the response:
|
| create_simulation_run | This tool will create a new simulation run for a simulation in Paddle. Test webhooks can be sent through the webhook simulator in the dashboard or via the API by creating and running a simulation. Simulation runs are used to send the test webhook events to the notification destination once the simulation has been configured. If successful, the response includes a copy of the new simulation run entity. All events sent by the simulation run can be seen using the list_simulations_events tool or including the 'events' parameter in the response when fetching the individual simulation run using the get_simulation_run tool. |
| get_simulation_run | This tool will retrieve a simulation run from Paddle by its ID. Use the include parameter to include related entities in the response:
|
| list_simulation_run_events | This tool will list simulation run events in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter simulationRunEvents by id as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Check the following details to understand the success or failure of the event according to Paddle and debug issues:
If the destination URL is using a tunnel or proxy service, the response may be from the tunnel or proxy service, not the original server. Don't assume success or failure based on the status and response alone. Check the logs of the tunnel/proxy service and the destination server. |
| get_simulation_run_event | This tool will retrieve an event sent by a simulation run from Paddle by its ID. Check the following details to understand the success or failure of the event according to Paddle and debug issues:
If the destination URL is using a tunnel or proxy service, the response may be from the tunnel or proxy service, not the original server. Don't assume success or failure based on the status and response alone. Check the logs of the tunnel/proxy service and the destination server. |
| replay_simulation_run_event | This tool will resend an event sent by a simulation run from Paddle using its ID. This is useful to retest the sending of an individual event within a simulation run rather than creating a new simulation run and sending all events again. Paddle creates a new simulation run event entity for the replay, related to the same simulation run. If successful, the response includes the new simulation run event entity. Check the following details to understand the success or failure of the event according to Paddle and debug issues:
|
| list_reports | This tool will list reports in Paddle. Use the maximum perPage by default (200) to ensure comprehensive results. Filter reports by status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. Amounts are in the smallest currency unit (e.g., cents). |
| create_report | This tool will create a new report in Paddle. Use this tool when detailed financial data for analysis, reconciliation, or export to spreadsheet applications is needed. Use this tool over listTransactions when trying to gather larger amounts of data from Paddle. Reports are generated asynchronously - a report ID will be returned that can be used to check status. Reports initially have 'pending' status, then move to 'ready' when available to download. Reports are available in CSV format and can be downloaded once ready using the get_report_csv tool. Reports expire after a certain period and are no longer available to download after they expire. There are different report types available:
Each report type has different filters which can be used:
If successful, the response includes a copy of the new report entity. |
| get_report | This tool will retrieve a report entity from Paddle by its ID. It only contains information about the report, like the ID, status, and the date it was created. Use this tool to check the status of a generated report, or to get the ID of a report, to then use with the get_report_csv tool to download the CSV. |
| get_report_csv | This tool will retrieve a link to a CSV file for a report from Paddle by its ID. Only returned for reports that are ready. This means Paddle has completed processing the report and it's ready to download. The status of a report can be checked using the get_report tool. The link returned isn't a permanent link. It expires after 3 minutes. |
| list_client_side_tokens | This tool will list client-side tokens in Paddle. Client-side tokens are needed to authenticate with Paddle.js. A token is provided when initializing Paddle.js. Use the maximum perPage by default (200) to ensure comprehensive results. Filter client-side tokens by status as needed. Results are paginated - use the 'after' parameter with the last ID from previous results to get the next page. Sort and order results using the orderBy parameter. The returned token field is the client-side token that needs to be provided when initializing Paddle.js. Can be exposed client-side safely. If it starts with:
Client-side tokens have a status:
|
| create_client_side_token | This tool will create a new client-side token in Paddle. Client-side tokens are needed to authenticate with Paddle.js. A token is provided when initializing Paddle.js. When creating a client-side token, provide a descriptive name to help identify its purpose. Usually created for each application or environment that needs to authenticate with Paddle.js. If successful, the response includes a copy of the new client-side token entity. The returned token field is the client-side token that needs to be provided when initializing Paddle.js. Can be exposed client-side safely. If it starts with:
|
| get_client_side_token | This tool will retrieve a client-side token from Paddle by its ID. The returned token field is the client-side token that needs to be provided when initializing Paddle.js. Can be exposed client-side safely. If it starts with:
Client-side tokens have a status:
|
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |