OneMessage.io
1.0.1
See the version list below for details.
dotnet add package OneMessage.io --version 1.0.1
NuGet\Install-Package OneMessage.io -Version 1.0.1
<PackageReference Include="OneMessage.io" Version="1.0.1" />
paket add OneMessage.io --version 1.0.1
#r "nuget: OneMessage.io, 1.0.1"
// Install OneMessage.io as a Cake Addin #addin nuget:?package=OneMessage.io&version=1.0.1 // Install OneMessage.io as a Cake Tool #tool nuget:?package=OneMessage.io&version=1.0.1
OneMessage.io - the C# library for the one_msg_waba_sdk
1MSG.IO is the perfect WhatsApp management tool for your business. With us you get full access to the official Whatsapp API/webhooks.
Every API request must contain an Authorize HTTP header with a token. This is your channel token, which can be found in your channel project on your profile page. Please do not give the token to anyone or post it publicly.
The authorization token must be added to each request in the GET parameter 'token' and always passed to query string (?token={your_token}). Parameters in GET queries pass query string. Parameters in POST requests — through the JSON-encoded request body.
All 'send' methods (except /sendTemplate) will only work when the dialog session with the user is open. Some of our solutions simplify and avoid such limitations, but we urge you to pay more attention to this detail
This C# SDK is automatically generated by the OpenAPI Generator project:
- API version: 2.39.0
- SDK version: 1.0.0
- Build package: org.openapitools.codegen.languages.CSharpClientCodegen
<a id="frameworks-supported"></a>
Frameworks supported
<a id="dependencies"></a>
Dependencies
- RestSharp - 106.13.0 or later
- Json.NET - 13.0.2 or later
- JsonSubTypes - 1.8.0 or later
- System.ComponentModel.Annotations - 5.0.0 or later
The DLLs included in the package may not be the latest version. We recommend using NuGet to obtain the latest version of the packages:
Install-Package RestSharp
Install-Package Newtonsoft.Json
Install-Package JsonSubTypes
Install-Package System.ComponentModel.Annotations
NOTE: RestSharp versions greater than 105.1.0 have a bug which causes file uploads to fail. See RestSharp#742. NOTE: RestSharp for .Net Core creates a new socket for each api call, which can lead to a socket exhaustion problem. See RestSharp#1406.
<a id="installation"></a>
Installation
Run the following command to generate the DLL
- [Mac/Linux]
/bin/sh build.sh
- [Windows]
build.bat
Then include the DLL (under the bin
folder) in the C# project, and use the namespaces:
using OneMessage.io.Api;
using OneMessage.io.Client;
using OneMessage.io.Model;
<a id="packaging"></a>
Packaging
A .nuspec
is included with the project. You can follow the Nuget quickstart to create and publish packages.
This .nuspec
uses placeholders from the .csproj
, so build the .csproj
directly:
nuget pack -Build -OutputDirectory out OneMessage.io.csproj
Then, publish to a local feed or other host and consume the new package via Nuget as usual.
<a id="usage"></a>
Usage
To use the API client with a HTTP proxy, setup a System.Net.WebProxy
Configuration c = new Configuration();
System.Net.WebProxy webProxy = new System.Net.WebProxy("http://myProxyUrl:80/");
webProxy.Credentials = System.Net.CredentialCache.DefaultCredentials;
c.Proxy = webProxy;
<a id="getting-started"></a>
Getting Started
using System.Collections.Generic;
using System.Diagnostics;
using OneMessage.io.Api;
using OneMessage.io.Client;
using OneMessage.io.Model;
namespace Example
{
public class Example
{
public static void Main()
{
Configuration config = new Configuration();
config.BasePath = "https://api.1msg.io/YOUR_INSTANCE_NUMBER";
// Configure API key authorization: token
config.ApiKey.Add("token", "YOUR_API_KEY");
// Uncomment below to setup prefix (e.g. Bearer) for API key, if needed
// config.ApiKeyPrefix.Add("token", "Bearer");
var apiInstance = new ChannelApi(config);
try
{
// Get Commerce Settings
GetCommerce result = apiInstance.GetCommerce();
Debug.WriteLine(result);
}
catch (ApiException e)
{
Debug.Print("Exception when calling ChannelApi.GetCommerce: " + e.Message );
Debug.Print("Status Code: "+ e.ErrorCode);
Debug.Print(e.StackTrace);
}
}
}
}
<a id="documentation-for-api-endpoints"></a>
Documentation for API Endpoints
All URIs are relative to https://api.1msg.io/YOUR_INSTANCE_NUMBER
Class | Method | HTTP request | Description |
---|---|---|---|
ChannelApi | GetCommerce | GET /commerce | Get Commerce Settings |
ChannelApi | GetExtendedStatistics | GET /extendedStatistics | Get Extended Channel statistics |
ChannelApi | GetMe | GET /me | Get Profile Info |
ChannelApi | GetSettings | GET /settings | Get Settings |
ChannelApi | GetStatistics | GET /statistics | Get Channel statistics |
ChannelApi | GetStatus | GET /status | Get Status |
ChannelApi | OutputIP | GET /outputIP | Get channel server IP |
ChannelApi | SetMe | POST /me | Change user info |
ChannelApi | SetSettings | POST /settings | Set settings |
MediaApi | UploadMedia | POST /uploadMedia | Upload media & get mediaId |
MessagingApi | MessagesList | GET /messages | Get messages list |
MessagingApi | ReadMessage | POST /readMessage | Mark message as read |
MessagingApi | SendContact | POST /sendContact | Send a Contact |
MessagingApi | SendFile | POST /sendFile | Send a File |
MessagingApi | SendList | POST /sendList | Send List Message |
MessagingApi | SendLocation | POST /sendLocation | Send a Location |
MessagingApi | SendMessage | POST /sendMessage | Send a Message |
ProductsCatalogsApi | SendProduct | POST /sendProduct | Send a Product |
ProductsCatalogsApi | SetCommerce | POST /commerce | Set Commerce Settings |
TemplatesApi | AddTemplate | POST /addTemplate | Create template |
TemplatesApi | RemoveTemplate | POST /removeTemplate | Remove template |
TemplatesApi | SendTemplate | POST /sendTemplate | Send Template Message |
TemplatesApi | TemplatesList | GET /templates | Get templates list |
WebhooksApi | AckHookInfo | GET /hookInfo | Check ACKs |
WebhooksApi | SetWebhook | POST /webhook | Set webhook |
<a id="documentation-for-models"></a>
Documentation for Models
- Model.Ack
- Model.AddTemplateRequest
- Model.ChannelExtendedStatistics
- Model.ChannelExtendedStatisticsInner
- Model.ChannelStatistics
- Model.ChannelStatus
- Model.ChatIdProp
- Model.Commerce
- Model.CommerceParams
- Model.Contacts
- Model.ContactsContactsInner
- Model.ContactsRequest
- Model.GetAckInfo
- Model.GetAckInfoHooksInner
- Model.GetCommerce
- Model.GetCommerceInner
- Model.GetIP
- Model.GetMe
- Model.GetMe401Response
- Model.GetMessages
- Model.GetMessagesMessagesInner
- Model.GetTemplates
- Model.GetTemplatesTemplatesInner
- Model.MeComponents
- Model.MediaId
- Model.Message
- Model.MessageIdProp
- Model.PhoneProp
- Model.ReadMessageRequest
- Model.RemoveTemplateRequest
- Model.SendContactRequest
- Model.SendFileRequest
- Model.SendListRequest
- Model.SendListRequestAllOfRows
- Model.SendListRequestAllOfSections
- Model.SendLocationRequest
- Model.SendMessageRequest
- Model.SendMessageStatus
- Model.SendProductRequest
- Model.SendProductRequestAllOfAction
- Model.SendProductRequestAllOfActionProductItems
- Model.SendProductRequestAllOfActionSections
- Model.SendTemplateRequest
- Model.SendTemplateRequestAllOfCurrency
- Model.SendTemplateRequestAllOfDateTime
- Model.SendTemplateRequestAllOfDateTimeComponent
- Model.SendTemplateRequestAllOfDateTimeUnixEpoch
- Model.SendTemplateRequestAllOfLanguage
- Model.SendTemplateRequestAllOfParams
- Model.SetCommerce
- Model.SetMe
- Model.SetMeRequest
- Model.SetSettings200Response
- Model.SetSettings200ResponseAllOfUpdate
- Model.SetWebhookStatus
- Model.Settings
- Model.TemplateCategoryProp
- Model.TemplateComponentsProp
- Model.TemplateComponentsPropInner
- Model.TemplateComponentsPropInnerButtonsInner
- Model.TemplateLanguageProp
- Model.TemplateNamespaceField
- Model.UploadMedia
- Model.WebhookUrl
<a id="documentation-for-authorization"></a>
Documentation for Authorization
Authentication schemes defined for the API: <a id="token"></a>
token
- Type: API key
- API key parameter name: token
- Location: URL query string
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net7.0 is compatible. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. |
.NET Framework | net48 is compatible. net481 was computed. |
-
.NETFramework 4.8
- JsonSubTypes (>= 2.0.1)
- Newtonsoft.Json (>= 13.0.3)
- Polly (>= 7.2.3)
- RestSharp (>= 110.2.0)
- System.ComponentModel.Annotations (>= 5.0.0)
-
net7.0
- JsonSubTypes (>= 2.0.1)
- Newtonsoft.Json (>= 13.0.3)
- Polly (>= 7.2.3)
- RestSharp (>= 110.2.0)
- System.ComponentModel.Annotations (>= 5.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Updated dependencies for net48