Learn how API Authentication works for server-to-server communication with the Smartcar API.
API Authentication is an authentication method for server-to-server communication with Smartcar. Your application obtains a single application-level access token using the OAuth 2.0 Client Credentials flow.
API Authentication uses the OAuth 2.0 Client Credentials flow, designed for server-to-server scenarios where no user interaction occurs.Here’s the flow:
Authenticate: Exchange your Client ID and Secret for an access token
Make Requests: Use the access token for all subsequent API calls
The access token is valid for 1 hour. When it expires, request a new one from the token endpoint.
The userId is a unique identifier within the Smartcar platform representing a specific user’s vehicle connection. You obtain this ID from the Connections API when a user grants access to their vehicle.
The sc-user-id header is required when accessing vehicle signals and issuing commands. It tells the API which user’s vehicle connection to operate on. You obtain the userId from the Connect redirect URL when a user completes the authorization flow.
GET https://vehicle.api.smartcar.com/v3/vehicles/{id}/signalsAuthorization: Bearer YOUR_ACCESS_TOKENsc-user-id: {userId}
The header is also accepted on the /connections endpoint to filter results by user.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"smartcar","colors":{"primary":"#3E577D","light":"#3E577D","dark":"#3E577D"},"logo":{"light":"https://mintcdn.com/smartcar-docs/YqcNJdgEDgXpXtEG/logo/light.png?fit=max\u0026auto=format\u0026n=YqcNJdgEDgXpXtEG\u0026q=85\u0026s=c8947958467fe403a12f769afada9b53","dark":"https://mintcdn.com/smartcar-docs/YqcNJdgEDgXpXtEG/logo/dark.png?fit=max\u0026auto=format\u0026n=YqcNJdgEDgXpXtEG\u0026q=85\u0026s=af6b6bcabc2fe0bc4bbd976ee5b71a36","href":"https://smartcar.com/"},"favicon":"https://mintcdn.com/smartcar-docs/NtuX9OSBHLxFwWIa/favicon.png?fit=max\u0026auto=format\u0026n=NtuX9OSBHLxFwWIa\u0026q=85\u0026s=de01fc4e56d5368d441e322ac50e3f81","api":{"playground":{"display":"interactive","proxy":false},"examples":{"prefill":true}},"navbar":{"links":[{"href":"https://dashboard.smartcar.com/login/","label":"Log in"},{"href":"https://dashboard.smartcar.com/signup/","label":"Sign up"}],"primary":{"type":"button","label":"Request a Demo","href":"https://smartcar.com/pricing/"}},"footer":{"socials":{"linkedin":"https://www.linkedin.com/company/smartcar","github":"https://github.com/smartcar","facebook":"https://www.facebook.com/smartcar","instagram":"https://www.instagram.com/mysmartcar","x":"https://x.com/mysmartcar"},"links":[{"header":"Product","items":[{"label":"Vehicle signals","href":"https://smartcar.com/product/signals"},{"label":"Vehicle commands","href":"https://smartcar.com/product/commands"},{"label":"Compatible brands","href":"https://smartcar.com/product/compatible-vehicles"},{"label":"Connect","href":"https://smartcar.com/product/connect"},{"label":"Integrations","href":"https://smartcar.com/product/integrations"},{"label":"Global coverage","href":"https://smartcar.com/global"},{"label":"Teams","href":"https://smartcar.com/product/teams"},{"label":"Vehicle management","href":"https://smartcar.com/product/vehicle-management"},{"label":"Analytics","href":"https://smartcar.com/product/analytics"},{"label":"Pricing","href":"https://smartcar.com/pricing"},{"label":"Status","href":"https://status.smartcar.com/"},{"label":"Brand reliability","href":"https://brandreliability.smartcar.com/"},{"label":"Data security","href":"https://smartcar.com/data-security"}]},{"header":"Energy Solutions","items":[{"label":"DERMs","href":"https://smartcar.com/industries/derms-software"},{"label":"Virtual Power Plants (VPPs)","href":"https://smartcar.com/industries/virtual-power-plant"},{"label":"Utilities","href":"https://smartcar.com/utilities"},{"label":"Home energy management","href":"https://smartcar.com/industries/home-energy-management"},{"label":"EV charging networks","href":"https://smartcar.com/industries/ev-charging"},{"label":"Charge point operators","href":"https://smartcar.com/industries/charge-point-operator"},{"label":"E-mobility service providers","href":"https://smartcar.com/industries/e-mobility-service-providers"}]},{"header":"Solutions","items":[{"label":"Repair and maintenance","href":"https://smartcar.com/industries/repair-maintenance"},{"label":"Autocare software","href":"https://smartcar.com/industries/autocare-software"},{"label":"Auto dealership","href":"https://smartcar.com/industries/auto-dealership-software"},{"label":"Roadside assistance","href":"https://smartcar.com/industries/roadside-assistance"},{"label":"Vehicle history reports","href":"https://smartcar.com/industries/vehicle-history-reports"},{"label":"Small fleet management","href":"https://smartcar.com/industries/fleet-management"},{"label":"Car subscription service","href":"https://smartcar.com/industries/car-subscription-services"},{"label":"Car sharing","href":"https://smartcar.com/industries/car-sharing"},{"label":"Ride hailing","href":"https://smartcar.com/industries/ride-sharing"},{"label":"Car rentals","href":"https://smartcar.com/industries/car-rental"},{"label":"Auto insurance","href":"https://smartcar.com/industries/auto-insurance"},{"label":"Warranty software","href":"https://smartcar.com/industries/warranty-management-software"},{"label":"Road usage charge","href":"https://smartcar.com/industries/road-usage-charge"}]},{"header":"Resources","items":[{"label":"Customers","href":"https://smartcar.com/customers"},{"label":"Blog","href":"https://smartcar.com/blog"},{"label":"For vehicle owners","href":"https://smartcar.com/vehicle-owners"},{"label":"For automakers","href":"https://smartcar.com/automakers"},{"label":"Terms of service","href":"https://smartcar.com/legal/terms"},{"label":"Privacy policy","href":"https://smartcar.com/legal/privacy"},{"label":"End user privacy policy","href":"https://smartcar.com/legal/end-user-privacy"},{"label":"Acceptable use","href":"https://smartcar.com/legal/acceptable-use"},{"label":"Data processing","href":"https://smartcar.com/legal/dpa"},{"label":"Vulnerability disclosure program","href":"https://smartcar.com/vdp"},{"label":"mySmartcar","href":"https://my.smartcar.com"}]}]},"search":{"prompt":"✨ Ask Smartcar"},"integrations":{"koala":{"publicApiKey":"pk_3a64cc4d12d7b978edffae0afd143df5b291"},"ga4":{"measurementId":"G-QHNXS91VZC"}},"styling":{"latex":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"smartcar-docs","hasAudioNarration":false,"actualSubdomain":"smartcar-docs","customDomains":["smartcar.com"],"gitSource":{"type":"github","owner":"smartcar","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6adbe250d05dd52d1c87e7c2","collectionId":"4e81bf89-a564-4084-82d5-a2f1a4b41ad6","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6adbe250d05dd52d1c87e7c2"},"feedback":{"thumbs":true},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6adbe250d05dd52d1c87e7c2","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API \u0026 Integrations Reference","count":147},{"language":"default","tag":"API 2.0 Reference (Legacy)","count":64},{"language":"default","tag":"Vehicle Data","count":48},{"language":"default","tag":"Help Center","count":36},{"language":"default","tag":"Getting Started","count":28},{"language":"default","tag":"Make Specific","count":27},{"language":"default","tag":"Introduction","count":26},{"language":"default","tag":"Tesla","count":26},{"language":"default","tag":"Webhooks","count":25},{"language":"default","tag":"Errors","count":20}]},"assistantConfig":{},"basePath":"/docs","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"style.css","content":".hsfc-Form .hsfc-FieldLabel span:is(.dark *),.hsfc-Form .hsfc-RichText p:is(.dark *),.hsfc-PostSubmit .hsfc-RichText p:is(.dark *){color:#a0a1a2}.dark\\:text-primary-light:is(.dark *){color:#378ff0}.hsfc-FormWrapper .hsfc-Step .hsfc-Step__Content{padding:0 10px 20px;background-color:rgb(113 113 122/10%);border-radius:10px}.hsfc-FormWrapper .hsfc-Step .hsfc-Step__Content .hsfc-Row{margin-bottom:4px}.hsfc-FormWrapper .hsfc-Step .hsfc-Step__Content .hsfc-NavigationRow{margin-top:4px}.osano-cm-powered-by__link.osano-cm-link,.osano-cm-window__widget{display:none}.osano-cm-close svg{stroke:#fff!important}.osano-cm-dialog{font-family:Inter,ui-sans-serif,system-ui,sans-serif;border-radius:12px;box-shadow:0 -4px 24px rgba(0,0,0,.08);padding:20px 24px;background-color:#fff;color:#374151;border-top:1px solid #e5e7eb}.osano-cm-dialog__title{font-size:.9rem;font-weight:600;color:#111827;margin-bottom:6px}.osano-cm-dialog__description,.osano-cm-message{font-size:.825rem;color:#6b7280;line-height:1.5}.osano-cm-storage-policy{font-size:.825rem;line-height:1.5}.osano-cm-message:is(.dark *){color:#fff}.osano-cm-info a,.osano-cm-storage-policy{color:#3e577d}.osano-cm-button{font-family:Inter,ui-sans-serif,system-ui,sans-serif;font-size:.825rem;font-weight:500;border-radius:6px;padding:7px 14px;transition:opacity .15s ease}.osano-cm-button:hover{opacity:.85}.osano-cm-accept,.osano-cm-button--save,.osano-cm-save{background-color:#3e577d!important;color:#fff!important;border:0!important}.osano-cm-deny,.osano-cm-manage{background-color:transparent!important;color:#3e577d!important;border:1px solid #3e577d!important}.osano-cm-manage{border:0!important;padding-left:4px!important;padding-right:4px!important;text-decoration:underline;text-underline-offset:2px}.osano-cm-dialog:is(.dark *){background-color:#1f2937;color:#d1d5db;border-top-color:#374151;box-shadow:0 -4px 24px rgba(0,0,0,.3)}.osano-cm-dialog__title:is(.dark *){color:#f9fafb}.osano-cm-dialog__description:is(.dark *){color:#9ca3af}.osano-cm-info a:is(.dark *),.osano-cm-storage-policy:is(.dark *){color:#93b4d8}.osano-cm-deny:is(.dark *){color:#93b4d8!important;border-color:#93b4d8!important}.osano-cm-manage:is(.dark *){color:#93b4d8!important}.osano-cm-info{font-family:Inter,ui-sans-serif,system-ui,sans-serif;border-radius:0;box-shadow:0 -4px 24px rgba(0,0,0,.08);background-color:#fff;color:#374151;border-top:1px solid #e5e7eb;min-width:480px;overflow-y:visible}.osano-cm-header,.osano-cm-info-dialog-header{background-color:#fff!important}.osano-cm-info__title{font-size:.9rem;font-weight:600;color:#111827}.osano-cm-info__description,.osano-cm-info__list{font-size:.825rem;color:#6b7280;line-height:1.5}.osano-cm-toggle__switch{background-color:#e5e7eb!important;border-color:#3e577d!important}.osano-cm-toggle__input:checked+.osano-cm-toggle__switch{background-color:#3e577d!important;border-color:#3e577d!important}.osano-cm-toggle__input:checked+.osano-cm-toggle__switch::after{background-color:#e5e7eb!important}.osano-cm-info:is(.dark *){background-color:#1f2937;color:#d1d5db;border-top-color:#374151;box-shadow:0 -4px 24px rgba(0,0,0,.3)}.osano-cm-header:is(.dark *),.osano-cm-info-dialog-header:is(.dark *){background-color:#1f2937!important}.osano-cm-info__title:is(.dark *){color:#f9fafb}.osano-cm-info__description:is(.dark *),.osano-cm-info__list:is(.dark *){color:#9ca3af}.osano-cm-toggle__switch:is(.dark *){background-color:#374151!important}"}],"page":{"pagePath":"api-reference/authorization/overview","slug":"/api-reference/authorization/overview","pageMetadata":{"title":"API Authentication Overview","sidebarTitle":"Overview","description":"Learn how API Authentication works for server-to-server communication with the Smartcar API.","href":"/api-reference/authorization/overview"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Learn how API Authentication works for server-to-server communication with the Smartcar API.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,li:`li`,ol:`ol`,p:`p`,pre:`pre`,span:`span`,strong:`strong`,ul:`ul`,..._provideComponents(),...props.components},{CodeBlock,Heading,Mermaid,Warning}=_components;if(!CodeBlock)_missingMdxReference(`CodeBlock`,true);if(!Heading)_missingMdxReference(`Heading`,true);if(!Mermaid)_missingMdxReference(`Mermaid`,true);if(!Warning)_missingMdxReference(`Warning`,true);return _jsxs(_Fragment,{children:[_jsx(_components.p,{children:`API Authentication is an authentication method for server-to-server communication with Smartcar. Your application obtains a single application-level access token using the OAuth 2.0 Client Credentials flow.`}),`\n`,_jsx(Heading,{level:`2`,id:`how-it-works`,children:`How It Works`}),`\n`,_jsx(_components.p,{children:`API Authentication uses the OAuth 2.0 Client Credentials flow, designed for server-to-server scenarios where no user interaction occurs.`}),`\n`,_jsx(Mermaid,{chart:`sequenceDiagram\n participant App as Your Backend\n participant SC as Smartcar API\n\n App->>SC: Request access token (Client ID + Secret)\n SC-->>App: Access token\n App->>SC: API request + Authorization header\n SC-->>App: Vehicle data`}),`\n`,_jsx(_components.p,{children:`Here’s the flow:`}),`\n`,_jsxs(_components.ol,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Authenticate`}),`: Exchange your Client ID and Secret for an access token`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Make Requests`}),`: Use the access token for all subsequent API calls`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`The access token is valid for 1 hour. When it expires, request a new one from the token endpoint.`}),`\n`,_jsx(Heading,{level:`2`,id:`key-concepts`,children:`Key Concepts`}),`\n`,_jsx(Heading,{level:`3`,id:`api-credentials`,children:`API Credentials`}),`\n`,_jsx(_components.p,{children:`Your API credentials consist of:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Client ID`}),` — Public identifier for your application (safe to hardcode)`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Client Secret`}),` — Private credential for authentication (must be stored securely)`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Treat your Client Secret like a password. Never commit it to version control or expose it in client-side code.`}),`\n`,_jsx(Heading,{level:`3`,id:`user-id-userid`,children:`User ID (userId)`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`userId`}),` is a unique identifier within the Smartcar platform representing a specific user’s vehicle connection. You obtain this ID from the Connections API when a user grants access to their vehicle.`]}),`\n`,_jsx(Heading,{level:`3`,id:`sc-user-id-header`,children:`sc-user-id Header`}),`\n`,_jsxs(_components.p,{children:[`The `,_jsx(_components.code,{children:`sc-user-id`}),` header is required when accessing vehicle signals and issuing commands. It tells the API which user’s vehicle connection to operate on. You obtain the `,_jsx(_components.code,{children:`userId`}),` from the Connect redirect URL when a user completes the authorization flow.`]}),`\n`,_jsx(CodeBlock,{filename:``,numberOfLines:`3`,language:`shellscript`,children:_jsx(_components.pre,{className:`shiki shiki-themes github-light-default dark-plus`,style:{backgroundColor:`#ffffff`,\"--shiki-dark-bg\":`#0B0C0E`,color:`#1f2328`,\"--shiki-dark\":`#D4D4D4`},language:`shellscript`,children:_jsxs(_components.code,{language:`shellscript`,numberOfLines:`3`,children:[_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`GET`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` https://vehicle.api.smartcar.com/v3/vehicles/{id}/signals`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`Authorization:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` Bearer`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` YOUR_ACCESS_TOKEN`})]}),`\n`,_jsxs(_components.span,{className:`line`,children:[_jsx(_components.span,{style:{color:`#953800`,\"--shiki-dark\":`#DCDCAA`},children:`sc-user-id:`}),_jsx(_components.span,{style:{color:`#0A3069`,\"--shiki-dark\":`#CE9178`},children:` {userId}`})]}),`\n`]})})}),`\n`,_jsxs(_components.p,{children:[`The header is also accepted on the `,_jsx(_components.code,{children:`/connections`}),` endpoint to filter results by user.`]}),`\n`,_jsx(Heading,{level:`3`,id:`connections-api`,children:`Connections API`}),`\n`,_jsx(_components.p,{children:`The Connections API manages vehicle connections at the application level. With API Authentication, you use this API to:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[`Retrieve connected vehicle IDs (`,_jsx(_components.code,{children:`userId`}),` values)`]}),`\n`,_jsx(_components.li,{children:`Manage vehicle connections`}),`\n`,_jsx(_components.li,{children:`Handle subscription events`}),`\n`]}),`\n`,_jsx(Heading,{level:`2`,id:`security-considerations`,children:`Security Considerations`}),`\n`,_jsx(Warning,{children:_jsx(_components.p,{children:`Never store your Client Secret in public clients, browser cookies, or plain text files. Your backend must securely store and manage API credentials.`})}),`\n`,_jsx(_components.p,{children:`Follow these security best practices:`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Secure Storage`}),` — Keep Client Secrets in environment variables, secrets management systems, or encrypted vaults`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Secret Rotation`}),` — Rotate your Client Secret on a regular schedule or immediately if compromised`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Audit Trails`}),` — Monitor your Smartcar Dashboard for API Credentials activity and audit logs`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`Least Privilege`}),` — Restrict API credential access to backend services that require it`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:`No Client-Side Usage`}),` — Never use API credentials in mobile apps, web frontends, or any public-facing code`]}),`\n`]}),`\n`,_jsx(_components.p,{children:`Your Smartcar Dashboard provides visibility into credential usage and security events. Review audit logs regularly to detect unauthorized activity.`}),`\n`,_jsx(Heading,{level:`2`,id:`what’s-next`,children:`What’s Next`}),`\n`,_jsx(_components.p,{children:`Ready to implement API Authentication?`}),`\n`,_jsxs(_components.ul,{children:[`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:_jsx(_components.a,{href:`/getting-started/how-to/api-authentication`,children:`Setup Guide`})}),` — Step-by-step setup and code examples`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:_jsx(_components.a,{href:`/getting-started/how-to/m2m/migration-guide`,children:`Migration Guide`})}),` — Transition from per-vehicle tokens to API Authentication`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:_jsx(_components.a,{href:`/getting-started/how-to/m2m/faq`,children:`FAQ`})}),` — Common questions and answers`]}),`\n`,_jsxs(_components.li,{children:[_jsx(_components.strong,{children:_jsx(_components.a,{href:`/api-reference/list-connections`,children:`Connections API Reference`})}),` — Complete endpoint documentation`]}),`\n`]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"API Authentication Overview","sidebarTitle":"Overview","description":"Learn how API Authentication works for server-to-server communication with the Smartcar API.","href":"/api-reference/authorization/overview"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"How It Works","slug":"how-it-works","depth":2,"children":[]},{"title":"Key Concepts","slug":"key-concepts","depth":2,"children":[{"title":"API Credentials","slug":"api-credentials","depth":3,"children":[]},{"title":"User ID (userId)","slug":"user-id-userid","depth":3,"children":[]},{"title":"sc-user-id Header","slug":"sc-user-id-header","depth":3,"children":[]},{"title":"Connections API","slug":"connections-api","depth":3,"children":[]}]},{"title":"Security Considerations","slug":"security-considerations","depth":2,"children":[]},{"title":"What’s Next","slug":"what’s-next","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":["/docs/_mintlify/custom/smartcar-docs/079ff91450d16dd6/osano.js"],"subdomain":"smartcar-docs","siteName":"smartcar","title":"API Authentication Overview - smartcar","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-07-21T17:50:03.824Z","originalFileLocation":"api-reference/authorization/overview.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Learn how API Authentication works for server-to-server communication with the Smartcar API.\">\u003cmeta data-mint-head name=\"application-name\" content=\"smartcar\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"API Authentication Overview - smartcar\">\u003cmeta data-mint-head property=\"og:description\" content=\"Learn how API Authentication works for server-to-server communication with the Smartcar API.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"smartcar\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://smartcar.com/docs/api-reference/authorization/overview\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://smartcar-docs.mintlify.app/_mintlify/api/og/v2?division=Authorization\u0026amp;title=API+Authentication+Overview\u0026amp;description=Learn+how+API+Authentication+works+for+server-to-server+communication+with+the+Smartcar+API.\u0026amp;theme=254a1f83924c8d0c1b4b5b15\u0026amp;signature=5844c3026d9f5b5d722430b4c733f20cbd3640c8279c28f1416b3b16a55dee5c\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"API Authentication Overview - smartcar\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Learn how API Authentication works for server-to-server communication with the Smartcar API.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://smartcar-docs.mintlify.app/_mintlify/api/og/v2?division=Authorization\u0026amp;title=API+Authentication+Overview\u0026amp;description=Learn+how+API+Authentication+works+for+server-to-server+communication+with+the+Smartcar+API.\u0026amp;theme=254a1f83924c8d0c1b4b5b15\u0026amp;signature=5844c3026d9f5b5d722430b4c733f20cbd3640c8279c28f1416b3b16a55dee5c\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/docs/mintlify-assets/_mintlify/favicons/smartcar-docs/mm2dBjYiMlWQ-TlV/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"smartcar\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3E577D\">\u003clink data-mint-head rel=\"canonical\" href=\"https://smartcar.com/docs/api-reference/authorization/overview\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/docs/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/docs/api-reference/authorization/overview.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://smartcar.com/#organization\",\"name\":\"smartcar\",\"url\":\"https://smartcar.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/smartcar-docs/YqcNJdgEDgXpXtEG/logo/light.png?fit=max\u0026auto=format\u0026n=YqcNJdgEDgXpXtEG\u0026q=85\u0026s=c8947958467fe403a12f769afada9b53\"}},{\"@type\":\"WebSite\",\"@id\":\"https://smartcar.com/docs#website\",\"name\":\"smartcar\",\"url\":\"https://smartcar.com/docs\",\"publisher\":{\"@id\":\"https://smartcar.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://smartcar.com/docs/api-reference/authorization/overview#webpage\",\"url\":\"https://smartcar.com/docs/api-reference/authorization/overview\",\"name\":\"API Authentication Overview\",\"description\":\"Learn how API Authentication works for server-to-server communication with the Smartcar API.\",\"dateModified\":\"2026-07-21T17:50:03.824Z\",\"isPartOf\":{\"@id\":\"https://smartcar.com/docs#website\"},\"breadcrumb\":{\"@id\":\"https://smartcar.com/docs/api-reference/authorization/overview#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://smartcar.com/docs/api-reference/authorization/overview#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"smartcar\",\"item\":\"https://smartcar.com/docs\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"API Authentication Overview\",\"item\":\"https://smartcar.com/docs/api-reference/authorization/overview\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://smartcar.com/docs/api-reference/authorization/overview#article\",\"headline\":\"API Authentication Overview\",\"name\":\"API Authentication Overview\",\"description\":\"Learn how API Authentication works for server-to-server communication with the Smartcar API.\",\"url\":\"https://smartcar.com/docs/api-reference/authorization/overview\",\"mainEntityOfPage\":{\"@id\":\"https://smartcar.com/docs/api-reference/authorization/overview#webpage\"},\"dateModified\":\"2026-07-21T17:50:03.824Z\",\"publisher\":{\"@id\":\"https://smartcar.com/#organization\"},\"isPartOf\":{\"@id\":\"https://smartcar.com/docs#website\"}}]}\u003c/script>","siteName":"smartcar","nav":{"global":null,"tabs":[{"tab":"Getting Started","pages":[{"title":"Getting Started","href":"/getting-started/introduction"}]},{"tab":"Connecting Vehicles","pages":[{"title":"Connecting Vehicles","href":"/connect/what-is-connect"}]},{"tab":"API \u0026 Integrations Reference","groups":[{"group":"Introduction","pages":[{"title":"Smartcar API Overview","sidebarTitle":"Overview","href":"/api-reference/intro"},{"title":"SDKs","href":"/api-reference/api-sdks"},{"title":"OpenAPI Specifications","sidebarTitle":"OpenAPI Specs","href":"/api-reference/openapi-specs"},{"title":"Permissions","href":"/api-reference/permissions"},{"group":"Errors","pages":[{"title":"Errors Overview","sidebarTitle":"Overview","href":"/api-reference/api-errors"},{"group":"Connect Errors","pages":[{"title":"Access Denied","href":"/errors/connect-errors/access-denied"},{"title":"Invalid Subscription","href":"/errors/connect-errors/invalid-subscription"},{"title":"Configuration","href":"/errors/connect-errors/configuration-error"},{"title":"No Vehicles","href":"/errors/connect-errors/no-vehicles"},{"title":"Server","href":"/errors/connect-errors/server-error"},{"title":"Vehicle Incompatible","href":"/errors/connect-errors/vehicle-incompatible"},{"title":"OEM Login Cancelled","href":"/errors/connect-errors/oem-login-cancelled"},{"title":"User returned to application","href":"/errors/connect-errors/returned-to-application"}]},{"group":"API Errors","pages":[{"title":"Authentication Errors","sidebarTitle":"Authentication","href":"/errors/api-errors/v3/authentication-errors"},{"title":"Billing Errors","sidebarTitle":"Billing","href":"/errors/api-errors/v3/billing-errors"},{"title":"Compatibility Errors","sidebarTitle":"Compatibility","href":"/errors/api-errors/v3/compatibility-errors"},{"title":"Connected Services Account Errors","sidebarTitle":"Connected Services Account","href":"/errors/api-errors/v3/connected-services-account-errors"},{"title":"Rate Limit Errors","sidebarTitle":"Rate Limit","href":"/errors/api-errors/v3/rate-limit-errors"},{"title":"Resource Not Found","href":"/errors/api-errors/v3/resource-not-found-errors"},{"title":"Server Errors","sidebarTitle":"Server","href":"/errors/api-errors/v3/server-errors"},{"title":"Upstream Errors","sidebarTitle":"Upstream","href":"/errors/api-errors/v3/upstream-errors"},{"title":"Validation Errors","sidebarTitle":"Validation","href":"/errors/api-errors/v3/validation-errors"},{"title":"Vehicle State Errors","sidebarTitle":"Vehicle State","href":"/errors/api-errors/v3/vehicle-state-errors"}]},{"title":"Testing Errors","description":"By launching Connect in [simulated mode](/docs/connect/advanced-config/modes), you're able to test your application against certain errors.","href":"/errors/testing-errors"}]}]},{"group":"Authorization","pages":[{"title":"API Authentication Overview","sidebarTitle":"Overview","href":"/api-reference/authorization/overview"},{"title":"Application Access Token","sidebarTitle":"POST Access Token","openapi":"specs/auth.yaml POST /oauth2/token","playground":"none","description":"Request an access token using client credentials grant type","href":"/api-reference/authorization/request-access-token"}]},{"group":"Connections","pages":[{"title":"List connections","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml get /connections","href":"/api-reference/list-connections"},{"title":"Get connection","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml get /connections/{connectionId}","href":"/api-reference/get-connection"},{"title":"Remove connection","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml delete /connections/{connectionId}","href":"/api-reference/remove-connection"},{"title":"Remove user","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml delete /users/{userId}","href":"/api-reference/remove-user"}]},{"group":"Webhooks","pages":[{"title":"Webhooks Overview","sidebarTitle":"Overview","tag":"NEW","href":"/integrations/webhooks/overview"},{"title":"Creating Webhooks","href":"/integrations/webhooks/creating-webhooks"},{"title":"Subscribing Vehicles","href":"/integrations/webhooks/subscribing-vehicles"},{"title":"Receiving Webhooks","href":"/integrations/webhooks/receiving-webhooks"},{"title":"Callback URI Verification","href":"/integrations/webhooks/callback-verification"},{"title":"Payload Verification","href":"/integrations/webhooks/payload-verification"},{"group":"Event Reference","pages":[{"title":"Event Reference Overview","sidebarTitle":"Overview","href":"/api-reference/webhooks/events/overview"},{"title":"VERIFY Event","href":"/api-reference/webhooks/events/verify"},{"title":"VEHICLE_STATE Event","href":"/api-reference/webhooks/events/vehicle-state"},{"title":"VEHICLE_ERROR Event","href":"/api-reference/webhooks/events/vehicle-error"}]},{"title":"Delivery Behavior","href":"/api-reference/webhooks/delivery-behavior"},{"group":"Best Practices","pages":[{"title":"Best Practices Overview","sidebarTitle":"Overview","href":"/integrations/webhooks/best-practices/overview"},{"title":"Architecture Patterns","href":"/integrations/webhooks/best-practices/architecture"},{"title":"Security","href":"/integrations/webhooks/best-practices/security"},{"title":"Reliability","href":"/integrations/webhooks/best-practices/reliability"},{"title":"Monitoring \u0026 Observability","sidebarTitle":"Monitoring","href":"/integrations/webhooks/best-practices/monitoring"},{"title":"Testing","href":"/integrations/webhooks/best-practices/testing"}]},{"title":"List subscriptions","deprecated":null,"version":null,"openapi":"/specs/management.yaml get /subscriptions","href":"/api-reference/list-subscriptions"},{"title":"Create subscription","deprecated":null,"version":null,"openapi":"/specs/management.yaml post /subscriptions","href":"/api-reference/create-subscription"},{"title":"Get subscription","deprecated":null,"version":null,"openapi":"/specs/management.yaml get /subscriptions/{subscriptionId}","href":"/api-reference/get-subscription"},{"title":"Remove subscription","deprecated":null,"version":null,"openapi":"/specs/management.yaml delete /subscriptions/{subscriptionId}","href":"/api-reference/remove-subscription"},{"title":"List webhooks","deprecated":null,"version":null,"openapi":"/specs/management.yaml get /webhooks","href":"/api-reference/list-webhooks"},{"title":"Get webhook","deprecated":null,"version":null,"openapi":"/specs/management.yaml get /webhooks/{webhookId}","href":"/api-reference/get-webhook"}]},{"group":"Vehicle Data","pages":[{"title":"Get vehicle","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml get /vehicles/{vehicleId}","href":"/api-reference/get-vehicle"},{"title":"List signals","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml get /vehicles/{vehicleId}/signals","href":"/api-reference/list-signals"},{"title":"Get signal","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml get /vehicles/{vehicleId}/signals/{signalCode}","href":"/api-reference/get-signal"}]},{"group":"Vehicle Commands","pages":[{"title":"Commands Overview","sidebarTitle":"Overview","tag":"NEW","href":"/api-reference/commands/overview"},{"title":"Start charging","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/charge/start","href":"/api-reference/charging/start-charging"},{"title":"Stop charging","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/charge/stop","href":"/api-reference/charging/stop-charging"},{"title":"Set charge limit","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/charge/set-limit","href":"/api-reference/charging/set-charge-limit"},{"title":"Open charge port","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/charge-port/open","href":"/api-reference/charging/open-charge-port"},{"title":"Close charge port","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/charge-port/close","href":"/api-reference/charging/close-charge-port"},{"title":"Lock doors","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/security/lock","href":"/api-reference/security/lock-doors"},{"title":"Unlock doors","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/security/unlock","href":"/api-reference/security/unlock-doors"},{"title":"Set destination","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/commands/navigation/set-destination","href":"/api-reference/navigation/set-destination"},{"title":"Set daily charge schedule","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/charge-schedules/daily","href":"/api-reference/charge-schedules/set-daily-charge-schedule"},{"title":"Set weekly charge schedule","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/charge-schedules/weekly","href":"/api-reference/charge-schedules/set-weekly-charge-schedule"},{"title":"Set workweek charge schedule","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/charge-schedules/workweek","href":"/api-reference/charge-schedules/set-workweek-charge-schedule"},{"title":"Delete charge schedule","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml delete /vehicles/{vehicleId}/charge-schedules/{scheduleId}","href":"/api-reference/charge-schedules/delete-charge-schedule"}]},{"group":"Vehicle Settings","pages":[{"title":"Vehicle Settings Overview","sidebarTitle":"Overview","tag":"NEW","href":"/api-reference/settings/overview"},{"title":"Set nominal battery capacity","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /vehicles/{vehicleId}/settings/tractionbattery-nominalcapacity","href":"/api-reference/set-nominal-battery-capacity"}]},{"group":"Interactions","pages":[{"title":"Interactions Overview","sidebarTitle":"Overview","tag":"NEW","href":"/api-reference/interactions/overview"},{"title":"Create a select-battery-capacity interaction","deprecated":null,"version":null,"openapi":"/specs/full-vehicle.yaml post /interactions/select-battery-capacity","href":"/api-reference/create-a-select-battery-capacity-interaction"}]},{"group":"Compatibility","pages":[{"title":"Compatibility API overview","href":"/api-reference/compatibility-api-intro"},{"title":"Compatible Vehicles","sidebarTitle":"Compatible Vehicles","api":"GET https://compatibility.api.smartcar.com/v3/compatible-vehicles","href":"/api-reference/compatible-vehicles"}]},{"group":"API 2.0 Reference (Legacy)","pages":[{"group":"Integration Errors","pages":[{"title":"Authentication Errors","sidebarTitle":"Authentication","href":"/errors/api-errors/authentication-errors"},{"title":"Billing Errors","sidebarTitle":"Billing","href":"/errors/api-errors/billing-errors"},{"title":"Compatibility Errors","sidebarTitle":"Compatibility","href":"/errors/api-errors/compatibility-errors"},{"title":"Connected Services Account Errors","sidebarTitle":"Connected Services Account","href":"/errors/api-errors/connected-services-account-errors"},{"title":"Permission Errors","sidebarTitle":"Permission","href":"/errors/api-errors/permission-errors"},{"title":"Rate Limit Errors","sidebarTitle":"Rate Limit","href":"/errors/api-errors/rate-limit-errors"},{"title":"Resource Not Found","href":"/errors/api-errors/resource-not-found-errors"},{"title":"Server Errors","sidebarTitle":"Server","href":"/errors/api-errors/server-errors"},{"title":"Upstream Errors","sidebarTitle":"Upstream","href":"/errors/api-errors/upstream-errors"},{"title":"Validation Errors","sidebarTitle":"Validation","href":"/errors/api-errors/validation-errors"},{"title":"Vehicle State Errors","sidebarTitle":"Vehicle State","href":"/errors/api-errors/vehicle-state-errors"}]},{"group":"Webhooks","pages":[{"title":"Subscribe","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/webhooks/{webhook_id}","href":"/api-reference/webhooks/subscribe-webhook"},{"title":"Unsubscribe","description":"Unsubscribe a vehicle from a webhook.","api":"DELETE https://api.smartcar.com/v2.0/vehicles/{id}/webhooks/{webhook_id}","href":"/api-reference/webhooks/unsubscribe-webhook"}]},{"group":"Vehicle Authorization \u0026 Permissions","pages":[{"title":"API Authentication Overview","sidebarTitle":"Overview","href":"/api-reference/authorization/overview"},{"title":"Auth Code Exchange","description":"To interact with the Smartcar API, you will need to exchange your authorization code from the [Connect redirect](/connect/handle-the-response) for an access token. Check the [overview](/api-reference/authorization/overview) page for how to manage your tokens.","api":"POST https://auth.smartcar.com/oauth/token","href":"/api-reference/authorization/auth-code-exchange"},{"title":"Refreshing Access Tokens","sidebarTitle":"Access Token Refresh","api":"POST https://auth.smartcar.com/oauth/token","href":"/api-reference/authorization/refreshing-access-token"},{"title":"Permissions","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/permissions","playground":"none","href":"/api-reference/application-permissions"},{"title":"User","api":"GET https://api.smartcar.com/v2.0/user","playground":"none","href":"/api-reference/user"},{"title":"User Vehicles","api":"GET https://api.smartcar.com/v2.0/vehicles","playground":"none","href":"/api-reference/user-vehicles"}]},{"group":"Vehicle Data","pages":[{"title":"Vehicles API v2.0 Overview","sidebarTitle":"Overview","href":"/api-reference/v2-overview"},{"title":"Headers","href":"/api-reference/headers"},{"title":"Battery Capacity","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/battery/nominal_capacity","playground":"none","href":"/api-reference/get-nominal-capacity"},{"title":"Battery Level","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/battery","href":"/api-reference/evs/get-battery-level"},{"title":"Charge Limit","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/charge/limit","href":"/api-reference/evs/get-charge-limit"},{"title":"Charge Status","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/charge","href":"/api-reference/evs/get-charge-status"},{"title":"Diagnostic Trouble Codes","sidebarTitle":"Diagnostic Trouble Codes","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/diagnostics/dtcs","playground":"none","href":"/api-reference/get-dtcs"},{"title":"Fuel Tank","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/fuel","playground":"none","href":"/api-reference/get-fuel-tank"},{"title":"Location","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/location","playground":"none","href":"/api-reference/get-location"},{"title":"Lock Status","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/security","playground":"none","href":"/api-reference/get-lock-status"},{"title":"Odometer","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/odometer","playground":"none","href":"/api-reference/get-odometer"},{"title":"Oil Life","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/engine/oil","playground":"none","href":"/api-reference/get-engine-oil-life"},{"title":"Service History","sidebarTitle":"Service History","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/service/history","playground":"none","href":"/api-reference/get-service-records"},{"title":"System Status","sidebarTitle":"System Status","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/diagnostics/system_status","playground":"none","href":"/api-reference/get-system-status"},{"title":"Tire Pressure","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/tires/pressure","playground":"none","href":"/api-reference/get-tire-pressure"},{"title":"Vehicle Attributes","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}","playground":"none","href":"/api-reference/get-vehicle-info"},{"title":"VIN","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/vin","playground":"none","href":"/api-reference/get-vin"},{"title":"Batch","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/batch","playground":"none","href":"/api-reference/batch"},{"group":"Make Specific","pages":[{"title":"Make Specific Endpoints","tag":"Deprecated","sidebarTitle":"Make Specific","href":"/api-reference/about-brand-specific"},{"group":"Audi","pages":[{"title":"Audi: Charge Status","sidebarTitle":"Charge","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge","href":"/api-reference/audi/get-charge"}]},{"group":"Chevrolet and Cadillac","pages":[{"title":"Voltage","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/voltmeter","href":"/api-reference/gm/get-charge-voltmeter"},{"title":"Charge Completion Time","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/completion","href":"/api-reference/gm/get-charge-completion-time"}]},{"group":"BMW and MINI","pages":[{"title":"Charge Records","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/records","href":"/api-reference/bmw/get-charge-records"}]},{"group":"Nissan","pages":[{"title":"Charge Schedule","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/schedule","href":"/api-reference/nissan/get-charge-schedule"}]},{"group":"Tesla","pages":[{"title":"Extended Vehicle Info","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/attributes","href":"/api-reference/tesla/get-ext-vehicle-info"},{"title":"User Access","sidebarTitle":"User Access","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/user/access","href":"/api-reference/tesla/get-user-access"},{"title":"Vehicle Status","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/status","href":"/api-reference/tesla/get-vehicle-status"},{"title":"Tesla: Battery Status","sidebarTitle":"Battery","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/battery","href":"/api-reference/tesla/get-battery"},{"title":"Tesla: Charge Status","sidebarTitle":"Charge","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge","href":"/api-reference/tesla/get-charge"},{"title":"Charge Completion Time","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/completion","href":"/api-reference/tesla/get-charge-completion-time"},{"title":"Charge Billing Records","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/records/billing","href":"/api-reference/tesla/get-charge-records-billing"},{"title":"Charge Schedule","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/schedule","href":"/api-reference/tesla/get-charge-schedule"},{"title":"Charge Schedule","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/schedule","href":"/api-reference/tesla/set-charge-schedule"},{"title":"Wattage","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/wattmeter","href":"/api-reference/tesla/get-charge-wattmeter"},{"title":"Voltage","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/voltmeter","href":"/api-reference/tesla/get-charge-voltmeter"},{"title":"Amperage","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/ammeter","href":"/api-reference/tesla/get-charge-ammeter"},{"title":"Exterior Temperature","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/thermometer/exterior","href":"/api-reference/tesla/get-exterior-temperature"},{"title":"Interior Temperature","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/thermometer/interior","href":"/api-reference/tesla/get-interior-temperature"},{"title":"Speed","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/speedometer","href":"/api-reference/tesla/get-speedometer"},{"title":"Cabin Climate","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/climate/cabin","href":"/api-reference/tesla/get-cabin"},{"title":"Defroster","api":"GET https://api.smartcar.com/v2.0/vehicles/{is}/{make}/climate/defroster","href":"/api-reference/tesla/get-defroster"},{"title":"Steering Heater","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/climate/steering_wheel","href":"/api-reference/tesla/get-steering-heater"},{"title":"Migration Status","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/migration","href":"/api-reference/tesla/get-migration-status"},{"title":"Virtual Key Status","api":"GET https://api.smartcar.com/v2.0/vehicles/{id}/{make}/virtual_key","href":"/api-reference/tesla/get-virtual-key-status"},{"title":"Charge Port","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/{make}/charge/charge_port_door","href":"/api-reference/tesla/control-charge-port"}]}]}]}]},{"group":"Vehicle Commands (Legacy)","pages":[{"title":"Charge Limit","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/charge/limit","href":"/api-reference/evs/set-charge-limit"},{"title":"Start \u0026 Stop Charge","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/charge","href":"/api-reference/evs/control-charge"},{"title":"Lock \u0026 Unlock","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/security","playground":"none","href":"/api-reference/control-lock-unlock"},{"title":"Send Destination","api":"POST https://api.smartcar.com/v2.0/vehicles/{id}/navigation/destination","playground":"none","href":"/api-reference/send-destination-to-vehicle"}]},{"group":"Management API (Legacy)","pages":[{"title":"Management API Overview","href":"/api-reference/management-api-intro"},{"title":"Vehicle Connections","api":"GET https://management.smartcar.com/v2.0/management/connections","href":"/api-reference/management/get-vehicle-connections"},{"title":"Vehicle Connections","api":"DELETE https://management.smartcar.com/v2.0/management/connections","href":"/api-reference/management/delete-vehicle-connections"}]},{"group":"Compatibility API (Legacy)","pages":[{"title":"By VIN (Deprecated)","sidebarTitle":"By VIN","api":"GET https://api.smartcar.com/v2.0/compatibility","tag":"deprecated","href":"/api-reference/compatibility/by-vin"},{"title":"By Region and Make","api":"GET https://api.smartcar.com/v2.0/compatibility/matrix","href":"/api-reference/compatibility/by-region-and-make"}]}]},{"tab":"Vehicle Signals","pages":[{"title":"Vehicle Signals","href":"/api-reference/signals/schema"}]},{"tab":"Help Center","pages":[{"title":"Help Center","href":"/help/what-is-smartcar"}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/changelog/latest"}]}]},"basePath":"","title":"API Authentication Overview - smartcar","buildId":"dpl_6cCEiK8XNNvaLBBkWzcBhdE9QfLC","deploymentId":"dpl_6cCEiK8XNNvaLBBkWzcBhdE9QfLC","dynamics":[],"chunks":[]}