{"id":19119,"date":"2021-11-23T21:04:18","date_gmt":"2021-11-23T14:04:18","guid":{"rendered":"https:\/\/huongdanjava.com\/?p=19119"},"modified":"2021-11-23T21:05:02","modified_gmt":"2021-11-23T14:05:02","slug":"define-request-url-with-raml","status":"publish","type":"post","link":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html","title":{"rendered":"Define request URL with RAML"},"content":{"rendered":"<p>In <a href=\"https:\/\/huongdanjava.com\/introducing-about-raml.html\" target=\"_blank\" rel=\"noopener\">the previous tutorial<\/a>, I introduced you to RAML to define API spec. In this tutorial, I will guide you in more detail how to define request URL with RAML!<\/p>\n<p>As an example for this tutorial, first, I will create a new .raml file with information about the student management API including adding, deleting, editing, searching with the following initial content:<\/p>\n<pre class=\"lang:yaml decode:true \">#%RAML 1.0\r\nbaseUri: https:\/\/localhost:8081\/api\r\ntitle: Student Management System\r\nversion: 1.0<\/pre>\n<p>We will define some requests as follows:<\/p>\n<ul>\n<li>GET \/students to get a list of students<\/li>\n<li>POST \/students to add new students<\/li>\n<li>PUT \/students\/{id} to update a student with the id passed in the request<\/li>\n<li>DELETE \/students\/{id} to delete a student with the id passed in the request<\/li>\n<li>GET \/students\/find-by-name?name=&lt;student-name&gt;<\/li>\n<li>GET \/students\/find-by-ids?id=&lt;id1&gt;,&lt;id2&gt;<\/li>\n<\/ul>\n<p>With requests like these, you can define a root request &#8220;\/students&#8221; as follows:<\/p>\n<pre class=\"lang:yaml decode:true \">\/students:\r\n<\/pre>\n<p>Just imagine a request URL will be divided into several levels from left to right. For example, request \/api\/students\/find will have 3 levels: api, then students and then find. These levels are separated by a &#8220;\/&#8221;. Each level will be a level in the .raml file in that order, so in my example above, the root request for all requests would be &#8220;\/students&#8221;.<\/p>\n<p>For this root request, we have 2 requests, GET and POST, to get all students&#8217; information and add new students, so you just need to declare these requests as follows:<\/p>\n<pre class=\"lang:yaml decode:true \">\/students:\r\n  get:\r\n  post:<\/pre>\n<p>You can add a description for each request if you want, for example:<\/p>\n<pre class=\"lang:yaml decode:true \">\/students:\r\n  get:\r\n    description: Get all students\r\n  post:\r\n    description: Add new student<\/pre>\n<p>Next, we have 2 requests with \/students\/{id} with PUT and DELETE HTTP methods, used to update and delete information of a certain student. Since we have already defined the root request with &#8220;\/students&#8221;, now you only need to define these two new requests as follows:<\/p>\n<pre class=\"lang:yaml mark:5-9 decode:true \">\/students:\r\n  get:\r\n  post:\r\n\r\n  \/{id}:\r\n    put:\r\n      description: Update information for a student\r\n    delete:\r\n      description: Delete information of a student\r\n<\/pre>\n<p>You can define more information of the path parameters, information about the purpose of the path parameter, what the data type is, an example of their value. To do this, we will use the <strong>uriParameters<\/strong> section. For example, I can define information for path parameter {id} in the above example as follows:<\/p>\n<pre class=\"lang:yaml mark:8-12 decode:true \">\/students:\r\n  get:\r\n    description: Get all students\r\n  post:\r\n    description: Add new student\r\n\r\n  \/{id}:\r\n    uriParameters:\r\n      id:\r\n        description: Id of the student\r\n        type: string\r\n        example: \"1\"\r\n    put:\r\n      description: Update information for a student\r\n    delete:\r\n      description: Delete information of a student<\/pre>\n<p>For the request \/students\/find-by-name?name=&lt;student-name&gt;, we need to define an additional section \/find-by-name with the root request as &#8220;\/students&#8221; as follows:<\/p>\n<pre class=\"lang:yaml mark:18-20 decode:true \">\/students:\r\n  get:\r\n    description: Get all students\r\n  post:\r\n    description: Add new student\r\n\r\n  \/{id}:\r\n    uriParameters:\r\n      id:\r\n        description: Id of the student\r\n        type: string\r\n        example: \"1\"\r\n    put:\r\n      description: Update information for a student\r\n    delete:\r\n      description: Delete information of a student\r\n  \r\n  \/find-by-name:\r\n    get:\r\n      description: Find student by name<\/pre>\n<p>The HTTP method of this request is GET and I have also added a description for this request.<\/p>\n<p>For this \/students\/find-by-name request, we have an additional request parameter named name. We can define this request parameter information as follows:<\/p>\n<pre class=\"lang:yaml mark:21-25 decode:true \">\/students:\r\n  get:\r\n    description: Get all students\r\n  post:\r\n    description: Add new student\r\n\r\n  \/{id}:\r\n    uriParameters:\r\n      id:\r\n        description: Id of the student\r\n        type: string\r\n        example: \"1\"\r\n    put:\r\n      description: Update information for a student\r\n    delete:\r\n      description: Delete information of a student\r\n  \r\n  \/find-by-name:\r\n    get:\r\n      description: Find student by name\r\n      queryParameters:\r\n        name: \r\n          description: Name of student\r\n          type: string\r\n          example: \"Khanh\"<\/pre>\n<p>As you can see, I use the <strong>queryParameters<\/strong> section to specify information for all request parameters of the request. The request parameter in this example has data type String. You can define whether this request parameter is required or not using the &#8220;required: false&#8221; attribute or use the question mark as follows:<\/p>\n<pre class=\"lang:yaml mark:2 decode:true \">queryParameters:\r\n  name?: \r\n    description: Name of student\r\n    type: string\r\n    example: \"Khanh\"<\/pre>\n<p>In my example, the request parameter name is required!<\/p>\n<p>For requests with matrix parameters like \/students\/find-by-ids? id=&lt;id1&gt;,&lt;id2&gt; , you can define that matrix parameter with the type of array. Examples are as follows:<\/p>\n<pre class=\"lang:yaml mark:26-33 decode:true \">\/students:\r\n  get:\r\n    description: Get all students\r\n  post:\r\n    description: Add new student\r\n\r\n  \/{id}:\r\n    uriParameters:\r\n      id:\r\n        description: Id of the Student\r\n        type: string\r\n        example: \"1\"\r\n    put:\r\n      description: Update information for a student\r\n    delete:\r\n      description: Delete information of a student\r\n\r\n  \/find-by-name:\r\n    get:\r\n      description: Find student by name\r\n      queryParameters:\r\n        name: \r\n          description: Name of student\r\n          type: string\r\n          example: \"Khanh\"\r\n  \/find-by-ids:\r\n    get:\r\n      description: Find list of students by a list of Ids\r\n      queryParameters:\r\n        ids: \r\n          description: List of Ids\r\n          type: number[]\r\n          example: \"1,2,3\"<\/pre>\n<p>The full contents of the .raml file of the example in this tutorial are as follows:<\/p>\n<pre class=\"lang:yaml decode:true \">#%RAML 1.0\r\nbaseUri: https:\/\/localhost:8081\/api\r\ntitle: Student Management System\r\nversion: 1.0\r\n\r\n\/students:\r\n  get:\r\n    description: Get all students\r\n  post:\r\n    description: Add new student\r\n\r\n  \/{id}:\r\n    uriParameters:\r\n      id:\r\n        description: Id of the Student\r\n        type: string\r\n        example: \"1\"\r\n    put:\r\n      description: Update information for a student\r\n    delete:\r\n      description: Delete information of a student\r\n\r\n  \/find-by-name:\r\n    get:\r\n      description: Find student by name\r\n      queryParameters:\r\n        name: \r\n          description: Name of student\r\n          type: string\r\n          example: \"Khanh\"\r\n  \/find-by-ids:\r\n    get:\r\n      description: Find list of students by list of Ids\r\n      queryParameters:\r\n        ids: \r\n          description: List of Ids\r\n          type: number[]\r\n          example: \"1,2,3\"<\/pre>\n\n\n<div class=\"kk-star-ratings kksr-auto kksr-align-right kksr-valign-bottom\"\n    data-payload='{&quot;align&quot;:&quot;right&quot;,&quot;id&quot;:&quot;19119&quot;,&quot;slug&quot;:&quot;default&quot;,&quot;valign&quot;:&quot;bottom&quot;,&quot;ignore&quot;:&quot;&quot;,&quot;reference&quot;:&quot;auto&quot;,&quot;class&quot;:&quot;&quot;,&quot;count&quot;:&quot;0&quot;,&quot;legendonly&quot;:&quot;&quot;,&quot;readonly&quot;:&quot;&quot;,&quot;score&quot;:&quot;0&quot;,&quot;starsonly&quot;:&quot;&quot;,&quot;best&quot;:&quot;5&quot;,&quot;gap&quot;:&quot;4&quot;,&quot;greet&quot;:&quot;&quot;,&quot;legend&quot;:&quot;0\\\/5 - (0 votes)&quot;,&quot;size&quot;:&quot;24&quot;,&quot;title&quot;:&quot;Define request URL with RAML&quot;,&quot;width&quot;:&quot;0&quot;,&quot;_legend&quot;:&quot;{score}\\\/{best} - ({count} {votes})&quot;,&quot;font_factor&quot;:&quot;1.25&quot;}'>\n            \n<div class=\"kksr-stars\">\n    \n<div class=\"kksr-stars-inactive\">\n            <div class=\"kksr-star\" data-star=\"1\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"2\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"3\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"4\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" data-star=\"5\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n    \n<div class=\"kksr-stars-active\" style=\"width: 0px;\">\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n            <div class=\"kksr-star\" style=\"padding-right: 4px\">\n            \n\n<div class=\"kksr-icon\" style=\"width: 24px; height: 24px;\"><\/div>\n        <\/div>\n    <\/div>\n<\/div>\n                \n\n<div class=\"kksr-legend\" style=\"font-size: 19.2px;\">\n            <span class=\"kksr-muted\"><\/span>\n    <\/div>\n    <\/div>\n","protected":false},"excerpt":{"rendered":"<p>In the previous tutorial, I introduced you to RAML to define API spec. In this tutorial, I will guide you in more detail how to define request URL with RAML! As an example for this tutorial, first, I will create a new .raml file with&hellip; <a href=\"https:\/\/huongdanjava.com\/define-request-url-with-raml.html\">Read More<\/a><\/p>\n","protected":false},"author":1,"featured_media":19026,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[2152],"tags":[],"class_list":["post-19119","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-raml-en","clearfix"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.5 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Define request URL with RAML - Huong Dan Java<\/title>\n<meta name=\"description\" content=\"In this tutorial, I will guide you all on how to define request URL with RAML.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/huongdanjava.com\/define-request-url-with-raml.html\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Define request URL with RAML - Huong Dan Java\" \/>\n<meta property=\"og:description\" content=\"In this tutorial, I will guide you all on how to define request URL with RAML.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/huongdanjava.com\/define-request-url-with-raml.html\" \/>\n<meta property=\"og:site_name\" content=\"Huong Dan Java\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/nhkhanh2406\" \/>\n<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/nhkhanh2406\" \/>\n<meta property=\"article:published_time\" content=\"2021-11-23T14:04:18+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-11-23T14:05:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/11\/raml.jpeg\" \/>\n\t<meta property=\"og:image:width\" content=\"638\" \/>\n\t<meta property=\"og:image:height\" content=\"479\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"author\" content=\"Khanh Nguyen\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@https:\/\/twitter.com\/KhanhNguyenJ\" \/>\n<meta name=\"twitter:site\" content=\"@KhanhNguyenJ\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Khanh Nguyen\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"4 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html\"},\"author\":{\"name\":\"Khanh Nguyen\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\"},\"headline\":\"Define request URL with RAML\",\"datePublished\":\"2021-11-23T14:04:18+00:00\",\"dateModified\":\"2021-11-23T14:05:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html\"},\"wordCount\":519,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\"},\"image\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/11\\\/raml.jpeg\",\"articleSection\":[\"RAML\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html\",\"name\":\"Define request URL with RAML - Huong Dan Java\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/11\\\/raml.jpeg\",\"datePublished\":\"2021-11-23T14:04:18+00:00\",\"dateModified\":\"2021-11-23T14:05:02+00:00\",\"description\":\"In this tutorial, I will guide you all on how to define request URL with RAML.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#primaryimage\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/11\\\/raml.jpeg\",\"contentUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/11\\\/raml.jpeg\",\"width\":638,\"height\":479},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/define-request-url-with-raml.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/huongdanjava.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Define request URL with RAML\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#website\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/\",\"name\":\"Huong Dan Java\",\"description\":\"Java development tutorials\",\"publisher\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/huongdanjava.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/#\\\/schema\\\/person\\\/dc859d7f8cbea3b593e6738de9cbb82d\",\"name\":\"Khanh Nguyen\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\",\"url\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\",\"contentUrl\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\",\"width\":1267,\"height\":1517,\"caption\":\"Khanh Nguyen\"},\"logo\":{\"@id\":\"https:\\\/\\\/huongdanjava.com\\\/wp-content\\\/uploads\\\/2021\\\/07\\\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg\"},\"description\":\"I love Java and everything related to Java.\",\"sameAs\":[\"https:\\\/\\\/huongdanjava.com\",\"https:\\\/\\\/www.facebook.com\\\/nhkhanh2406\",\"https:\\\/\\\/x.com\\\/https:\\\/\\\/twitter.com\\\/KhanhNguyenJ\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Define request URL with RAML - Huong Dan Java","description":"In this tutorial, I will guide you all on how to define request URL with RAML.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html","og_locale":"en_US","og_type":"article","og_title":"Define request URL with RAML - Huong Dan Java","og_description":"In this tutorial, I will guide you all on how to define request URL with RAML.","og_url":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html","og_site_name":"Huong Dan Java","article_publisher":"https:\/\/www.facebook.com\/nhkhanh2406","article_author":"https:\/\/www.facebook.com\/nhkhanh2406","article_published_time":"2021-11-23T14:04:18+00:00","article_modified_time":"2021-11-23T14:05:02+00:00","og_image":[{"width":638,"height":479,"url":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/11\/raml.jpeg","type":"image\/jpeg"}],"author":"Khanh Nguyen","twitter_card":"summary_large_image","twitter_creator":"@https:\/\/twitter.com\/KhanhNguyenJ","twitter_site":"@KhanhNguyenJ","twitter_misc":{"Written by":"Khanh Nguyen","Est. reading time":"4 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html#article","isPartOf":{"@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html"},"author":{"name":"Khanh Nguyen","@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d"},"headline":"Define request URL with RAML","datePublished":"2021-11-23T14:04:18+00:00","dateModified":"2021-11-23T14:05:02+00:00","mainEntityOfPage":{"@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html"},"wordCount":519,"commentCount":0,"publisher":{"@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d"},"image":{"@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html#primaryimage"},"thumbnailUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/11\/raml.jpeg","articleSection":["RAML"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/huongdanjava.com\/define-request-url-with-raml.html#respond"]}]},{"@type":"WebPage","@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html","url":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html","name":"Define request URL with RAML - Huong Dan Java","isPartOf":{"@id":"https:\/\/huongdanjava.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html#primaryimage"},"image":{"@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html#primaryimage"},"thumbnailUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/11\/raml.jpeg","datePublished":"2021-11-23T14:04:18+00:00","dateModified":"2021-11-23T14:05:02+00:00","description":"In this tutorial, I will guide you all on how to define request URL with RAML.","breadcrumb":{"@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/huongdanjava.com\/define-request-url-with-raml.html"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html#primaryimage","url":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/11\/raml.jpeg","contentUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/11\/raml.jpeg","width":638,"height":479},{"@type":"BreadcrumbList","@id":"https:\/\/huongdanjava.com\/define-request-url-with-raml.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/huongdanjava.com\/"},{"@type":"ListItem","position":2,"name":"Define request URL with RAML"}]},{"@type":"WebSite","@id":"https:\/\/huongdanjava.com\/#website","url":"https:\/\/huongdanjava.com\/","name":"Huong Dan Java","description":"Java development tutorials","publisher":{"@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/huongdanjava.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/huongdanjava.com\/#\/schema\/person\/dc859d7f8cbea3b593e6738de9cbb82d","name":"Khanh Nguyen","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg","url":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg","contentUrl":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg","width":1267,"height":1517,"caption":"Khanh Nguyen"},"logo":{"@id":"https:\/\/huongdanjava.com\/wp-content\/uploads\/2021\/07\/CC6FAC58-D227-4DD8-93D1-6D6A795577E3_1_201_a.jpeg"},"description":"I love Java and everything related to Java.","sameAs":["https:\/\/huongdanjava.com","https:\/\/www.facebook.com\/nhkhanh2406","https:\/\/x.com\/https:\/\/twitter.com\/KhanhNguyenJ"]}]}},"_links":{"self":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts\/19119","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/comments?post=19119"}],"version-history":[{"count":4,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts\/19119\/revisions"}],"predecessor-version":[{"id":19123,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/posts\/19119\/revisions\/19123"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/media\/19026"}],"wp:attachment":[{"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/media?parent=19119"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/categories?post=19119"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/huongdanjava.com\/wp-json\/wp\/v2\/tags?post=19119"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}