{"pageProps":{"source":{"compiledSource":"var h=Object.defineProperty,m=Object.defineProperties;var d=Object.getOwnPropertyDescriptors;var r=Object.getOwnPropertySymbols;var a=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable;var u=(e,o,t)=>o in e?h(e,o,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[o]=t,i=(e,o)=>{for(var t in o||(o={}))a.call(o,t)&&u(e,t,o[t]);if(r)for(var t of r(o))s.call(o,t)&&u(e,t,o[t]);return e},p=(e,o)=>m(e,d(o));var c=(e,o)=>{var t={};for(var n in e)a.call(e,n)&&o.indexOf(n)<0&&(t[n]=e[n]);if(e!=null&&r)for(var n of r(e))o.indexOf(n)<0&&s.call(e,n)&&(t[n]=e[n]);return t};const makeShortcode=e=>function(t){return console.warn(\"Component \"+e+\" was not imported, exported, or provided by MDXProvider as global scope\"),mdx(\"div\",i({},t))},ExternalLink=makeShortcode(\"ExternalLink\"),Link=makeShortcode(\"Link\"),layoutProps={},MDXLayout=\"wrapper\";function MDXContent(t){var n=t,{components:e}=n,o=c(n,[\"components\"]);return mdx(MDXLayout,p(i(i({},layoutProps),o),{components:e,mdxType:\"MDXLayout\"}),mdx(\"p\",null,mdx(\"img\",i({parentName:\"p\"},{src:\"/mock-ups/time-frame.png\",alt:\"Mock-up\"}))),mdx(\"br\",null),mdx(\"p\",null,`So far we have been working hard to roll out Apilytics for developers using\nthe most common programming langauges and frameworks out there, like JavaScript/TypeScript,\nPython, Node.js, Next.js, Django, FastAPI etc. We recognize that the amount of tooling\nout there is so large that it is going to take us some time build plug & play solutions\nfor all of them.`),mdx(\"p\",null,`Enter Apilytics API. Now you can monitor your APIs using Apilytics,\nregardless of what kind of stack you are running. Our API uses `,mdx(ExternalLink,{href:\"https://swagger.io/specification/\",mdxType:\"ExternalLink\"},\"OpenAPI specification\"),`\nand our `,mdx(Link,{href:routes.apiDocs,mdxType:\"Link\"},\"documentation\"),\" shows exactly how to use it.\"),mdx(\"br\",null),mdx(\"h4\",i({},{id:\"using-the-api\"}),mdx(\"a\",i({parentName:\"h4\"},{href:\"#using-the-api\"}),\"Using the API\"),\"\"),mdx(\"p\",null,`The purpose of the API is to act as an endpoint where you can send your API logs using the specified format.\nOur existing client middlewares already do this for you, but now that we have a public API, nothing stops you\nfrom implementing your own API client.`),mdx(\"p\",null,`You can choose which metrics and how often you want to log them.\nWe're constantly adding support for different kinds of API metrics but we already support\ncrucial stats like response times, request counts, endpoint specific metrics, and much more.\nOur `,mdx(Link,{href:routes.apiDocs,mdxType:\"Link\"},\"documentation\"),\" shows you up-to-date information about the metrics you can log and how to use them.\"),mdx(\"br\",null),mdx(\"h4\",i({},{id:\"using-existing-modules\"}),mdx(\"a\",i({parentName:\"h4\"},{href:\"#using-existing-modules\"}),\"Using our open source modules\"),\"\"),mdx(\"p\",null,`We're working towards adding an increasing amount of tools and support for new languages and frameworks,\nbut you can already use our open source core modules to implement your own API client to interact with our API.`),mdx(\"p\",null,`At the moment of writing this we have the core modules available for Node.js and Python environments,\nwhich you can find in our `,mdx(ExternalLink,{href:routes.github,mdxType:\"ExternalLink\"},\"GitHub\"),\".\"),mdx(\"br\",null),mdx(\"p\",null,\"Happy hacking! \\u{1F468}\\u200D\\u{1F4BB}\"),mdx(\"br\",null),mdx(\"p\",null,\"P.S. We're happy to help if there's anything we can do to help with using the API, just drop us a \",mdx(Link,{href:routes.contact,mdxType:\"Link\"},\"message\"),\".\"))}MDXContent.isMDXComponent=!0;\n","scope":{}},"data":{"title":"Announcing Apilytics API","description":"Apilytics API is now available and allows anyone to monitor their APIs with Apilytics regardless of their tech stack.","slug":"announcing-apilytics-api","author":"Markus Blomqvist","authorLink":"https://twitter.com/blomqma","excerpt":"So far we have been working hard to roll out Apilytics for developers using the most common programming langauges and frameworks out there, like JavaScript/TypeScript, Python, Node.js, Next.js, Django, FastAPI etc.\n","date":"2022-01-22"},"blogsData":[{"title":"Monitoring dynamic API routes","description":"Apilytics now supports dynamic API routes, meaning that you can easily combine any amount of dynamic URLs from your APIs.","slug":"monitoring-dynamic-api-routes","author":"Markus Blomqvist","authorLink":"https://twitter.com/blomqma","excerpt":"When it comes to monitoring endpoint specific data from your applications, the data becomes noisy as the amount of endpoints grows.","date":"2022-01-27"},{"title":"Announcing Apilytics API","description":"Apilytics API is now available and allows anyone to monitor their APIs with Apilytics regardless of their tech stack.","slug":"announcing-apilytics-api","author":"Markus Blomqvist","authorLink":"https://twitter.com/blomqma","excerpt":"So far we have been working hard to roll out Apilytics for developers using the most common programming langauges and frameworks out there, like JavaScript/TypeScript, Python, Node.js, Next.js, Django, FastAPI etc.\n","date":"2022-01-22"},{"title":"The problem with API monitoring","description":"This blog post shows you how to add monitoring using Apilytics to an example application built with Express.","slug":"problem-with-api-monitoring","author":"Markus Blomqvist","authorLink":"https://twitter.com/blomqma","excerpt":"Often times developers are proud of their newly created, shiny and beautiful APIs. But what if they don't have the time to analyze the real-life usage of their software?","date":"2022-01-16"}]},"__N_SSG":true}