github.com/twilio/twilio-go@v1.20.1/rest/sync/v1/services_streams_messages.go (about) 1 /* 2 * This code was generated by 3 * ___ _ _ _ _ _ _ ____ ____ ____ _ ____ ____ _ _ ____ ____ ____ ___ __ __ 4 * | | | | | | | | | __ | | |__| | __ | __ |___ |\ | |___ |__/ |__| | | | |__/ 5 * | |_|_| | |___ | |__| |__| | | | |__] |___ | \| |___ | \ | | | |__| | \ 6 * 7 * Twilio - Sync 8 * This is the public Twilio REST API. 9 * 10 * NOTE: This class is auto generated by OpenAPI Generator. 11 * https://openapi-generator.tech 12 * Do not edit the class manually. 13 */ 14 15 package openapi 16 17 import ( 18 "encoding/json" 19 "net/url" 20 "strings" 21 ) 22 23 // Optional parameters for the method 'CreateStreamMessage' 24 type CreateStreamMessageParams struct { 25 // A JSON string that represents an arbitrary, schema-less object that makes up the Stream Message body. Can be up to 4 KiB in length. 26 Data *interface{} `json:"Data,omitempty"` 27 } 28 29 func (params *CreateStreamMessageParams) SetData(Data interface{}) *CreateStreamMessageParams { 30 params.Data = &Data 31 return params 32 } 33 34 // Create a new Stream Message. 35 func (c *ApiService) CreateStreamMessage(ServiceSid string, StreamSid string, params *CreateStreamMessageParams) (*SyncV1StreamMessage, error) { 36 path := "/v1/Services/{ServiceSid}/Streams/{StreamSid}/Messages" 37 path = strings.Replace(path, "{"+"ServiceSid"+"}", ServiceSid, -1) 38 path = strings.Replace(path, "{"+"StreamSid"+"}", StreamSid, -1) 39 40 data := url.Values{} 41 headers := make(map[string]interface{}) 42 43 if params != nil && params.Data != nil { 44 v, err := json.Marshal(params.Data) 45 46 if err != nil { 47 return nil, err 48 } 49 50 data.Set("Data", string(v)) 51 } 52 53 resp, err := c.requestHandler.Post(c.baseURL+path, data, headers) 54 if err != nil { 55 return nil, err 56 } 57 58 defer resp.Body.Close() 59 60 ps := &SyncV1StreamMessage{} 61 if err := json.NewDecoder(resp.Body).Decode(ps); err != nil { 62 return nil, err 63 } 64 65 return ps, err 66 }