Privacy Policy
What we collect, why we have it, who else touches it, how long it survives, and what you can make us do with it. Written for the person deciding whether to put a production credential into the form.
This deployment has not declared its operator.
These documents name a company as a party to them, and this one has not been told which company that is. Set COMPANY_LEGAL_NAME and COMPANY_ADDRESS (and LEGAL_EFFECTIVE_DATE) in the environment before treating anything on this page as published.
Two different roles, and why it matters
For your account — the email you signed up with, your billing details, the record of what you did in the dashboard — we decide what is collected and why. That makes us the controller of it, and this page is the policy that governs it.
For what your jobs carry — the request bodies you configure, the credentials you store, the response content we record from your endpoints — we are only doing what you told us to do. You decide what goes in there, including whether any of it is personal data at all. We are the processor of it, and the terms governing that are in the data processing terms.
The practical version: if you point a job at an endpoint that returns your customers’ personal data, that data lands in an execution record, and you are the one who decided it should. Your project’s response-snippet limit and retention window are the two dials that control how much and for how long.
What we hold about you
- Account
- Your email address, a display name if you gave one, and the immutable identifier Cognito issues for your account. Your password is not in this list — it is held by Amazon Cognito and we never see it.
- Billing
- Your billing country, and — only if you enter them for a tax invoice — a legal name, billing address and GSTIN. We do not hold card numbers, UPI handles or bank details at all; Razorpay takes payment on its own hosted page and returns us an identifier and a status.
- Job configuration
- Every URL, method, header, body and schedule you configure. Anything you mark secret — passwords, bearer tokens, API keys, signing secrets — is encrypted with AES-256-GCM before it is written, and no API endpoint returns it afterwards.
- Execution records
- For each run: the status, HTTP code, latency, response headers and the first few kilobytes of the response body. How many kilobytes is a per-plan limit, from 2 KB to 128 KB. This is the category most likely to contain personal data, and it is entirely determined by what your endpoints return.
- Audit trail
- Security-relevant actions — sign-ins, key creation, subscription changes, cancellations — with the originating IP address.
- Operational logs
- Request and error logs from running the service. Credential-bearing headers are replaced with their length before anything is written, so a token cannot reach a log file by raising the log level.
- IP addresses
- Used to rate-limit sign-up, password reset and the API, and recorded in the audit trail.
Why we have it
To run the service you asked for: authenticate you, execute your jobs, show you their history, and notify you when one fails. That is performance of the contract between us, and there is no version of the product that works without it.
To take payment and issue tax invoices, which is both contractual and — for the invoice records — a legal obligation under Indian tax law.
To keep the service secure and working: rate limiting, abuse investigation, the audit trail, and diagnosing failures. This is our legitimate interest in not being knocked over, and it is the reason the audit trail is not something you can switch off.
To send you service email — failure alerts, billing notices, material changes to these terms. We do not run behavioural advertising, we do not sell anything to anyone, and we do not use your response content to train models.
How long it lasts
Execution records are deleted automatically once they pass your project’s retention window, which runs from 7 days on Free to whatever you need on Enterprise. That deletion is enforced by a TTL index in the database itself rather than by a cleanup job, so it does not quietly stop happening.
Aggregate hourly counts outlive the raw records so that long-range charts still draw. They hold counts and timings only — no headers, no response content, nothing from your endpoints.
Account, job and billing data is kept while your account is open. When it is closed, the account and its jobs are deleted; invoice records are kept for the period Indian tax law requires us to keep them, which is currently eight years from the end of the relevant financial year, and we keep no more than the invoice.
Audit entries and operational logs are kept for a limited period for security investigation and then discarded.
How it is protected
Credentials are encrypted at rest with AES-256-GCM under a key held in the deployment environment rather than the database. API keys are stored as SHA-256 digests, so a stolen database yields hashes rather than keys. Secrets are write-only from the API’s point of view: responses are built from an allow-list of fields rather than by serialising the record.
The security page gives the mechanisms and their parameters in full, including the address ranges we refuse to call. It also states plainly what we are not certified against, which belongs next to all of this.
What you can make us do
You can ask us to show you what we hold, correct it, delete it, or give it to you in a portable form. Most of it you can already see and change in the dashboard, which is faster than asking.
Account deletion is not yet a button — write to us and we will do it, and tell you when it is done. We will not stall: an erasure request is honoured unless we are legally required to keep a specific record, in which case we will tell you which record and why.
If our processing of your data relies on our legitimate interest, you can object to it. Where we ever rely on consent, you can withdraw it, and doing so does not undo what was lawful before.
These rights are the ones India’s Digital Personal Data Protection Act, 2023 gives you as a Data Principal. If you are in the UK or the EEA, the equivalent rights under the UK GDPR and GDPR are honoured the same way, and you may complain to your supervisory authority — though we would rather you told us first, because we can actually fix it.
Where it goes
The service is operated from India, and your data is processed there and in whatever regions the providers listed above operate in. Where a transfer leaves the country it originated in, it is made under the contractual protections those providers offer for it.
If you need your data to stay in a particular region, ask before you sign up rather than after — it is a deployment decision, not a setting.
If something goes wrong
If personal data is exposed in a way likely to affect you, we will tell you — what happened, what was involved, what we have done, and what you should do — within 72 hours of establishing it, alongside whatever we are required to report to the authorities.
We will not describe an incident as a “security event” to avoid saying what it was. If your credentials were involved you will be told that directly, because you need to rotate them.
Children
getNodi is a developer tool sold to adults, and is not directed at children. We do not knowingly collect data from anyone under 18. If you believe a child has an account here, tell us and we will remove it.
Asking us about any of this
Write to contact@higglerslab.com. Tell us what you want and enough for us to find your account. We will respond within 30 days, and usually a great deal sooner.
No Grievance Officer has been declared on this deployment. Indian operators are required to publish one — set GRIEVANCE_OFFICER_NAME and GRIEVANCE_OFFICER_EMAIL in the environment.
Changes to this policy
When this policy changes materially we will email the address on your account and update the effective date at the top. Smaller clarifications take effect when posted. We will not quietly broaden what we collect and rely on you having agreed to it.