Opal Security resources API is one of 22 APIs that Opal Security publishes on the APIs.io network, described by a machine-readable OpenAPI specification.
Tagged areas include Resources. The published artifact set on APIs.io includes an OpenAPI specification, API documentation, and an API reference.
This API exposes
27 operations
across 15 paths,
and defines 44 schemas.
It is described by OpenAPI 3.1.0, at version 1.0.
Requests are made against a single base URL, https://api.opal.dev/v1.
27 operations15 paths44 schemas3 DELETE14 GET3 POST7 PUT
Metadata
The identity and technical contract details declared by the specification.
Opal Security resources API declares
1 security scheme
for authenticating requests.
It accepts HTTP bearer tokens (BearerAuth).
Paths & Operations 27
Across 15 paths, the API surfaces 27 operations — 3 DELETE, 14 GET, 3 POST, 7 PUT. Each is listed below with its method, path, parameters, and response codes.
resources 27
Operations related to resources
GET
/resources
Get resources
getResources9 params→ 200
PUT
/resources
Bulk updates a list of resources.
updateResourcesbody→ 200
POST
/resources
Creates a resource. See [here](https://docs.opal.dev/reference/end-system-objects) for details about importing resources.
createResourcebody→ 200
GET
/resources/{resource_id}
Get resource by ID
get_resource1 param→ 200
DELETE
/resources/{resource_id}
Deletes a resource.
delete_resource1 param→ 200
GET
/resources/{resource_id}/message-channels
Gets the list of audit message channels attached to a resource.
get_resource_message_channels1 param→ 200
PUT
/resources/{resource_id}/message-channels
Sets the list of audit message channels attached to a resource.
set_resource_message_channels1 parambody→ 200
GET
/resources/{resource_id}/visibility
Gets the visibility of this resource.
get_resource_visibility1 param→ 200
PUT
/resources/{resource_id}/visibility
Sets the visibility of this resource.
set_resource_visibility1 parambody→ 200
GET
/resources/{resource_id}/reviewers
Gets the list of owner IDs of the reviewers for a resource.
get_resource_reviewers1 param→ 200
PUT
/resources/{resource_id}/reviewers
Sets the list of reviewers for a resource.
set_resource_reviewers1 parambody→ 200
GET
/resources/{resource_id}/reviewer-stages
Gets the list reviewer stages for a resource.
get_resource_reviewer_stages1 param→ 200
PUT
/resources/{resource_id}/reviewer-stages
Sets the list of reviewer stages for a resource.
set_resource_reviewer_stages1 parambody→ 200
GET
/resources/{resource_id}/non-human-identities
Gets the list of non-human identities with access to this resource.
Returns a list of groups that grant access to the resource
get_resource_groups1 param→ 200
Schemas 44
The contract defines 44 schemas that model the data the API accepts and returns. The most detailed are ResourceRemoteInfo (72 properties), Resource (32 properties), UpdateResourceInfo (23 properties), ResourceAccessUser (11 properties). Each schema is shown below with its type and property counts.
ResourceAccessLevel
object
Access Level Object Description The AccessLevel object is used to represent the level of access that a principal has. The "default" access level is a AccessLev…
2 properties2 required
ResourceAccessUserList
object
3 properties
Resource
object
Resource Object Description The Resource object is used to represent a resource. Usage Example Update from the UPDATE Resources endpoint.
32 properties1 required
VisibilityInfo
object
Visibility infomation of an entity.
2 properties1 required
RDSEngineEnum
string
The database engine for the RDS instance.
RequestConfiguration
object
Request Configuration Object Description The RequestConfiguration object is used to represent a request configuration. Usage Example Returned from the GET Requ…
11 properties6 required
CreateResourceInfo
object
CreateResourceInfo Object Description The CreateResourceInfo object is used to store creation info for a resource. Usage Example Use in the POST Resources endp…
9 properties3 required
EntityTypeEnum
string
The type of an entity.
RolePermissionTargetTypeEnum
string
The type of the target for the role permission.
Tag
object
Tag Object Description The Tag object is used to represent a tag. Usage Example Get tags from the GET Tag endpoint.
6 properties1 required
MessageChannelIDList
object
A list of message channel IDs.
1 property1 required
VisibilityTypeEnum
string
The visibility level of the entity.
ResourceNHI
object
Resource Non-Human Identity Direct Access Object Description This object is used to represent a non-human identity with direct access to a resource.
4 properties2 required
TicketPropagationConfiguration
object
Configuration for ticket propagation, when enabled, a ticket will be created for access changes related to the users in this resource.
4 properties2 required
UpdateResourceInfo
object
UpdateResourceInfo Object Description The UpdateResourceInfo object is used as an input to the UpdateResource API.
23 properties1 required
MessageChannel
object
MessageChannel Object Description The MessageChannel object is used to represent a message channel. Usage Example Update a groups message channel from the UPDA…
5 properties1 required
ResourceAccessUser
object
Resource Access User Object Description The ResourceAccessUser object is used to represent a user with access to a resource, either directly or indirectly thro…
11 properties7 required
SyncTask
object
Represents a sync task that has been completed, either successfully or with errors.
2 properties2 required
ScopedRolePermissionList
object
1 property1 required
UpdateResourceInfoList
object
1 property1 required
GroupResourceList
object
1 property1 required
ResourceUser
object
Resource User Object Description The ResourceUser object is used to represent a user with direct access to a resource.
6 properties5 required
MessageChannelProviderEnum
string
The third party provider of the message channel.
AccessList
object
1 property
ReviewerIDList
object
A list of reviewer IDs.
1 property1 required
Access
object
Access Object Description The Access object is used to represent a principal's access to an entity, either directly or inherited. Usage Example Fetch from the…
8 properties6 required
RolePermissionNameEnum
string
The name of the role permission.
MessageChannelList
object
1 property1 required
GroupResource
object
GroupResource Object Description The GroupResource object is used to represent a relationship between a group and a resource.
6 properties3 required
Condition
object
Condition Object Description The Condition object is used to represent a condition. Usage Example Used to match request configurations to users in RequestConfi…
2 properties
ResourceRemoteInfo
object
Information that defines the remote resource. This replaces the deprecated remoteid and metadata fields.
72 properties
TicketingProviderEnum
string
The third party ticketing platform provider.
PropagationStatusEnum
string
The status of whether the user has been synced to the group or resource in the remote system.
ReviewerStage
object
A reviewer stage.
5 properties4 required
ReviewerStageList
object
1 property1 required
CreateRequestConfigurationInfoList
object
CreateRequestConfigurationInfoList Object Description The CreateRequestConfigurationInfoList object is used as an input to the CreateRequestConfigurations API.…
1 property1 required
ResourceUserAccessStatusEnum
string
The status of the user's access to the resource.
RiskSensitivityEnum
string
Indicates the level of potential impact misuse or unauthorized access may incur.
ScopedRolePermission
object
4 properties3 required
ResourceUserAccessStatus
object
AccessStatus Object Description The AccessStatus object is used to represent the user's access to the resource. Usage Example View the AccessStatus for a resou…
5 properties3 required
TagsList
object
1 property1 required
PaginatedResourcesList
object
3 properties1 required
ResourceTypeEnum
string
The type of the resource.
PropagationStatus
object
The state of whether the push action was propagated to the remote system. If this is null, the access was synced from the remote system.
1 property1 required
Specification
The full machine-readable OpenAPI contract behind this narrative.
Every API here is available over the API and to AI agents over MCP. APIs is not yet its own endpoint on the v1 API. Reach this content through network search and the tag graph, or the MCP server below.
Installs https://mcp.apievangelist.com/mcp in Claude, Cursor, VS Code and the rest — one button, every client.
MCP tools for apis
4 tools reach this content
search_api_evangelistSearch every content type across the network at once.
find_relatedThe shared-tag relevance graph — what else covers this.
get_tagEverything one tag labels, across all content types.
guide_topicPRO — a curated bundle for a topic: area, guidance, rules, papers, stories, services.
A second provider on the same verified email joins the account you already have.
Your account
ⓘWhere this information came from
This is an independent, third-party profile of Opal Security resources API, published by
API Evangelist. We do not operate, host, resell, or
support these APIs, and we are not affiliated with or endorsed by the company unless stated above.
Everything here is built from publicly available information — the company's own site,
developer portal, documentation, public repositories, and the specifications it publishes for public use.
Nothing is obtained by breaching a system, defeating an access control, or using credentials.
The Kin Score and Agent Readiness rating are independently calculated assessments of a company's
public API artifacts, scored against a published rubric. They are not certifications,
endorsements, security assessments, or audits.
Corrections, re-scores, and removal are free — no partnership or purchase required, and
you do not need to justify the request. A removed company is recorded as unrated, never scored
zero for having asked. Acknowledgement within one business day; removal within two.
info@apievangelist.com
·
Read the full data-sourcing policy → On a security or compliance team? Put security in the subject line and
you will get a person, not a form — we will tell you exactly which public URLs this profile was built from.