# meego

Meego - JavaScript client for meego
API documentation for Meego Backend.
This SDK is automatically generated by the [Swagger Codegen](https://github.com/swagger-api/swagger-codegen) project:

- API version: 0.0.1
- Package version: 0.0.1
- Build package: io.swagger.codegen.languages.JavascriptClientCodegen
For more information, please visit [www.mustansirzia.com](www.mustansirzia.com)

## Installation

### For [Node.js](https://nodejs.org/)

#### npm

To publish the library as a [npm](https://www.npmjs.com/),
please follow the procedure in ["Publishing npm packages"](https://docs.npmjs.com/getting-started/publishing-npm-packages).

Then install it via:

```shell
npm install meego --save
```

##### Local development

To use the library locally without publishing to a remote npm registry, first install the dependencies by changing 
into the directory containing `package.json` (and this README). Let's call this `JAVASCRIPT_CLIENT_DIR`. Then run:

```shell
npm install
```

Next, [link](https://docs.npmjs.com/cli/link) it globally in npm with the following, also from `JAVASCRIPT_CLIENT_DIR`:

```shell
npm link
```

Finally, switch to the directory you want to use your meego from, and run:

```shell
npm link /path/to/<JAVASCRIPT_CLIENT_DIR>
```

You should now be able to `require('meego')` in javascript files from the directory you ran the last 
command above from.

#### git
#
If the library is hosted at a git repository, e.g.
https://github.com/YOUR_USERNAME/meego
then install it via:

```shell
    npm install YOUR_USERNAME/meego --save
```

### For browser

The library also works in the browser environment via npm and [browserify](http://browserify.org/). After following
the above steps with Node.js and installing browserify with `npm install -g browserify`,
perform the following (assuming *main.js* is your entry file, that's to say your javascript file where you actually 
use this library):

```shell
browserify main.js > bundle.js
```

Then include *bundle.js* in the HTML pages.

### Webpack Configuration

Using Webpack you may encounter the following error: "Module not found: Error:
Cannot resolve module", most certainly you should disable AMD loader. Add/merge
the following section to your webpack config:

```javascript
module: {
  rules: [
    {
      parser: {
        amd: false
      }
    }
  ]
}
```

## Getting Started

Please follow the [installation](#installation) instruction and execute the following JS code:

```javascript
var Meego = require('meego');

var api = new Meego.GuideApi()

var opts = { 
  'emailPasswordModel': new Meego.EmailPasswordModel() // {EmailPasswordModel} 
};

var callback = function(error, data, response) {
  if (error) {
    console.error(error);
  } else {
    console.log('API called successfully. Returned data: ' + data);
  }
};
api.guideLoginPost(opts, callback);

```

## Documentation for API Endpoints

All URIs are relative to *https://localhost*

Class | Method | HTTP request | Description
------------ | ------------- | ------------- | -------------
*Meego.GuideApi* | [**guideLoginPost**](docs/GuideApi.md#guideLoginPost) | **POST** /guide/login | Tour guide logs in inside the app using this endpoint.
*Meego.GuideApi* | [**guideRegisterPost**](docs/GuideApi.md#guideRegisterPost) | **POST** /guide/register | Guide registers inside the app using this endpoint. This registration is subject to verification.
*Meego.GuideApi* | [**guideValidateEmailGet**](docs/GuideApi.md#guideValidateEmailGet) | **GET** /guide/validateEmail | This validates the email of the tour guide for uniqueness
*Meego.UserApi* | [**userLoginPost**](docs/UserApi.md#userLoginPost) | **POST** /user/login | User logs in inside the app using this endpoint.
*Meego.UserApi* | [**userRegisterPost**](docs/UserApi.md#userRegisterPost) | **POST** /user/register | User registers inside the app using this endpoint.
*Meego.UserApi* | [**userRetryOtpGet**](docs/UserApi.md#userRetryOtpGet) | **GET** /user/retry-otp | Used for re sending OTP to the user for phone verification in case the earlier attempt fails.
*Meego.UserApi* | [**userSendOtpGet**](docs/UserApi.md#userSendOtpGet) | **GET** /user/send-otp | Used for sending OTP to the user for phone verification. (On the condition that the phone number is unique)
*Meego.UserApi* | [**userSocialLoginPost**](docs/UserApi.md#userSocialLoginPost) | **POST** /user/social-login | Used for social login. Takes a OAuth token and a type. Response may not have all the user details depending on the login status.
*Meego.UserApi* | [**userValidateEmailGet**](docs/UserApi.md#userValidateEmailGet) | **GET** /user/validate-email | Validates uniqueness of a user&#39;s email.
*Meego.UserApi* | [**userVerifyOtpGet**](docs/UserApi.md#userVerifyOtpGet) | **GET** /user/verify-otp | Used for veryfing OTP sent by the user.


## Documentation for Models

 - [Meego.EmailPasswordModel](docs/EmailPasswordModel.md)
 - [Meego.IdNameAddressStatePinCodeCountryCodePhoneEmailModel](docs/IdNameAddressStatePinCodeCountryCodePhoneEmailModel.md)
 - [Meego.IdNameCountryCodePhoneAgeGenderAvatarEmailModel](docs/IdNameCountryCodePhoneAgeGenderAvatarEmailModel.md)
 - [Meego.IdNameEmailCountryCodePhoneAgeGenderAvatarStatusModel](docs/IdNameEmailCountryCodePhoneAgeGenderAvatarStatusModel.md)
 - [Meego.NameCountryCodePhoneAddressStatePinCodeAgeEmailPasswordModel](docs/NameCountryCodePhoneAddressStatePinCodeAgeEmailPasswordModel.md)
 - [Meego.NameCountryCodePhoneEmailPasswordModel](docs/NameCountryCodePhoneEmailPasswordModel.md)
 - [Meego.StatusCodeMessageErrorModel](docs/StatusCodeMessageErrorModel.md)
 - [Meego.StatusCodeMessageModel](docs/StatusCodeMessageModel.md)
 - [Meego.StatusCodeMessageStatusModel](docs/StatusCodeMessageStatusModel.md)
 - [Meego.TypeTokenModel](docs/TypeTokenModel.md)


## Documentation for Authorization

 All endpoints do not require authorization.

