github.com/vmpartner/bitmex@v1.1.0/swagger/announcement_api.go (about)

     1  /* 
     2   * BitMEX API
     3   *
     4   * ## REST API for the BitMEX Trading Platform  [View Changelog](/app/apiChangelog)    #### Getting Started   ##### Fetching Data  All REST endpoints are documented below. You can try out any query right from this interface.  Most table queries accept `count`, `start`, and `reverse` params. Set `reverse=true` to get rows newest-first.  Additional documentation regarding filters, timestamps, and authentication is available in [the main API documentation](https://www.bitmex.com/app/restAPI).  *All* table data is available via the [Websocket](/app/wsAPI). We highly recommend using the socket if you want to have the quickest possible data without being subject to ratelimits.  ##### Return Types  By default, all data is returned as JSON. Send `?_format=csv` to get CSV data or `?_format=xml` to get XML data.  ##### Trade Data Queries  *This is only a small subset of what is available, to get you started.*  Fill in the parameters and click the `Try it out!` button to try any of these queries.  * [Pricing Data](#!/Quote/Quote_get)  * [Trade Data](#!/Trade/Trade_get)  * [OrderBook Data](#!/OrderBook/OrderBook_getL2)  * [Settlement Data](#!/Settlement/Settlement_get)  * [Exchange Statistics](#!/Stats/Stats_history)  Every function of the BitMEX.com platform is exposed here and documented. Many more functions are available.  ##### Swagger Specification  [⇩ Download Swagger JSON](swagger.json)    ## All API Endpoints  Click to expand a section. 
     5   *
     6   * OpenAPI spec version: 1.2.0
     7   * Contact: support@bitmex.com
     8   * Generated by: https://github.com/swagger-api/swagger-codegen.git
     9   */
    10  
    11  package swagger
    12  
    13  import (
    14  	"net/url"
    15  	"net/http"
    16  	"strings"
    17  	"golang.org/x/net/context"
    18  	"encoding/json"
    19  )
    20  
    21  // Linger please
    22  var (
    23  	_ context.Context
    24  )
    25  
    26  type AnnouncementApiService service
    27  
    28  /* AnnouncementApiService Get site announcements.
    29  
    30   @param optional (nil or map[string]interface{}) with one or more of:
    31       @param "columns" (string) Array of column names to fetch. If omitted, will return all columns.
    32   @return []Announcement*/
    33  func (a *AnnouncementApiService) AnnouncementGet(localVarOptionals map[string]interface{}) ([]Announcement, *http.Response, error) {
    34  	var (
    35  		localVarHttpMethod = strings.ToUpper("Get")
    36  		localVarPostBody   interface{}
    37  		localVarFileName   string
    38  		localVarFileBytes  []byte
    39  		successPayload     []Announcement
    40  	)
    41  
    42  	// create path and map variables
    43  	localVarPath := a.client.cfg.BasePath + "/announcement"
    44  
    45  	localVarHeaderParams := make(map[string]string)
    46  	localVarQueryParams := url.Values{}
    47  	localVarFormParams := url.Values{}
    48  
    49  	if err := typeCheckParameter(localVarOptionals["columns"], "string", "columns"); err != nil {
    50  		return successPayload, nil, err
    51  	}
    52  
    53  	if localVarTempParam, localVarOk := localVarOptionals["columns"].(string); localVarOk {
    54  		localVarQueryParams.Add("columns", parameterToString(localVarTempParam, ""))
    55  	}
    56  	// to determine the Content-Type header
    57  	localVarHttpContentTypes := []string{"application/json", "application/x-www-form-urlencoded",}
    58  
    59  	// set Content-Type header
    60  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
    61  	if localVarHttpContentType != "" {
    62  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
    63  	}
    64  
    65  	// to determine the Accept header
    66  	localVarHttpHeaderAccepts := []string{
    67  		"application/json",
    68  		"application/xml",
    69  		"text/xml",
    70  		"application/javascript",
    71  		"text/javascript",
    72  	}
    73  
    74  	// set Accept header
    75  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
    76  	if localVarHttpHeaderAccept != "" {
    77  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
    78  	}
    79  	r, err := a.client.prepareRequest(nil, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
    80  	if err != nil {
    81  		return successPayload, nil, err
    82  	}
    83  
    84  	localVarHttpResponse, err := a.client.callAPI(r)
    85  	if err != nil || localVarHttpResponse == nil {
    86  		return successPayload, localVarHttpResponse, err
    87  	}
    88  	defer localVarHttpResponse.Body.Close()
    89  	if localVarHttpResponse.StatusCode >= 300 {
    90  		return successPayload, localVarHttpResponse, reportError(localVarHttpResponse.Status)
    91  	}
    92  
    93  	if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil {
    94  		return successPayload, localVarHttpResponse, err
    95  	}
    96  
    97  	return successPayload, localVarHttpResponse, err
    98  }
    99  
   100  /* AnnouncementApiService Get urgent (banner) announcements.
   101   * @param ctx context.Context Authentication Context 
   102   @return []Announcement*/
   103  func (a *AnnouncementApiService) AnnouncementGetUrgent(ctx context.Context, ) ([]Announcement, *http.Response, error) {
   104  	var (
   105  		localVarHttpMethod = strings.ToUpper("Get")
   106  		localVarPostBody   interface{}
   107  		localVarFileName   string
   108  		localVarFileBytes  []byte
   109  		successPayload     []Announcement
   110  	)
   111  
   112  	// create path and map variables
   113  	localVarPath := a.client.cfg.BasePath + "/announcement/urgent"
   114  
   115  	localVarHeaderParams := make(map[string]string)
   116  	localVarQueryParams := url.Values{}
   117  	localVarFormParams := url.Values{}
   118  
   119  	// to determine the Content-Type header
   120  	localVarHttpContentTypes := []string{"application/json", "application/x-www-form-urlencoded",}
   121  
   122  	// set Content-Type header
   123  	localVarHttpContentType := selectHeaderContentType(localVarHttpContentTypes)
   124  	if localVarHttpContentType != "" {
   125  		localVarHeaderParams["Content-Type"] = localVarHttpContentType
   126  	}
   127  
   128  	// to determine the Accept header
   129  	localVarHttpHeaderAccepts := []string{
   130  		"application/json",
   131  		"application/xml",
   132  		"text/xml",
   133  		"application/javascript",
   134  		"text/javascript",
   135  	}
   136  
   137  	// set Accept header
   138  	localVarHttpHeaderAccept := selectHeaderAccept(localVarHttpHeaderAccepts)
   139  	if localVarHttpHeaderAccept != "" {
   140  		localVarHeaderParams["Accept"] = localVarHttpHeaderAccept
   141  	}
   142  	if ctx != nil {
   143  		// API Key Authentication
   144  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
   145  			var key string
   146  			if auth.Prefix != "" {
   147  				key = auth.Prefix + " " + auth.Key
   148  			} else {
   149  				key = auth.Key
   150  			}
   151  			localVarHeaderParams["api-key"] = key
   152  		}
   153  	}
   154  	if ctx != nil {
   155  		// API Key Authentication
   156  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
   157  			var key string
   158  			if auth.Prefix != "" {
   159  				key = auth.Prefix + " " + auth.Key
   160  			} else {
   161  				key = auth.Key
   162  			}
   163  			localVarHeaderParams["api-nonce"] = key
   164  		}
   165  	}
   166  	if ctx != nil {
   167  		// API Key Authentication
   168  		if auth, ok := ctx.Value(ContextAPIKey).(APIKey); ok {
   169  			var key string
   170  			if auth.Prefix != "" {
   171  				key = auth.Prefix + " " + auth.Key
   172  			} else {
   173  				key = auth.Key
   174  			}
   175  			localVarHeaderParams["api-signature"] = key
   176  		}
   177  	}
   178  	r, err := a.client.prepareRequest(ctx, localVarPath, localVarHttpMethod, localVarPostBody, localVarHeaderParams, localVarQueryParams, localVarFormParams, localVarFileName, localVarFileBytes)
   179  	if err != nil {
   180  		return successPayload, nil, err
   181  	}
   182  
   183  	localVarHttpResponse, err := a.client.callAPI(r)
   184  	if err != nil || localVarHttpResponse == nil {
   185  		return successPayload, localVarHttpResponse, err
   186  	}
   187  	defer localVarHttpResponse.Body.Close()
   188  	if localVarHttpResponse.StatusCode >= 300 {
   189  		return successPayload, localVarHttpResponse, reportError(localVarHttpResponse.Status)
   190  	}
   191  
   192  	if err = json.NewDecoder(localVarHttpResponse.Body).Decode(&successPayload); err != nil {
   193  		return successPayload, localVarHttpResponse, err
   194  	}
   195  
   196  	return successPayload, localVarHttpResponse, err
   197  }