**Source URL:** https://limited.veevavault.dev/qualityone/vault-api/api-reference/24.1/vault-objects/object-roles/retrieve-object-record-roles.md

# Retrieve Object Record Roles



Retrieve manually assigned roles on an object record and the users and groups assigned to them.

<Endpoint path="/api/{version}/vobjects/{object_name}/{id}/roles{/role_name}" method="GET"></Endpoint>

## Headers {#headers}

<FieldTable>
| Name | Description |
| --- | --- |
| `Accept` | `application/json` (default) or `application/xml` |
</FieldTable>

## URI Path Parameters {#uri-path-parameters}

<FieldTable>
| Name | Description |
| --- | --- |
| `{object_name}` | The object name. |
| `{id}` | The `id` of the document, binder, or object record. |
| `{/role_name}` | Optional: Include a role name to filter for a specific role. For example, `owner__v`. |
</FieldTable>

## Request {#request}

<CodeExample title="">
```
curl -X GET -H "Authorization: {SESSION_ID}" \
https://myvault.veevavault.com/api/v17.2/vobjects/campaign__c/OBE000000000412/roles

```
</CodeExample>

## Response {#response}

<CodeExample title="">
```
{
    "responseStatus": "SUCCESS",
    "data": [
        {
            "name": "approver__c",
            "users": [
                61583,
                61584,
                86488
            ],
            "groups": [
                3,
                1392631750101
            ],
            "assignment_type": "manual_assignment"
        }
      ]
    }

```
</CodeExample>

## Response Details {#response-details}

Even though the `owner__v` role is automatically assigned when you apply Custom Sharing Rules, the `assignment_type` for roles on objects is always `manual_assignment`.



---

**Previous:** [Object Roles](/qualityone/vault-api/api-reference/24.1/vault-objects/object-roles)  
**Next:** [Assign Users & Groups to Roles on Object Records](/qualityone/vault-api/api-reference/24.1/vault-objects/object-roles/assign-users-groups-to-roles-on-object-records)