0.0.2 • Published 3 months ago

mvp-activities v0.0.2

Weekly downloads
-
License
MIT
Repository
-
Last release
3 months ago

mvp-activities

A simple client to interact with the Microsoft MVP activities API (not official).

build npm

The main use case is to be used to automate the management (submissions, updates, etc.) of MVP activities.

For some usage examples check the examples directory.

Before getting started

Install the package with one of the following commands (based on your favourite package manager):

npm install mvp-activities
yarn add mvp-activities
pnpm add mvp-activities

Example usage

The following example lists all your submitted activities and submits a new one:

import { MVPActivitiesClient } from "mvp-activities"

// You'll need to get a token from the MVP activities website (see below) and your MVP email
// If you don't pass these parameters the client will try to look for them in the following environment variables:
// - `MVP_API_TOKEN`
// - `MVP_API_EMAIL`
const client = new MVPActivitiesClient(token, mvpEmail)

// Needed to initialize the client (it will fetch the user profile information needed for other requests)
await client.init()

// List all activities
const activities = await client.getSubmittedActivities()

for (const activity of activities) {
  console.log(`${activity.date.substring(0, 10)} - ${activity.title}`)
}

// Submit a new activity
const newActivity =  {
  activityTypeName: 'Blog',
  typeName: 'Blog',
  date: '2024-02-04T00:00:00.000Z',
  description: 'A new blog post',
  privateDescription: 'A new blog post',
  isPrivate: false,
  targetAudience: [
    'Developer',
    'IT Pro',
    'Technical Decision Maker',
    'Student',
  ],
  tenant: 'MVP',
  title: 'My new blog post',
  url: 'https://loige.co/some-blog-post',
  reach: 2000,
  quantity: 1,
  role: 'Author',
  technologyFocusArea: 'Web Development',
  additionalTechnologyAreas: ['Developer Tools', 'DevOps'],
  imageUrl: 'https://loige.co/og/some-blog-post.png',
}

const newActivityResult = await client.submitActivity(newActivity)
console.log(newActivityResult)

Get a token

  1. Go to your account in the MVP activities website
  2. Open the browser developer tools and go to the "Network" tab
  3. Filter requests by XHR / Ajax
  4. Visit the Activities/My Activities section
  5. Look for a request called Search and copy the token from the Authorization header from the request headers (make sure not to copy the Bearer prefix)

Contributing

Everyone is very welcome to contribute to this project. You can contribute just by submitting bugs or suggesting improvements by opening an issue on GitHub.

License

Licensed under MIT License. © Luciano Mammino.

0.0.2

3 months ago

0.0.1

3 months ago