# Operations with Specific RestCorsSettings

This resource lets you work with the Resource Sharing settings of your YouTrack service.
|  Resource  |     ```GENERIC /api/admin/globalSettings/restSettings ```    |
| --- | --- |
|  Returned entity  |  [RestCorsSettings](api-entity-RestCorsSettings.html). For the description of the entity attributes, see [Supported Fields](#RestCorsSettings-supported-fields) section.  |
|  Supported methods  |      * `GET`: [Read a Specific RestCorsSettings](#get-RestCorsSettings-method).    * `POST`: [Update a Specific RestCorsSettings](#update-RestCorsSettings-method).    |

## RestCorsSettings attributes

Represents the Resource Sharing (CORS) configuration of the service.

### Related Resources

Below you can find the list of resources that let you work with this entity.

* [Rest CORS Settings](resource-api-admin-globalSettings-restSettings.html)

### Attributes

This table describes attributes of the `RestCorsSettings` entity.

* To receive an attribute in the response from the server, specify it explicitly in the `fields` request parameter.

* To update an attribute, provide it in the body of a POST request.

|  Field  |  Type  |  Description  |
| --- | --- | --- |
|  id  |  String  |  The ID of the RestCorsSettings. `Read-only`.  |
|  allowedOrigins  |  Array of Strings  |  Origins that are allowed for cross-origin requests.  |
|  allowAllOrigins  |  Boolean  |  Indicates whether requests from all origins are allowed.  |

## Read a Specific RestCorsSettings

Read the Resource Sharing settings of your YouTrack service.

### Request syntax

```GENERIC
GET /api/admin/globalSettings/restSettings?{fields}
```

|  null  |  The database ID of RestCorsSettings  |
| --- | --- |

### Request parameters

|  Parameter  |  Type  |  Description  |
| --- | --- | --- |
|  fields  |  String  |  A list of RestCorsSettings attributes that should be returned in the response. If no field is specified, only the `entityID` is returned.  |

### Sample

#### Sample request

```CURL
https://example.youtrack.cloud/api/admin/globalSettings/restSettings?fields=allowAllOrigins,allowedOrigins
```

#### Sample response body

```JSON
{
  "allowAllOrigins": false,
  "allowedOrigins": [],
  "$type": "RestCorsSettings"
}
```

## Update a Specific RestCorsSettings

Change the Resource Sharing settings of your YouTrack service.

### Required permissions

Requires permissions: Low-level Admin Write

### Request syntax

```GENERIC
POST /api/admin/globalSettings/restSettings?{fields}
```

|  null  |  The database ID of RestCorsSettings  |
| --- | --- |

### Request parameters

|  Parameter  |  Type  |  Description  |
| --- | --- | --- |
|  fields  |  String  |  A list of RestCorsSettings attributes that should be returned in the response. If no field is specified, only the `entityID` is returned.  |

### Sample

#### Sample request

```CURL
curl -L -X POST 'https://example.youtrack.cloud/api/admin/globalSettings/restSettings?fields=allowAllOrigins,allowedOrigins' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
-H 'Authorization: Bearer perm:am9obi5kb2U=.UG9zdG1hbiBKb2huIERvZQ==.jJe0eYhhkV271j1lCpfknNYOEakNk7' \
--data-raw '{
    "allowedOrigins": [
        "https://foo.example/staging:8080",
        "https://foo.example/internal:8342"
    ]
}'
```

#### Sample request body

```JSON
{
  "allowedOrigins": [
    "https://domain.example:8080",
    "https://internal.domain.example:8342"
  ]
}
```

#### Sample response body

```JSON
{
  "allowAllOrigins": false,
  "allowedOrigins": [
    "https://domain.example:8080",
    "https://internal.domain.example:8342"
  ],
  "$type": "RestCorsSettings"
}
```

