Returns job stats for the authenticated mechanic.
When start and/or upto are provided, jobs_completed and earnings
are scoped to completed jobs in that date range.
Without a range they reflect all-time totals. avg_rating and
total_ratings are always lifetime values from the profile.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"MechZie API","description":"Internal API documentation for the MechZie roadside mechanic dispatch service","colors":{"primary":"#FF5500","light":"#FF7733","dark":"#CC4400"},"logo":{"light":"https://mintcdn.com/mechzapp/AW5e4c-ZxQ_CiOZ1/public/logo/mechzie-logo.png?fit=max\u0026auto=format\u0026n=AW5e4c-ZxQ_CiOZ1\u0026q=85\u0026s=0810304356723e03968d9e3f18cbfcbc","dark":"https://mintcdn.com/mechzapp/AW5e4c-ZxQ_CiOZ1/public/logo/mechzie-logo.png?fit=max\u0026auto=format\u0026n=AW5e4c-ZxQ_CiOZ1\u0026q=85\u0026s=0810304356723e03968d9e3f18cbfcbc"},"favicon":"https://mintlify.s3.us-west-1.amazonaws.com/mechzapp/favicon.png","background":{"decoration":"gradient"},"navbar":{"links":[{"href":"mailto:support@mechzie.in","label":"Support"}]},"footer":{"socials":{"github":"https://github.com/MechZie"}},"contextual":{"options":["copy","view","chatgpt","claude","perplexity","mcp","cursor","vscode"],"display":"header"},"interaction":{"drilldown":false},"metadata":{"timestamp":false},"styling":{"latex":false},"navigation":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/MechZie"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"mechzapp","hasAudioNarration":false,"actualSubdomain":"mechzapp","customDomains":["internal.mechzie.in"],"gitSource":{"type":"github","owner":"mechzie","repo":"mechzie-api","deployBranch":"dev","contentDirectory":"mintlify-docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6aad0d1e3487b42e1d562d36","collectionId":"627dcf6e-29e0-4ff4-973f-2ef1ebc4c62b","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6aad0d1e3487b42e1d562d36"},"feedback":{"thumbs":true,"agentFeedback":true},"entitlements":{},"buildId":"6aad0d1e3487b42e1d562d36","clientVersion":"0.0.4067","searchFilterCounts":[{"language":"default","tag":"API Reference","count":99},{"language":"default","tag":"Documentation","count":16},{"language":"default","tag":"admin","count":15},{"language":"default","tag":"jobs","count":15},{"language":"default","tag":"Guides","count":12},{"language":"default","tag":"wallet","count":11},{"language":"default","tag":"mechanics","count":9},{"language":"default","tag":"payments","count":6},{"language":"default","tag":"auth","count":5},{"language":"default","tag":"call","count":5}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true},"basePath":"/docs","hasChatPermissions":false,"hasWebMcpPermissions":false,"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":"rbac-expansion","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":"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":"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},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":"#navbar img{width:85px!important;max-width:none!important;height:auto!important}#navbar{height:72px!important}"}],"page":{"pagePath":"api-reference/mechanics/get-mechanic-statistics","slug":"/api-reference/mechanics/get-mechanic-statistics","pageMetadata":{"title":"Get mechanic statistics","description":"Returns job stats for the authenticated mechanic.\nWhen `start` and/or `upto` are provided, `jobs_completed` and `earnings`\nare scoped to completed jobs in that date range.\nWithout a range they reflect all-time totals. `avg_rating` and\n`total_ratings` are always lifetime values from the profile.\n","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mechanics/me/stats","href":"/api-reference/mechanics/get-mechanic-statistics","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_components.p, {\n children: [\"Returns job stats for the authenticated mechanic.\\nWhen \", _jsx(_components.code, {\n children: \"start\"\n }), \" and/or \", _jsx(_components.code, {\n children: \"upto\"\n }), \" are provided, \", _jsx(_components.code, {\n children: \"jobs_completed\"\n }), \" and \", _jsx(_components.code, {\n children: \"earnings\"\n }), \"\\nare scoped to completed jobs in that date range.\\nWithout a range they reflect all-time totals. \", _jsx(_components.code, {\n children: \"avg_rating\"\n }), \" and\\n\", _jsx(_components.code, {\n children: \"total_ratings\"\n }), \" are always lifetime values from the profile.\"]\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}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"Get mechanic statistics","description":"Returns job stats for the authenticated mechanic.\nWhen `start` and/or `upto` are provided, `jobs_completed` and `earnings`\nare scoped to completed jobs in that date range.\nWithout a range they reflect all-time totals. `avg_rating` and\n`total_ratings` are always lifetime values from the profile.\n","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mechanics/me/stats","href":"/api-reference/mechanics/get-mechanic-statistics","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["mechanics"],"summary":"Get mechanic statistics","description":"Returns job stats for the authenticated mechanic.\nWhen `start` and/or `upto` are provided, `jobs_completed` and `earnings`\nare scoped to completed jobs in that date range.\nWithout a range they reflect all-time totals. `avg_rating` and\n`total_ratings` are always lifetime values from the profile.\n","security":["b663aa96-2127-4df9-8845-81775adb80aa"],"parameters":["2905917e-809d-4f4f-8533-dc0c42153d13","1f1b6a2b-1290-4e78-9603-99d82808e6fd"],"responses":{"200":"b4146f61-346d-451e-8346-cd7b96357e02","401":"672d291c-ed68-4ae3-a989-47e78f9d8c2b","403":"ffd05a50-2e6e-42a5-ad4c-7cd47fe6d700","422":"b8e11e06-dc4d-4c76-aaef-62319bd1ba14"},"method":"get","type":"path","servers":["b829669c-57b9-4b5d-8c81-aa7f69c011f1","53cd5873-72c5-4846-ac7b-51b78d0299db"],"path":"/mechanics/me/stats","baseUrlOptions":["http://localhost:3000","https://mechzie-api-399967621389.asia-south1.run.app/api/v1"],"title":"Get mechanic statistics","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"2905917e-809d-4f4f-8533-dc0c42153d13":{"name":"start","in":"query","required":false,"schema":{"type":"string","format":"date-time","isRequired":false,"description":"Range start — ISO 8601 datetime (inclusive). Filters completed_at >= start.","uniqueKey":"","typeLabel":"string\u003cdate-time>"},"description":"Range start — ISO 8601 datetime (inclusive). Filters completed_at >= start.","example":"2025-01-01T00:00:00.000Z"},"1f1b6a2b-1290-4e78-9603-99d82808e6fd":{"name":"upto","in":"query","required":false,"schema":{"type":"string","format":"date-time","isRequired":false,"description":"Range end — ISO 8601 datetime (inclusive). Filters completed_at \u003c= upto.","uniqueKey":"","typeLabel":"string\u003cdate-time>"},"description":"Range end — ISO 8601 datetime (inclusive). Filters completed_at \u003c= upto.","example":"2025-03-31T23:59:59.999Z"}},"responses":{"b4146f61-346d-451e-8346-cd7b96357e02":{"description":"Stats returned","content":{"application/json":{"schema":{"type":"object","required":["data"],"properties":{"data":{"type":"object","required":["jobs_completed","earnings","avg_rating","total_ratings","is_available","status","start","upto"],"properties":{"jobs_completed":{"type":"integer","description":"Number of completed jobs in the requested range (or all-time).","example":12,"isRequired":true,"uniqueKey":"data.jobs_completed","typeLabel":"integer"},"earnings":{"type":"number","format":"float","description":"Sum of final_price for completed jobs in the requested range.","example":4850.5,"isRequired":true,"uniqueKey":"data.earnings","typeLabel":"number\u003cfloat>"},"avg_rating":{"type":"number","format":"float","description":"Lifetime average rating (0–5).","example":4.7,"isRequired":true,"uniqueKey":"data.avg_rating","typeLabel":"number\u003cfloat>"},"total_ratings":{"type":"integer","description":"Lifetime total number of ratings received.","example":23,"isRequired":true,"uniqueKey":"data.total_ratings","typeLabel":"integer"},"is_available":{"type":"boolean","description":"Whether the mechanic is currently online/available.","example":true,"isRequired":true,"uniqueKey":"data.is_available","typeLabel":"boolean"},"status":{"type":"string","enum":["pending","verified","rejected","suspended"],"description":"Mechanic verification status.","example":"verified","isRequired":true,"uniqueKey":"data.status","typeLabel":"enum\u003cstring>"},"start":{"oneOf":[{"type":"string","format":"date-time","description":"Applied range start (echoed from query param), null if not provided.","example":"2025-01-01T00:00:00.000Z","isRequired":true,"uniqueKey":"data.start.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Applied range start (echoed from query param), null if not provided.","example":"2025-01-01T00:00:00.000Z","isRequired":true,"uniqueKey":"data.start.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.start","typeLabel":"string\u003cdate-time> | null"},"upto":{"oneOf":[{"type":"string","format":"date-time","description":"Applied range end (echoed from query param), null if not provided.","example":"2025-03-31T23:59:59.999Z","isRequired":true,"uniqueKey":"data.upto.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","format":"date-time","description":"Applied range end (echoed from query param), null if not provided.","example":"2025-03-31T23:59:59.999Z","isRequired":true,"uniqueKey":"data.upto.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"data.upto","typeLabel":"string\u003cdate-time> | null"}},"isRequired":true,"uniqueKey":"data","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"data":{"jobs_completed":12,"earnings":4850.5,"avg_rating":4.7,"total_ratings":23,"is_available":true,"status":"verified","start":"2025-01-01T00:00:00.000Z","upto":"2025-03-31T23:59:59.999Z"}}}},"exampleType":"generated"}},"exampleType":"generated"},"672d291c-ed68-4ae3-a989-47e78f9d8c2b":{"description":"Missing or invalid authentication token","content":{"application/json":{"schema":{"type":"object","description":"Standard error envelope returned by all error responses","properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code (e.g. NOT_FOUND, UNAUTHORIZED)","example":"NOT_FOUND","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the error","example":"Resource not found","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"errors":{"type":"object","description":"Field-level validation errors (only present on 422)","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"error.errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"error.errors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"error.errors","typeLabel":"object"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"NOT_FOUND","message":"Resource not found","errors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"ffd05a50-2e6e-42a5-ad4c-7cd47fe6d700":{"description":"Insufficient permissions","content":{"application/json":{"schema":{"type":"object","description":"Standard error envelope returned by all error responses","properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code (e.g. NOT_FOUND, UNAUTHORIZED)","example":"NOT_FOUND","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the error","example":"Resource not found","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"errors":{"type":"object","description":"Field-level validation errors (only present on 422)","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"error.errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"error.errors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"error.errors","typeLabel":"object"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"NOT_FOUND","message":"Resource not found","errors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"},"b8e11e06-dc4d-4c76-aaef-62319bd1ba14":{"description":"Request validation failed","content":{"application/json":{"schema":{"type":"object","description":"Standard error envelope returned by all error responses","properties":{"success":{"type":"boolean","example":false,"isRequired":true,"uniqueKey":"success","typeLabel":"boolean"},"error":{"type":"object","properties":{"code":{"type":"string","description":"Machine-readable error code (e.g. NOT_FOUND, UNAUTHORIZED)","example":"NOT_FOUND","isRequired":true,"uniqueKey":"error.code","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the error","example":"Resource not found","isRequired":true,"uniqueKey":"error.message","typeLabel":"string"},"errors":{"type":"object","description":"Field-level validation errors (only present on 422)","additionalProperties":{"type":"array","items":{"type":"string","uniqueKey":"error.errors.additionalProperties.items.[INDEX]","typeLabel":"string"},"uniqueKey":"error.errors.additionalProperties","typeLabel":"string[]"},"uniqueKey":"error.errors","typeLabel":"object"}},"required":["code","message"],"isRequired":true,"uniqueKey":"error","typeLabel":"object"}},"required":["success","error"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"success":false,"error":{"code":"NOT_FOUND","message":"Resource not found","errors":{}}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"b663aa96-2127-4df9-8845-81775adb80aa":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"JWT access token from /auth/verify-otp","scopes":[]}}},"servers":{"b829669c-57b9-4b5d-8c81-aa7f69c011f1":{"url":"http://localhost:3000","description":"Local development"},"53cd5873-72c5-4846-ac7b-51b78d0299db":{"url":"https://mechzie-api-399967621389.asia-south1.run.app/api/v1","description":"Production"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"JWT access token from /auth/verify-otp","scopes":[]},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"JWT access token from /auth/verify-otp","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"mechzapp","siteName":"MechZie API","title":"Get mechanic statistics - MechZie API","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-09-18T10:06:35.718Z","originalFileLocation":"api-reference/mechanics/get-mechanic-statistics.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=\"Returns job stats for the authenticated mechanic. When start and/or upto are provided, jobs_completed and earnings are scoped to completed jobs in that date range. Without a range they reflect all-time totals. avg_rating and total_ratings are always lifetime values from the profile.\">\u003cmeta data-mint-head name=\"application-name\" content=\"MechZie API\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/mechzapp/favicon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/mechzapp/favicon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/mechzapp/favicon.png\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/png\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/mechzapp/favicon.png\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get mechanic statistics - MechZie API\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns job stats for the authenticated mechanic. When start and/or upto are provided, jobs_completed and earnings are scoped to completed jobs in that date range. Without a range they reflect all-time totals. avg_rating and total_ratings are always lifetime values from the profile.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"MechZie API\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://mechzapp.mintlify.app/_mintlify/api/og/v2?division=mechanics\u0026amp;title=Get+mechanic+statistics\u0026amp;description=Returns+job+stats+for+the+authenticated+mechanic.%0AWhen+%60start%60+and%2For+%60upto%60+are+provided%2C+%60jobs_completed%60+and+%60earnings%60%0Aare+scoped+to+completed+jobs+in+that+\u0026amp;theme=b17b2ab41e1e8981da9bb6bd\u0026amp;signature=de19155afd6a66eccc23fb7eaf72d8a29a05a55ae61088b8ea450da56cb0792b\">\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=\"Get mechanic statistics - MechZie API\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns job stats for the authenticated mechanic. When start and/or upto are provided, jobs_completed and earnings are scoped to completed jobs in that date range. Without a range they reflect all-time totals. avg_rating and total_ratings are always lifetime values from the profile.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://mechzapp.mintlify.app/_mintlify/api/og/v2?division=mechanics\u0026amp;title=Get+mechanic+statistics\u0026amp;description=Returns+job+stats+for+the+authenticated+mechanic.%0AWhen+%60start%60+and%2For+%60upto%60+are+provided%2C+%60jobs_completed%60+and+%60earnings%60%0Aare+scoped+to+completed+jobs+in+that+\u0026amp;theme=b17b2ab41e1e8981da9bb6bd\u0026amp;signature=de19155afd6a66eccc23fb7eaf72d8a29a05a55ae61088b8ea450da56cb0792b\">\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=\"https://mintlify.s3.us-west-1.amazonaws.com/mechzapp/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"MechZie API\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#FF5500\">\u003clink data-mint-head rel=\"canonical\" href=\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics\">\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/mechanics/get-mechanic-statistics.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://internal.mechzie.in/#organization\",\"name\":\"MechZie API\",\"url\":\"https://internal.mechzie.in\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/mechzapp/AW5e4c-ZxQ_CiOZ1/public/logo/mechzie-logo.png?fit=max\u0026auto=format\u0026n=AW5e4c-ZxQ_CiOZ1\u0026q=85\u0026s=0810304356723e03968d9e3f18cbfcbc\"}},{\"@type\":\"WebSite\",\"@id\":\"https://internal.mechzie.in/docs#website\",\"name\":\"MechZie API\",\"url\":\"https://internal.mechzie.in/docs\",\"publisher\":{\"@id\":\"https://internal.mechzie.in/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics#webpage\",\"url\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics\",\"name\":\"Get mechanic statistics\",\"description\":\"Returns job stats for the authenticated mechanic. When start and/or upto are provided, jobs_completed and earnings are scoped to completed jobs in that date range. Without a range they reflect all-time totals. avg_rating and total_ratings are always lifetime values from the profile.\",\"dateModified\":\"2026-09-18T10:06:35.718Z\",\"isPartOf\":{\"@id\":\"https://internal.mechzie.in/docs#website\"},\"breadcrumb\":{\"@id\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"mechanics\",\"item\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-public-mechanic-profile\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get mechanic statistics\",\"item\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics#apireference\",\"headline\":\"Get mechanic statistics\",\"name\":\"Get mechanic statistics\",\"description\":\"Returns job stats for the authenticated mechanic. When start and/or upto are provided, jobs_completed and earnings are scoped to completed jobs in that date range. Without a range they reflect all-time totals. avg_rating and total_ratings are always lifetime values from the profile.\",\"url\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics\",\"mainEntityOfPage\":{\"@id\":\"https://internal.mechzie.in/docs/api-reference/mechanics/get-mechanic-statistics#webpage\"},\"dateModified\":\"2026-09-18T10:06:35.718Z\",\"publisher\":{\"@id\":\"https://internal.mechzie.in/#organization\"},\"isPartOf\":{\"@id\":\"https://internal.mechzie.in/docs#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"MechZie API\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"MechZie API","nav":{"global":{"anchors":[{"anchor":"GitHub","icon":"github","href":"https://github.com/MechZie"}]},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"API Reference","groups":[{"group":"health","pages":[{"title":"Liveness check","deprecated":null,"version":null,"openapi":"/openapi.yaml get /health","href":"/api-reference/health/liveness-check"},{"title":"Readiness check with DB and Redis probes","deprecated":null,"version":null,"openapi":"/openapi.yaml get /health/ready","href":"/api-reference/health/readiness-check-with-db-and-redis-probes"}]},{"group":"auth","pages":[{"title":"Exchange Firebase ID token for JWT pair","deprecated":null,"version":null,"openapi":"/openapi.yaml post /auth/verify-otp","href":"/api-reference/auth/exchange-firebase-id-token-for-jwt-pair"},{"title":"Rotate refresh token and get new access token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /auth/refresh","href":"/api-reference/auth/rotate-refresh-token-and-get-new-access-token"},{"title":"Revoke refresh token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /auth/logout","href":"/api-reference/auth/revoke-refresh-token"},{"title":"Admin email login via Firebase","deprecated":null,"version":null,"openapi":"/openapi.yaml post /auth/admin-login","href":"/api-reference/auth/admin-email-login-via-firebase"},{"title":"Complete admin account setup via invite token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /auth/complete-admin-invite","href":"/api-reference/auth/complete-admin-account-setup-via-invite-token"}]},{"group":"users","pages":[{"title":"Get current user profile","deprecated":null,"version":null,"openapi":"/openapi.yaml get /users/me","href":"/api-reference/users/get-current-user-profile"},{"title":"Update current user profile","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /users/me","href":"/api-reference/users/update-current-user-profile"},{"title":"Get user by ID (admin only)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /users/{id}","href":"/api-reference/users/get-user-by-id-admin-only"},{"title":"List emergency contacts","deprecated":null,"version":null,"openapi":"/openapi.yaml get /users/me/emergency-contacts","href":"/api-reference/users/list-emergency-contacts"},{"title":"Upsert emergency contacts (replace all, max 2)","deprecated":null,"version":null,"openapi":"/openapi.yaml put /users/me/emergency-contacts","href":"/api-reference/users/upsert-emergency-contacts-replace-all-max-2"}]},{"group":"vehicles","pages":[{"title":"List own vehicles","deprecated":null,"version":null,"openapi":"/openapi.yaml get /vehicles","href":"/api-reference/vehicles/list-own-vehicles"},{"title":"Add new vehicle","deprecated":null,"version":null,"openapi":"/openapi.yaml post /vehicles","href":"/api-reference/vehicles/add-new-vehicle"},{"title":"Get specific vehicle","deprecated":null,"version":null,"openapi":"/openapi.yaml get /vehicles/{id}","href":"/api-reference/vehicles/get-specific-vehicle"},{"title":"Delete vehicle","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /vehicles/{id}","href":"/api-reference/vehicles/delete-vehicle"},{"title":"Update vehicle","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /vehicles/{id}","href":"/api-reference/vehicles/update-vehicle"}]},{"group":"mechanics","pages":[{"title":"Get public mechanic profile","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mechanics/{id}","href":"/api-reference/mechanics/get-public-mechanic-profile"},{"title":"Submit mechanic profile, vehicle types, and documents for verification","deprecated":null,"version":null,"openapi":"/openapi.yaml post /mechanics/register","href":"/api-reference/mechanics/submit-mechanic-profile-vehicle-types-and-documents-for-verification"},{"title":"Get own mechanic profile","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mechanics/me","href":"/api-reference/mechanics/get-own-mechanic-profile"},{"title":"Update mechanic vehicle type preferences","deprecated":null,"version":null,"openapi":"/openapi.yaml put /mechanics/vehicle-types","href":"/api-reference/mechanics/update-mechanic-vehicle-type-preferences"},{"title":"Update mechanic service category selection","deprecated":null,"version":null,"openapi":"/openapi.yaml put /mechanics/service-categories","href":"/api-reference/mechanics/update-mechanic-service-category-selection"},{"title":"Toggle online/offline status","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /mechanics/availability","href":"/api-reference/mechanics/toggle-onlineoffline-status"},{"title":"Update mechanic location (HTTP fallback)","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml patch /mechanics/location","href":"/api-reference/mechanics/update-mechanic-location-http-fallback"},{"title":"Get mechanic statistics","deprecated":null,"version":null,"openapi":"/openapi.yaml get /mechanics/me/stats","href":"/api-reference/mechanics/get-mechanic-statistics"},{"title":"List own uploaded documents","description":null,"deprecated":null,"version":null,"openapi":"/openapi.yaml get /mechanics/me/documents","href":"/api-reference/mechanics/list-own-uploaded-documents"}]},{"group":"jobs","pages":[{"title":"List own jobs (paginated)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /jobs","href":"/api-reference/jobs/list-own-jobs-paginated"},{"title":"Create job and trigger dispatch (customer only)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs","href":"/api-reference/jobs/create-job-and-trigger-dispatch-customer-only"},{"title":"Get job details","deprecated":null,"version":null,"openapi":"/openapi.yaml get /jobs/{id}","href":"/api-reference/jobs/get-job-details"},{"title":"Mechanic accepts job offer","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/accept","href":"/api-reference/jobs/mechanic-accepts-job-offer"},{"title":"Mechanic declines job offer","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/decline","href":"/api-reference/jobs/mechanic-declines-job-offer"},{"title":"Mechanic marks en route","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/en-route","href":"/api-reference/jobs/mechanic-marks-en-route"},{"title":"Mechanic marks arrived","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/arrive","href":"/api-reference/jobs/mechanic-marks-arrived"},{"title":"Mechanic marks work started","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/start","href":"/api-reference/jobs/mechanic-marks-work-started"},{"title":"Mechanic marks job complete","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/complete","href":"/api-reference/jobs/mechanic-marks-job-complete"},{"title":"Cancel job","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /jobs/{id}/cancel","href":"/api-reference/jobs/cancel-job"},{"title":"List line items for a job","deprecated":null,"version":null,"openapi":"/openapi.yaml get /jobs/{id}/line-items","href":"/api-reference/jobs/list-line-items-for-a-job"},{"title":"Add line item (mechanic only)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/line-items","href":"/api-reference/jobs/add-line-item-mechanic-only"},{"title":"Remove line item (mechanic only)","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /jobs/{id}/line-items/{itemId}","href":"/api-reference/jobs/remove-line-item-mechanic-only"},{"title":"Customer or admin disputes a completed job","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/dispute","href":"/api-reference/jobs/customer-or-admin-disputes-a-completed-job"},{"title":"Admin resolves a disputed job","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{id}/resolve","href":"/api-reference/jobs/admin-resolves-a-disputed-job"}]},{"group":"comms","pages":[{"title":"Get or create a 100ms audio call room and return an auth token","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{jobId}/comms/token","href":"/api-reference/comms/get-or-create-a-100ms-audio-call-room-and-return-an-auth-token"},{"title":"Get chat history for a job (paginated, oldest-first)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /jobs/{jobId}/comms/messages","href":"/api-reference/comms/get-chat-history-for-a-job-paginated-oldest-first"},{"title":"Send a chat message (REST fallback)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{jobId}/comms/messages","href":"/api-reference/comms/send-a-chat-message-rest-fallback"}]},{"group":"tracking","pages":[{"title":"Get job tracking info (HTTP polling fallback)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /tracking/jobs/{id}","href":"/api-reference/tracking/get-job-tracking-info-http-polling-fallback"}]},{"group":"payments","pages":[{"title":"Create Razorpay order (customer only)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /payments/create-order","href":"/api-reference/payments/create-razorpay-order-customer-only"},{"title":"Verify Razorpay signature (optimistic UI)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /payments/verify","href":"/api-reference/payments/verify-razorpay-signature-optimistic-ui"},{"title":"Razorpay webhook (no auth)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /payments/webhook","href":"/api-reference/payments/razorpay-webhook-no-auth"},{"title":"Check for outstanding cancellation fees","deprecated":null,"version":null,"openapi":"/openapi.yaml get /payments/unpaid-fees","href":"/api-reference/payments/check-for-outstanding-cancellation-fees"},{"title":"Get payment status for a job","deprecated":null,"version":null,"openapi":"/openapi.yaml get /payments/{jobId}","href":"/api-reference/payments/get-payment-status-for-a-job"},{"title":"Check for outstanding cancellation fees (alias)","deprecated":true,"version":null,"openapi":"/openapi.yaml get /payments/outstanding-fees","href":"/api-reference/payments/check-for-outstanding-cancellation-fees-alias"}]},{"group":"wallet","pages":[{"title":"Get wallet balance summary","deprecated":null,"version":null,"openapi":"/openapi.yaml get /wallet/summary","href":"/api-reference/wallet/get-wallet-balance-summary"},{"title":"List wallet transactions","deprecated":null,"version":null,"openapi":"/openapi.yaml get /wallet/transactions","href":"/api-reference/wallet/list-wallet-transactions"},{"title":"List payout history","deprecated":null,"version":null,"openapi":"/openapi.yaml get /wallet/payouts","href":"/api-reference/wallet/list-payout-history"},{"title":"List UPI accounts","deprecated":null,"version":null,"openapi":"/openapi.yaml get /wallet/upi","href":"/api-reference/wallet/list-upi-accounts"},{"title":"Add and verify a UPI account","deprecated":null,"version":null,"openapi":"/openapi.yaml post /wallet/upi","href":"/api-reference/wallet/add-and-verify-a-upi-account"},{"title":"Admin approve UPI account","deprecated":null,"version":null,"openapi":"/openapi.yaml post /wallet/upi/{upiAccountId}/approve","href":"/api-reference/wallet/admin-approve-upi-account"},{"title":"Raise a dispute","deprecated":null,"version":null,"openapi":"/openapi.yaml post /wallet/disputes","href":"/api-reference/wallet/raise-a-dispute"},{"title":"Get disputes for a job","deprecated":null,"version":null,"openapi":"/openapi.yaml get /wallet/disputes/job/{jobId}","href":"/api-reference/wallet/get-disputes-for-a-job"},{"title":"Resolve a dispute (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /wallet/disputes/{disputeId}/resolve","href":"/api-reference/wallet/resolve-a-dispute-admin"},{"title":"Initiate a refund (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /wallet/refunds","href":"/api-reference/wallet/initiate-a-refund-admin"},{"title":"List refunds for a payment","deprecated":null,"version":null,"openapi":"/openapi.yaml get /wallet/refunds/{paymentId}","href":"/api-reference/wallet/list-refunds-for-a-payment"}]},{"group":"ratings","pages":[{"title":"Submit a rating","deprecated":null,"version":null,"openapi":"/openapi.yaml post /ratings","href":"/api-reference/ratings/submit-a-rating"},{"title":"Get mechanic ratings","deprecated":null,"version":null,"openapi":"/openapi.yaml get /ratings/mechanic/{mechanicProfileId}","href":"/api-reference/ratings/get-mechanic-ratings"},{"title":"Get both ratings for a job","deprecated":null,"version":null,"openapi":"/openapi.yaml get /ratings/job/{jobId}","href":"/api-reference/ratings/get-both-ratings-for-a-job"}]},{"group":"service-categories","pages":[{"title":"List categories (filter by vehicle type)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /service-categories","href":"/api-reference/service-categories/list-categories-filter-by-vehicle-type"},{"title":"Create new category (admin only)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /service-categories","href":"/api-reference/service-categories/create-new-category-admin-only"},{"title":"Get specific category","deprecated":null,"version":null,"openapi":"/openapi.yaml get /service-categories/{id}","href":"/api-reference/service-categories/get-specific-category"},{"title":"Delete category (admin only)","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /service-categories/{id}","href":"/api-reference/service-categories/delete-category-admin-only"},{"title":"Update category (admin only)","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /service-categories/{id}","href":"/api-reference/service-categories/update-category-admin-only"}]},{"group":"notifications","pages":[{"title":"List notifications (paginated)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /notifications","href":"/api-reference/notifications/list-notifications-paginated"},{"title":"Register/update FCM push token","deprecated":null,"version":null,"openapi":"/openapi.yaml put /notifications/fcm-token","href":"/api-reference/notifications/registerupdate-fcm-push-token"},{"title":"Mark all notifications as read","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /notifications/read-all","href":"/api-reference/notifications/mark-all-notifications-as-read"},{"title":"Mark single notification as read","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /notifications/{id}/read","href":"/api-reference/notifications/mark-single-notification-as-read"}]},{"group":"uploads","pages":[{"title":"Generate S3 presigned upload URL","deprecated":null,"version":null,"openapi":"/openapi.yaml post /uploads/presigned-url","href":"/api-reference/uploads/generate-s3-presigned-upload-url"}]},{"group":"admin","pages":[{"title":"Get admin dashboard stats","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/dashboard","href":"/api-reference/admin/get-admin-dashboard-stats"},{"title":"List all users","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/users","href":"/api-reference/admin/list-all-users"},{"title":"List all mechanics","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/mechanics","href":"/api-reference/admin/list-all-mechanics"},{"title":"Verify/reject mechanic","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /admin/mechanics/{id}/verify","href":"/api-reference/admin/verifyreject-mechanic"},{"title":"Get mechanic documents","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/mechanics/{id}/documents","href":"/api-reference/admin/get-mechanic-documents"},{"title":"Review document","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /admin/documents/{id}/review","href":"/api-reference/admin/review-document"},{"title":"List all jobs","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/jobs","href":"/api-reference/admin/list-all-jobs"},{"title":"Get job detail","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/jobs/{id}","href":"/api-reference/admin/get-job-detail"},{"title":"Payment aggregate stats","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/payments/stats","href":"/api-reference/admin/payment-aggregate-stats"},{"title":"List payments (paginated)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/payments","href":"/api-reference/admin/list-payments-paginated"},{"title":"Initiate refund","deprecated":null,"version":null,"openapi":"/openapi.yaml post /admin/payments/{id}/refund","href":"/api-reference/admin/initiate-refund"},{"title":"List all service categories (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml get /admin/service-categories","href":"/api-reference/admin/list-all-service-categories-admin"},{"title":"Create service category (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /admin/service-categories","href":"/api-reference/admin/create-service-category-admin"},{"title":"Delete service category (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml delete /admin/service-categories/{id}","href":"/api-reference/admin/delete-service-category-admin"},{"title":"Update service category (admin)","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /admin/service-categories/{id}","href":"/api-reference/admin/update-service-category-admin"}]},{"group":"super-admin","pages":[{"title":"List all admin invites","deprecated":null,"version":null,"openapi":"/openapi.yaml get /super-admin/invites","href":"/api-reference/super-admin/list-all-admin-invites"},{"title":"Create an admin invite","deprecated":null,"version":null,"openapi":"/openapi.yaml post /super-admin/invites","href":"/api-reference/super-admin/create-an-admin-invite"},{"title":"Revoke a pending admin invite","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /super-admin/invites/{id}/revoke","href":"/api-reference/super-admin/revoke-a-pending-admin-invite"},{"title":"Update a user's role","deprecated":null,"version":null,"openapi":"/openapi.yaml patch /super-admin/users/{id}/role","href":"/api-reference/super-admin/update-a-users-role"}]},{"group":"call","pages":[{"title":"Initiate a call (ring the other party)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{jobId}/call/initiate","href":"/api-reference/call/initiate-a-call-ring-the-other-party"},{"title":"Accept an incoming call (exchange nonce for HMS token)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{jobId}/call/accept","href":"/api-reference/call/accept-an-incoming-call-exchange-nonce-for-hms-token"},{"title":"Decline an incoming call","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{jobId}/call/decline","href":"/api-reference/call/decline-an-incoming-call"},{"title":"Cancel an outgoing call before answered","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{jobId}/call/cancel","href":"/api-reference/call/cancel-an-outgoing-call-before-answered"},{"title":"End an active call (hangup)","deprecated":null,"version":null,"openapi":"/openapi.yaml post /jobs/{jobId}/call/end","href":"/api-reference/call/end-an-active-call-hangup"}]}]}]},"basePath":"","title":"Get mechanic statistics - MechZie API","buildId":"dpl_9yaRmq8qi7yyMZn9oEWmKEdYMvGZ","deploymentId":"dpl_9yaRmq8qi7yyMZn9oEWmKEdYMvGZ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-Bsljvftq.js","utils-BEZX0tmN.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BrDD79Na.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-2c3Nf5XI.js","snippetPresets-CWWkg29k.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-SJmWKHmz.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-BYc8UL58.js","shallow-UTXCq4wY.js","getApiPlaygroundDisplay-D1ZcrmBl.js","CodeSnippet-CTS7L7R4.js","CodeSnippets-MsBYl-gd.js","Page-BxumJvVQ.js","getPastedJson-C_5Mq0uv.js","icon-D7sYgD4k.js","MethodPill-B7Q6uD_j.js","DuplicateIcon-DXGzB8u_.js","createIcon-UDYg_Gk8.js","DynamicMarkdown-BBrVIqs3.js","SectionHeading-BxanXFN4.js","axios-vUo_bRtp.js","Markdown-DAhL0GAo.js","clsx-BZ8NiN2w.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-CpdUkuDP.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-sMo3-CxC.js"]}