1. Overview
The Ana x Ramp integration connects your Ramp account to Ana, giving you natural language access to your company’s spend data — transactions, cards, spend limits, reimbursements, bills, vendors, and more. Once configured, Ana can analyze spend by department or merchant, track outstanding reimbursements, surface unusual transactions, and answer questions about your corporate card program without leaving your workflow.
Connect Ramp to Ana to query and analyze your company’s spend and card data using natural language.
2. Prerequisites
You’ll need:
- A Ramp account with admin access (required to create developer apps)
- A TextQL account with permission to add API connectors
Which type of connection should I use?
| Access Token (Client Credentials) | OAuth (Org-level) | OAuth (Per-member) |
|---|
| Best For | Service-account style access for the whole business | Shared team access authorized once by an admin | Individual user access with personal permissions |
| Authentication | Token generated from your Ramp developer app | One-time OAuth flow by an admin | Each member completes their own OAuth flow |
| Token Lifetime | Expires after 10 days; must be regenerated and updated manually | Refreshed automatically by TextQL | Refreshed automatically by TextQL |
Ramp does not issue permanent API keys — all access tokens come from OAuth. The OAuth (org-level) connection is recommended: TextQL handles the token exchange and refresh automatically, so the connection doesn’t expire.
3. Capabilities
Once configured, Ana can:
- Analyze transactions by department, merchant, card, or time period.
- Track spend against limits and surface cards approaching their limit.
- Summarize outstanding reimbursements and their approval status.
- Break down bills and vendor spend across entities and locations.
- Answer questions about users, departments, and card programs.
4. Setup Instructions
Step 1: Create a Ramp developer app
- Go to app.ramp.com and sign in as an admin.
- Navigate to Company → Developer (requires admin access).
- Click Create New App.
- Give the app a name (e.g.
TextQL or Ana Integration) and accept the Terms.
- Configure based on your connection type:
- Access Token (Client Credentials):
- Under Grant types, click Add new grant type and select Client Credentials.
- Under Scopes, click Configure allowed scopes and select the read scopes you want Ana to query (e.g.
transactions:read, users:read, business:read, cards:read, limits:read, reimbursements:read, bills:read, vendors:read).
- Copy your Client ID and Client Secret, then request an access token from the token endpoint (HTTP Basic auth):
curl -X POST https://api.ramp.com/developer/v1/token \
-u "<CLIENT_ID>:<CLIENT_SECRET>" \
-d "grant_type=client_credentials&scope=business:read transactions:read users:read"
- Copy the
access_token from the response. Note: it expires after 10 days.
- OAuth (Org-level or Per-member):
- Enable the Authorization Code grant type.
- Add
https://app.textql.com/auth/api-oauth/callback as a redirect URI.
- Copy the Client ID and Client Secret.
Step 2: Add Ramp as an API connector in TextQL
- Go to app.textql.com and sign in.
- In the bottom left sidebar, click Connectors > APIs and select Ramp.
- In the configuration panel, fill in the fields depending on your connection type:
- Access Token
- Name (e.g.
Ramp)
- Authentication type: select API Token
- Token: paste the access token from Step 1
- OAuth (Org-level or Per-member)
- Name (e.g.
Ramp OAuth)
- Authentication type: select OAuth (org-level) or OAuth (per-member)
- Client ID and Client Secret: paste the values from Step 1
- OAuth Authentication: click Authenticate — a popup will ask you to authorize access to your Ramp business. Click Authorize.
- Click Test to verify, then click Save.
Step 3: Verify the connection
- Go to app.textql.com.
- On the bottom left sidebar click Connectors → APIs and check that Ramp appears in your list of active connectors.
- Open a new Ana chat and ask a simple query, such as: “What did we spend the most on last month?”
- If Ana returns results, the connection is working. If you see an error, refer to Section 6: Troubleshooting.
5. Usage Examples
Once configured, you can ask Ana:
- “What were our top 10 merchants by spend this quarter?”
- “Show me all transactions over $1,000 in the last 30 days.”
- “How much has each department spent against its limit this month?”
- “Which reimbursements are still pending approval, and for whom?”
- “Break down our SaaS vendor spend year over year.”
- “Which cards are within 10% of their spend limit?“
6. Troubleshooting
| Symptom | Likely Cause | Fix |
|---|
| Test fails / 401 | Expired, revoked, or incorrectly copied access token | Client-credentials tokens expire — generate a new token in your Ramp developer app and update the connector, or switch to OAuth so TextQL refreshes automatically. |
| Authentication failed (OAuth) | Incorrect redirect URI or client credentials | Make sure https://app.textql.com/auth/api-oauth/callback is listed exactly as a redirect URI in your Ramp app, and the Client ID/Secret were pasted without extra spaces. |
| 403 on specific queries | Token is missing the scope for that resource | Edit the scopes on your Ramp developer app (or re-authorize OAuth) to include the <resource>:read scope Ana needs. |
| Ana returns no results | Scopes too narrow or no data in range | Verify the token’s scopes cover the resources you expect Ana to query. |
7. Security Notes
- Follow the principle of least privilege: grant only the read scopes Ana needs. Write scopes are not required for analytics.
- Access tokens grant access to your company’s financial data. Store them securely and never share them in email, chat, or tickets.
- Rotate the client secret in your Ramp developer app if you suspect it has been exposed.
- If you no longer need the integration, delete the app in Ramp’s developer settings and remove the connector from TextQL.
- For more details, refer to Ramp’s developer documentation.
Need Help?
For further assistance, please contact support@textql.com.
Privacy Policy
For information about how we handle your data and protect your privacy, please review our Privacy Policy.