summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAthar Hameed <atharh@gmail.com>2018-07-12 12:53:13 +0500
committerAthar Hameed <atharh@gmail.com>2018-07-12 12:53:13 +0500
commitedf1945f3815d1bd8d2fe6a91e3c3c132e1b02ff (patch)
treedb9084662bc91234353b55e1fb44c0eb9f4089b5
parentba38931d90b6149e7bf1176dc5075b92a51466ae (diff)
downloadgitlab-ce-docs-add-api-params-array-hash.tar.gz
Add examples for array and hash type API paramsdocs-add-api-params-array-hash
-rw-r--r--doc/api/README.md32
1 files changed, 31 insertions, 1 deletions
diff --git a/doc/api/README.md b/doc/api/README.md
index 6267618d3bc..4566319ad45 100644
--- a/doc/api/README.md
+++ b/doc/api/README.md
@@ -388,7 +388,7 @@ For example, `/` is represented by `%2F`:
GET /api/v4/projects/diaspora%2Fdiaspora
```
-## Branches & tags name encoding
+## Branches and tags name encoding
If your branch or tag contains a `/`, make sure the branch/tag name is
URL-encoded.
@@ -399,6 +399,36 @@ For example, `/` is represented by `%2F`:
GET /api/v4/projects/1/branches/my%2Fbranch/commits
```
+## Encoding API parameters of `array` and `hash` types
+
+When making an API call with parameters of type `array` and/or `hash`, the parameters may be
+specified as shown below.
+
+### `array`
+
+`import_sources` is a parameter of type `array`:
+
+```
+curl --request POST --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" \
+-d "import_sources[]=github" \
+-d "import_sources[]=bitbucket" \
+"https://gitlab.example.com/api/v4/some_endpoint
+```
+
+### `hash`
+
+`override_params` is a parameter of type `hash`:
+
+```
+curl --request POST --header "PRIVATE-TOKEN: 9koXpg98eAheJpvBs5tK" \
+--form "namespace=email" \
+--form "path=impapi" \
+--form "file=@/path/to/somefile.txt"
+--form "override_params[visibility]=private" \
+--form "override_params[some_other_param]=some_value" \
+https://gitlab.example.com/api/v4/projects/import
+```
+
## `id` vs `iid`
When you work with the API, you may notice two similar fields in API entities: