# Propper > Propper is a whitelabel prop trading platform. A prop firm gets its own > branded environment on its own domain: TradingView charts, an order execution > engine, challenge and payout rules, and a server-side risk engine that checks > every order before it fills. Their traders never see a third party. This file follows the llms.txt convention. Everything below is public. Every documentation page is served twice from the same file: once rendered for a reader, and once as its markdown source at the same address plus .md. The links below point at the markdown, so what you read is what a developer reads. For everything at once, see https://proppertrading.com/llms-full.txt. ## API reference - [Propper API](https://proppertrading.com/docs/api.md): One HTTP API for every propfirm on the platform. The credential decides which firm you are acting for. - [Verify a credential](https://proppertrading.com/docs/api/ping.md): GET /v1/ping - [Authentication](https://proppertrading.com/docs/api/authentication.md): How API keys work, what scopes do, and how to keep a key safe. - [Errors](https://proppertrading.com/docs/api/errors.md): The shape of every failure, and the full list of codes you can branch on. - [Idempotency](https://proppertrading.com/docs/api/idempotency.md): Every POST needs an Idempotency-Key, so a retry can never create the same thing twice. - [Pagination](https://proppertrading.com/docs/api/pagination.md): Cursor pagination, newest first. No page numbers. - [Rate limits](https://proppertrading.com/docs/api/rate-limits.md): Limits are per key, not per IP, and every response tells you where you stand. - [Versioning](https://proppertrading.com/docs/api/versioning.md): What we can change without warning, and what we cannot. - [Pre-registrations overview](https://proppertrading.com/docs/api/affiliates/pre-registrations.md): Reserve a referral link for someone before your platform goes live. - [Create a pre-registration](https://proppertrading.com/docs/api/affiliates/create.md): POST /v1/affiliates/pre-registrations - [List pre-registrations](https://proppertrading.com/docs/api/affiliates/list.md): GET /v1/affiliates/pre-registrations - [Retrieve a pre-registration](https://proppertrading.com/docs/api/affiliates/retrieve.md): GET /v1/affiliates/pre-registrations/{id} - [Resend a pre-registration](https://proppertrading.com/docs/api/affiliates/resend.md): POST /v1/affiliates/pre-registrations/{id}/resend - [Withdraw a pre-registration](https://proppertrading.com/docs/api/affiliates/revoke.md): DELETE /v1/affiliates/pre-registrations/{id} - [Waitlist overview](https://proppertrading.com/docs/api/waitlist/signups.md): Collect email addresses before you launch, and hand out a discount code for signing up early. - [Create a waitlist signup](https://proppertrading.com/docs/api/waitlist/create.md): POST /v1/waitlist/signups - [List waitlist signups](https://proppertrading.com/docs/api/waitlist/list.md): GET /v1/waitlist/signups - [Retrieve a waitlist signup](https://proppertrading.com/docs/api/waitlist/retrieve.md): GET /v1/waitlist/signups/{id} - [Resend a waitlist confirmation](https://proppertrading.com/docs/api/waitlist/resend.md): POST /v1/waitlist/signups/{id}/resend - [Unsubscribe from the waitlist](https://proppertrading.com/docs/api/waitlist/unsubscribe.md): DELETE /v1/waitlist/signups/{id} - [Signing in as a person](https://proppertrading.com/docs/api/apps/overview.md): How the phone apps authenticate somebody on a device, and how that differs from an API key. - [Resolve an environment](https://proppertrading.com/docs/api/apps/workspace.md): POST /v1/auth/workspace - [Sign in](https://proppertrading.com/docs/api/apps/sign-in.md): POST /v1/auth/token - [Answer a two-factor challenge](https://proppertrading.com/docs/api/apps/two-factor.md): POST /v1/auth/token/two-factor - [Passkey options for a challenge](https://proppertrading.com/docs/api/apps/two-factor-passkey-options.md): POST /v1/auth/token/two-factor/passkey-options - [Passkeys](https://proppertrading.com/docs/api/apps/passkeys.md): GET /v1/me/passkeys - [Your profile](https://proppertrading.com/docs/api/apps/profile.md): GET /v1/me - [Options for a new passkey](https://proppertrading.com/docs/api/apps/passkeys-options.md): POST /v1/me/passkeys/options - [Register a passkey](https://proppertrading.com/docs/api/apps/passkeys-create.md): POST /v1/me/passkeys - [Remove a passkey](https://proppertrading.com/docs/api/apps/passkeys-delete.md): DELETE /v1/me/passkeys/{id} - [List signed-in devices](https://proppertrading.com/docs/api/apps/sessions.md): GET /v1/me/sessions - [Sign a device out](https://proppertrading.com/docs/api/apps/revoke-session.md): DELETE /v1/me/sessions/{id} - [Sign out](https://proppertrading.com/docs/api/apps/sign-out.md): DELETE /v1/me/token - [List notifications](https://proppertrading.com/docs/api/apps/notifications.md): GET /v1/me/notifications - [Mark notifications read](https://proppertrading.com/docs/api/apps/notifications-read.md): POST /v1/me/notifications/read - [Listen on a websocket](https://proppertrading.com/docs/api/apps/realtime.md): POST /v1/me/broadcasting/auth - [Reading mail](https://proppertrading.com/docs/api/mail/overview.md): How the mailbox endpoints are shaped, and why the unit is a message rather than a thread. - [List mailboxes](https://proppertrading.com/docs/api/mail/mailboxes.md): GET /v1/me/mail/mailboxes - [List messages](https://proppertrading.com/docs/api/mail/messages.md): GET /v1/me/mail/messages - [Open a conversation](https://proppertrading.com/docs/api/mail/message.md): GET /v1/me/mail/messages/{id} - [Download an attachment](https://proppertrading.com/docs/api/mail/attachments.md): GET /v1/me/mail/attachments/{id} - [List labels](https://proppertrading.com/docs/api/mail/labels.md): GET /v1/me/mail/labels - [List assignees](https://proppertrading.com/docs/api/mail/assignees.md): GET /v1/me/mail/assignees - [List signatures](https://proppertrading.com/docs/api/mail/signatures.md): GET /v1/me/mail/signatures - [Create a label](https://proppertrading.com/docs/api/mail/label-create.md): POST /v1/me/mail/labels - [Rename a label](https://proppertrading.com/docs/api/mail/label-update.md): PATCH /v1/me/mail/labels/{id} - [Delete a label](https://proppertrading.com/docs/api/mail/label-delete.md): DELETE /v1/me/mail/labels/{id} - [Flag or file a message](https://proppertrading.com/docs/api/mail/update.md): PATCH /v1/me/mail/messages/{id} - [Restore a message](https://proppertrading.com/docs/api/mail/restore.md): POST /v1/me/mail/messages/{id}/restore - [Erase a message](https://proppertrading.com/docs/api/mail/erase.md): DELETE /v1/me/mail/messages/{id} - [Label a message](https://proppertrading.com/docs/api/mail/label.md): POST /v1/me/mail/messages/{id}/labels - [Assign a conversation](https://proppertrading.com/docs/api/mail/assign.md): POST /v1/me/mail/messages/{id}/assign - [Mark a conversation answered](https://proppertrading.com/docs/api/mail/answered.md): POST /v1/me/mail/messages/{id}/answered - [Add a note](https://proppertrading.com/docs/api/mail/note-create.md): POST /v1/me/mail/messages/{id}/notes - [Edit a note](https://proppertrading.com/docs/api/mail/note-update.md): PATCH /v1/me/mail/notes/{id} - [Delete a note](https://proppertrading.com/docs/api/mail/note-delete.md): DELETE /v1/me/mail/notes/{id} - [Send a message](https://proppertrading.com/docs/api/mail/send.md): POST /v1/me/mail/messages - [Save a draft](https://proppertrading.com/docs/api/mail/draft.md): POST /v1/me/mail/drafts - [Sync changes](https://proppertrading.com/docs/api/mail/changes.md): GET /v1/me/mail/changes - [The calendar](https://proppertrading.com/docs/api/calendar/overview.md): How the calendar endpoints are shaped, and why the unit is an occurrence rather than a row. - [List calendars](https://proppertrading.com/docs/api/calendar/calendars.md): GET /v1/me/calendar/calendars - [List appointments](https://proppertrading.com/docs/api/calendar/events.md): GET /v1/me/calendar/events - [Create an appointment](https://proppertrading.com/docs/api/calendar/create.md): POST /v1/me/calendar/events - [Change an appointment](https://proppertrading.com/docs/api/calendar/update.md): PATCH /v1/me/calendar/events/{id} - [Delete an appointment](https://proppertrading.com/docs/api/calendar/delete.md): DELETE /v1/me/calendar/events/{id} - [Answer an invitation](https://proppertrading.com/docs/api/calendar/respond.md): POST /v1/me/calendar/events/{id}/respond - [Find a time](https://proppertrading.com/docs/api/calendar/availability.md): GET /v1/me/calendar/availability - [Changelog](https://proppertrading.com/docs/api/changelog.md): Every change to the public API, newest first. ## Platform - [Platform](https://proppertrading.com/docs/platform.md): How to run your propfirm on Propper, page by page. - [Features](https://proppertrading.com/docs/platform/features.md): Everything the platform does today, grouped by who uses it. - [API keys](https://proppertrading.com/docs/platform/admin/api-keys.md): Generate and manage the credentials your systems use to talk to Propper. - [Storage](https://proppertrading.com/docs/platform/admin/storage.md): How much of your bucket is in use, where it sits, and who put it there. - [Branding](https://proppertrading.com/docs/platform/admin/branding.md): Logos, colours and the login page, so the platform looks like yours and not like ours. - [Mail design](https://proppertrading.com/docs/platform/admin/mail-design.md): Build the frame your email is drawn in, with blocks or with your own HTML, and publish it when it is ready. - [Support](https://proppertrading.com/docs/platform/admin/support.md): How traders reach your team, and what contact details they see. - [Tickets](https://proppertrading.com/docs/platform/admin/tickets.md): The support inbox: how tickets arrive, how the AI hands over, and how your team works them. - [Inbox](https://proppertrading.com/docs/platform/admin/inbox.md): A mail client on your own domain, so support@ does not need a mailbox somewhere else. - [Calendar](https://proppertrading.com/docs/platform/admin/calendar.md): A calendar for your team beside the mail, with sharing, repeats and invitations that go both ways. - [Waitlist](https://proppertrading.com/docs/platform/admin/waitlist.md): Collect email addresses before you open, and decide what people get for signing up early. - [Popups](https://proppertrading.com/docs/platform/admin/popups.md): Design a popup, decide who sees it and when, and collect answers from the people who do. ## Elsewhere on the site - [Roadmap](https://proppertrading.com/roadmap): What is being built next, kept current by the team. - [Status](https://proppertrading.com/status): Live platform status and 90 days of uptime history. - [Contact](https://proppertrading.com/contact): How to reach us. - [Terms of service](https://proppertrading.com/terms): The agreement a propfirm signs to use the platform. - [Privacy policy](https://proppertrading.com/privacy): What we collect, why, and who can see it. - [Acceptable use policy](https://proppertrading.com/aup): What the platform may and may not be used for, including AI assistant fair use. - [Subprocessors](https://proppertrading.com/subprocessors): Every third party that processes personal data on behalf of our customers. ## Optional - [Everything above, in full](https://proppertrading.com/llms-full.txt): every page on this site concatenated, for when following the links one by one is not worth it.