{"templateId":"markdown","sharedDataIds":{"sidebar":"sidebar-sidebars.yaml"},"props":{"metadata":{"markdoc":{"tagList":[]},"type":"markdown"},"seo":{"title":"Authentication for resellers","siteUrl":"https://developers.signable.app","description":"Integrate Signable’s eSignature API to send, sign, and manage documents with envelopes and webhooks.","image":"/assets/hero-placeholder-small.5b052639e5d5a3b6265375db1ac2835173dda2c0ed22f8c167f6284080cc84ce.db81178d.png","llmstxt":{"hide":false,"sections":[{"title":"Table of contents","includeFiles":["**/*"],"excludeFiles":[]}],"excludeFiles":[]}},"dynamicMarkdocComponents":[],"compilationErrors":[],"ast":{"$$mdtype":"Tag","name":"article","attributes":{},"children":[{"$$mdtype":"Tag","name":"Heading","attributes":{"level":1,"id":"authentication-for-resellers","__idx":0},"children":["Authentication for resellers"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Reseller integrations use ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/authentication"},"children":["HTTP Basic Authentication"]},". Pass the relevant API key as the username and any value as the password."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"partner-and-sub-account-api-keys","__idx":1},"children":["Partner and sub-account API keys"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A reseller integration uses two types of API key:"]},{"$$mdtype":"Tag","name":"ul","attributes":{},"children":[{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["partner API key"]}," authenticates requests to partner-level endpoints used to create and manage sub-accounts."]},{"$$mdtype":"Tag","name":"li","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["sub-account API key"]}," authenticates requests made on behalf of a specific sub-account."]}]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Use the partner API key only for partner-level operations. For actions within a sub-account—such as updating its branding or sending an envelope—use that sub-account’s API key."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"create-and-retrieve-api-keys","__idx":2},"children":["Create and retrieve API keys"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":[{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["Partner API keys"]}," are created and managed in the Signable ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"https://signable.app/login"},"children":["web app"]},". Log in and follow the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/authentication#create-an-api-key"},"children":["steps to create an API key"]},"."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["A ",{"$$mdtype":"Tag","name":"strong","attributes":{},"children":["sub-account API key"]}," is generated when a sub-account is created and included in the ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/openapi/partners/createcompany"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /companies"]}]}," response. Store the key securely when you receive it."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["If you need to retrieve the key later, send ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/openapi/partners/getcompany"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["GET /companies/{company_id}"]}]}," using your partner API key."]},{"$$mdtype":"Tag","name":"Heading","attributes":{"level":2,"id":"make-requests-on-behalf-of-a-sub-account","__idx":3},"children":["Make requests on behalf of a sub-account"]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Send the required request using the relevant sub-account API key. For example, use the key when sending ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/openapi/envelopes/sendenvelope"},"children":[{"$$mdtype":"Tag","name":"code","attributes":{},"children":["POST /envelopes"]}]}," to send an envelope for that sub-account."]},{"$$mdtype":"Tag","name":"p","attributes":{},"children":["Store partner and sub-account API keys securely. Do not expose them in client-side code, include them in logs, or commit them to source control. For more information, see ",{"$$mdtype":"Tag","name":"MarkdownLink","attributes":{"href":"/authentication#protect-your-api-keys"},"children":["Protect your API keys"]},"."]}]},"headings":[{"value":"Authentication for resellers","id":"authentication-for-resellers","depth":1},{"value":"Partner and sub-account API keys","id":"partner-and-sub-account-api-keys","depth":2},{"value":"Create and retrieve API keys","id":"create-and-retrieve-api-keys","depth":2},{"value":"Make requests on behalf of a sub-account","id":"make-requests-on-behalf-of-a-sub-account","depth":2}],"frontmatter":{"title":"Authentication for resellers","description":"Authenticate API requests using Basic HTTP Authentication, with API keys for both your partner account and your sub-accounts","category":"Getting started","keywords":["authentication","Partner","API key","basic auth","authorisation","authorization","HTTPS","TLS","security","credentials","bearer token","access control"],"seo":{"title":"Authentication for resellers"}},"lastModified":"2026-08-13T08:17:45.000Z","pagePropGetterError":{"message":"","name":""}},"slug":"/partners/reseller-authentication","userData":{"isAuthenticated":false,"teams":["anonymous"]},"isPublic":true}