Difference between revisions of "NATS5 REST API News POST entry"
From TMM Wiki
Jump to navigationJump to search(2 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
− | {{ | + | {{NATS5 Manual |
− | | | + | | show_api_admin_news_section = true |
}} | }} | ||
== '''POST /news/entry''' == | == '''POST /news/entry''' == | ||
+ | |||
'''Description''' | '''Description''' | ||
* Add news entry | * Add news entry | ||
Line 9: | Line 10: | ||
*Replace domain with the nats domain | *Replace domain with the nats domain | ||
− | '''[[ | + | '''[[NATS5_REST_API_Overview#Allowed_HTTP_Request_Methods|Request Method''']] |
*POST | *POST | ||
'''Response Format''' | '''Response Format''' | ||
*JSON | *JSON | ||
− | '''[[ | + | '''[[NATS5_REST_API_Overview#Authentication|Authentication]]''' |
*HTTP headers | *HTTP headers | ||
Line 50: | Line 51: | ||
"entry": { | "entry": { | ||
"newsid": "1", | "newsid": "1", | ||
− | "added": " | + | "added": "1565382566", |
"loginid": "1", | "loginid": "1", | ||
"news_section_id": "1", | "news_section_id": "1", | ||
Line 58: | Line 59: | ||
"news_section_name": "Announcements", | "news_section_name": "Announcements", | ||
"publish_date": "2019-05-31 00:00:00", | "publish_date": "2019-05-31 00:00:00", | ||
− | "added_date": "2019- | + | "added_date": "2019-08-09 16:29:26" |
} | } | ||
} | } | ||
Line 124: | Line 125: | ||
</pre> | </pre> | ||
− | [[Category: | + | [[Category:NATS5_REST_APIs]] |
− | [[Category: | + | [[Category:NATS5_REST_news_Collection]] |
[[Category:Autogenerated_Wiki_Article]]<!-- Remove this tag when customizing a wiki article. The article will no longer be automatically updated --> | [[Category:Autogenerated_Wiki_Article]]<!-- Remove this tag when customizing a wiki article. The article will no longer be automatically updated --> | ||
[[Category:Autogenerated_Rest_Sample]]<!-- This article has a generated REST API Sample from our unit testing system. Also remove if customizing the wiki article --> | [[Category:Autogenerated_Rest_Sample]]<!-- This article has a generated REST API Sample from our unit testing system. Also remove if customizing the wiki article --> |
Latest revision as of 16:00, 9 August 2019
POST /news/entry
Description
- Add news entry
Resource URL
- http://domain/api/news/entry
- Replace domain with the nats domain
- POST
Response Format
- JSON
- HTTP headers
Parameters
Parameters can be sent as url encoded params
- headline
- type: string
- required
- news_section_id
- type: digit
- required
- publish
- type: datetime (A date string to be parsed by php strtotime, or a unix timestamp integer)
- required
- body
- type: string
- required
Example Request
Method: POST
URL: http://domain/api/news/entry
Form Data:
- headline: test Headline
- news_section_id: 1
- publish: 31 May 2019
- body: This is a news entry test
Response:
{ "success": true, "result": "news entry added", "entry": { "newsid": "1", "added": "1565382566", "loginid": "1", "news_section_id": "1", "headline": "test Headline", "body": "This is a news entry test", "publish": "1559275200", "news_section_name": "Announcements", "publish_date": "2019-05-31 00:00:00", "added_date": "2019-08-09 16:29:26" } }
Example Code
PHP
<?php $headers = array( //set your username and API key here 'api-key: 44b5498dbcb481a0d00b404c0169af62', 'api-username: tmm1phrvezsbu' ); $url = 'http://yourdomain.com'; //set your NATS URL here $data = Array( 'headline' => 'test Headline', 'news_section_id' => 1, 'publish' => '31 May 2019', 'body' => 'This is a news entry test', ); $request = Array( 'method' => 'POST', 'path' => 'v1/news/entry', 'data' => $data ); /*code below is the same for (almost) every API call */ $curl = curl_init(); $url = $url.'/api/'.$request['path']; $query = http_build_query($request['data']); if($request['method'] == 'GET'){ //add query string parameters to the end of the url $url = $url.'?'.$query; }else{ //send parameters as POST fields curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_POSTFIELDS, $query); if($request['method'] != 'POST'){ $headers[] ='X-HTTP-Method: '.$request['method']; //send custom request method } } curl_setopt($curl, CURLOPT_URL, $url); curl_setopt($curl, CURLOPT_HTTPHEADER, $headers); curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); $resp = curl_exec($curl); //dumps an associative array representation of the json var_dump(json_decode($resp, true)); // Close request to clear up some resources curl_close($curl); ?>