Skip to main content

REST API documentation

minder/v1/minder.proto (version not set)

Download OpenAPI specification:Download

HealthService

HealthService_CheckHealth

Responses

Response samples

Content type
application/json
{
  • "status": "string"
}

ArtifactService

ArtifactService_GetArtifactByName

path Parameters
name
required
string.+
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "artifact": {
    },
  • "versions": [
    ]
}

ArtifactService_GetArtifactById

path Parameters
id
required
string
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "artifact": {
    },
  • "versions": [
    ]
}

ArtifactService_ListArtifacts2

query Parameters
provider
string
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
from
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ]
}

ArtifactService_ListArtifacts

path Parameters
provider
required
string
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
from
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ]
}

OAuthService

OAuthService_StoreProviderToken2

Request Body schema: application/json
required
provider
string
accessToken
string
owner
string
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

Responses

Request samples

Content type
application/json
{
  • "provider": "string",
  • "accessToken": "string",
  • "owner": "string",
  • "context": {
    }
}

Response samples

Content type
application/json
{ }

OAuthService_GetAuthorizationURL

query Parameters
cli
boolean
port
integer <int32>
owner
string
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
redirectUrl
string
config
object

config is a JSON object that can be used to pass additional configuration

providerClass
string

Responses

Response samples

Content type
application/json
{
  • "url": "string",
  • "state": "string"
}

VerifyProviderCredential verifies that a credential has been created matching the enrollment nonce

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
enrollmentNonce
string

enrollment_nonce is the state parameter returned when enrolling the provider

Responses

Response samples

Content type
application/json
{
  • "created": true,
  • "providerName": "string"
}

VerifyProviderTokenFrom verifies that a token has been created for a provider since given timestamp

path Parameters
provider
required
string
timestamp
required
string <date-time>
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "status": "string"
}

VerifyProviderTokenFrom verifies that a token has been created for a provider since given timestamp

path Parameters
timestamp
required
string <date-time>
query Parameters
provider
string
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "status": "string"
}

OAuthService_StoreProviderToken

path Parameters
provider
required
string
Request Body schema: application/json
required
accessToken
string
owner
string
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

Responses

Request samples

Content type
application/json
{
  • "accessToken": "string",
  • "owner": "string",
  • "context": {
    }
}

Response samples

Content type
application/json
{ }

RepositoryService

RepositoryService_ListRepositories2

query Parameters
provider
string
limit
string <int64>
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
cursor
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "cursor": "string"
}

RepositoryService_ListRepositories

path Parameters
provider
required
string
query Parameters
limit
string <int64>
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
cursor
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "cursor": "string"
}

RepositoryService_ListRemoteRepositoriesFromProvider

path Parameters
provider
required
string
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "entities": [
    ]
}

RepositoryService_ListRemoteRepositoriesFromProvider2

query Parameters
provider
string
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "results": [
    ],
  • "entities": [
    ]
}

RepositoryService_GetRepositoryById

path Parameters
repositoryId
required
string
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "repository": {
    }
}

RepositoryService_DeleteRepositoryById

path Parameters
repositoryId
required
string
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "repositoryId": "string"
}

RepositoryService_GetRepositoryByName2

path Parameters
name
required
string.+
query Parameters
provider
string
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "repository": {
    }
}

RepositoryService_DeleteRepositoryByName2

path Parameters
name
required
string.+
query Parameters
provider
string
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "name": "string"
}

RepositoryService_GetRepositoryByName

path Parameters
provider
required
string
name
required
string.+
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "repository": {
    }
}

RepositoryService_DeleteRepositoryByName

path Parameters
provider
required
string
name
required
string.+
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "name": "string"
}

RepositoryService_RegisterRepository

path Parameters
provider
required
string
Request Body schema: application/json
required
object (v1UpstreamRepositoryRef)
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

object (v1UpstreamEntityRef)

UpstreamEntityRef providers enough information for the provider to identify the entity in the upstream system.

Responses

Request samples

Content type
application/json
{
  • "repository": {
    },
  • "context": {
    },
  • "entity": {
    }
}

Response samples

Content type
application/json
{
  • "result": {
    }
}

RepositoryService_RegisterRepository2

Request Body schema: application/json
required
provider
string
object (v1UpstreamRepositoryRef)
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

object (v1UpstreamEntityRef)

UpstreamEntityRef providers enough information for the provider to identify the entity in the upstream system.

Responses

Request samples

Content type
application/json
{
  • "provider": "string",
  • "repository": {
    },
  • "context": {
    },
  • "entity": {
    }
}

Response samples

Content type
application/json
{
  • "result": {
    }
}

UserService

UserService_GetUser

Responses

Response samples

Content type
application/json
{
  • "user": {
    },
  • "projects": [
    ],
  • "projectRoles": [
    ]
}

UserService_DeleteUser

Responses

Response samples

Content type
application/json
{ }

UserService_CreateUser

Request Body schema: application/json
required
object (User service)

Responses

Request samples

Content type
application/json
{ }

Response samples

Content type
application/json
{
  • "id": 0,
  • "organizationId": "string",
  • "organizatioName": "string",
  • "projectId": "string",
  • "projectName": "string",
  • "identitySubject": "string",
  • "createdAt": "2019-08-24T14:15:22Z",
  • "context": {
    }
}

ResolveInvitation allows a user to accept or decline an invitation to a project given the code for the invitation. A user may call ResolveInvitation to accept or decline an invitation even if they have not called CreateUser. If a user accepts an invitation via this call before calling CreateUser, a Minder user record will be created, but no additional projects will be created (unlike CreateUser, which will also create a default project).

path Parameters
code
required
string

code is the code of the invitation to resolve.

query Parameters
accept
boolean

accept is true if the invitation is accepted, false if it is rejected.

Responses

Response samples

Content type
application/json
{
  • "role": "string",
  • "email": "string",
  • "project": "string",
  • "isAccepted": true,
  • "projectDisplay": "string"
}

ListInvitations returns a list of invitations for the user based on the user's registered email address. Note that a user who receives an invitation code may still accept the invitation even if the code was directed to a different email address. This is because understanding the routing of email messages is beyond the scope of Minder.

This API endpoint may be called without the logged-in user previously having called CreateUser.

Responses

Response samples

Content type
application/json
{
  • "invitations": [
    ]
}

ProfileService

ProfileService_CreateProfile

Request Body schema: application/json
required
object (v1Profile)

Profile defines a profile that is user defined.

object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

id
string

id is the id of the profile. This is optional and is set by the system.

name
string

name is the name of the profile instance.

labels
Array of strings

labels are a set of system-provided attributes which can be used to filter profiles and status results. Labels cannot be set by the user, but are returned in ListProfiles.

Labels use DNS label constraints, with a possible namespace prefix separated by a colon (:). They are intended to allow filtering, but not to store arbitrary metadata. DNS labels are 1-63 character alphanumeric strings with internal hyphens. An RE2-style validation regex would be:

DNS_STR = "a-zA-Z0-9?" ($DNS_STR:)?$DNS_STR

Array of objects (ProfileRule)

These are the entities that one could set in the profile.

Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileSelector)
remediate
string (whether and how to remediate (on,off,dry_run) this is optional and defaults to "off")
alert
string (whether and how to alert (on,off,dry_run) this is optional and defaults to "on")
type
string

type is a placeholder for the object type. It should always be set to "profile".

version
string (version is the version of the profile type. In this case, it is "v1")
displayName
string

display_name is the display name of the profile.

Responses

Request samples

Content type
application/json
{
  • "profile": {
    }
}

Response samples

Content type
application/json
{
  • "profile": {
    }
}

ProfileService_UpdateProfile

Request Body schema: application/json
required
object (v1Profile)

Profile defines a profile that is user defined.

object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

id
string

id is the id of the profile. This is optional and is set by the system.

name
string

name is the name of the profile instance.

labels
Array of strings

labels are a set of system-provided attributes which can be used to filter profiles and status results. Labels cannot be set by the user, but are returned in ListProfiles.

Labels use DNS label constraints, with a possible namespace prefix separated by a colon (:). They are intended to allow filtering, but not to store arbitrary metadata. DNS labels are 1-63 character alphanumeric strings with internal hyphens. An RE2-style validation regex would be:

DNS_STR = "a-zA-Z0-9?" ($DNS_STR:)?$DNS_STR

Array of objects (ProfileRule)

These are the entities that one could set in the profile.

Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileSelector)
remediate
string (whether and how to remediate (on,off,dry_run) this is optional and defaults to "off")
alert
string (whether and how to alert (on,off,dry_run) this is optional and defaults to "on")
type
string

type is a placeholder for the object type. It should always be set to "profile".

version
string (version is the version of the profile type. In this case, it is "v1")
displayName
string

display_name is the display name of the profile.

Responses

Request samples

Content type
application/json
{
  • "profile": {
    }
}

Response samples

Content type
application/json
{
  • "profile": {
    }
}

ProfileService_GetProfileByName

path Parameters
name
required
string.+

name is the name of the profile to get

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "profile": {
    }
}

ProfileService_GetProfileStatusByName

path Parameters
name
required
string.+

name is the name of the profile to get

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
entity.type
string
Default: "ENTITY_UNSPECIFIED"
Enum: "ENTITY_UNSPECIFIED" "ENTITY_REPOSITORIES" "ENTITY_BUILD_ENVIRONMENTS" "ENTITY_ARTIFACTS" "ENTITY_PULL_REQUESTS" "ENTITY_RELEASE" "ENTITY_PIPELINE_RUN" "ENTITY_TASK_RUN" "ENTITY_BUILD"

entity is the entity to get status for. Incompatible with all

entity.id
string

id is the ID of the entity to get status for. Incompatible with all

all
boolean
rule
string

rule is the type of the rule. Deprecated in favor of rule_type

ruleType
string
ruleName
string

Responses

Response samples

Content type
application/json
{
  • "profileStatus": {
    },
  • "ruleEvaluationStatus": [
    ]
}

ProfileService_GetProfileById

path Parameters
id
required
string

id is the id of the profile to get

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "profile": {
    }
}

ProfileService_DeleteProfile

path Parameters
id
required
string

id is the id of the profile to delete

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{ }

ProfileService_PatchProfile

path Parameters
id
required
string

The id of the profile to patch. Same explanation about explicitness as for the context

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
Request Body schema: application/json
required

The patch to apply to the profile

object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

id
string

id is the id of the profile. This is optional and is set by the system.

name
string

name is the name of the profile instance.

labels
Array of strings

labels are a set of system-provided attributes which can be used to filter profiles and status results. Labels cannot be set by the user, but are returned in ListProfiles.

Labels use DNS label constraints, with a possible namespace prefix separated by a colon (:). They are intended to allow filtering, but not to store arbitrary metadata. DNS labels are 1-63 character alphanumeric strings with internal hyphens. An RE2-style validation regex would be:

DNS_STR = "a-zA-Z0-9?" ($DNS_STR:)?$DNS_STR

Array of objects (ProfileRule)

These are the entities that one could set in the profile.

Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileRule)
Array of objects (ProfileSelector)
remediate
string (whether and how to remediate (on,off,dry_run) this is optional and defaults to "off")
alert
string (whether and how to alert (on,off,dry_run) this is optional and defaults to "on")
type
string

type is a placeholder for the object type. It should always be set to "profile".

version
string (version is the version of the profile type. In this case, it is "v1")
displayName
string

display_name is the display name of the profile.

Responses

Request samples

Content type
application/json
{
  • "context": {
    },
  • "id": "string",
  • "name": "string",
  • "labels": [
    ],
  • "repository": [
    ],
  • "buildEnvironment": [
    ],
  • "artifact": [
    ],
  • "pullRequest": [
    ],
  • "release": [
    ],
  • "pipelineRun": [
    ],
  • "taskRun": [
    ],
  • "build": [
    ],
  • "selection": [
    ],
  • "remediate": "string",
  • "alert": "string",
  • "type": "string",
  • "version": "string",
  • "displayName": "string"
}

Response samples

Content type
application/json
{
  • "profile": {
    }
}

ProfileService_GetProfileStatusByProject

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "profileStatus": [
    ]
}

ProfileService_ListProfiles

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
labelFilter
string

Filter profiles to only those matching the specified labels.

The default is to return all user-created profiles; the string "*" can be used to select all profiles, including system profiles. This syntax may be expanded in the future.

Responses

Response samples

Content type
application/json
{
  • "profiles": [
    ]
}

RuleTypeService

RuleTypeService_CreateRuleType

Request Body schema: application/json
required

CreateRuleTypeRequest is the request to create a rule type.

object (v1RuleType)

RuleType defines rules that may or may not be user defined. The version is assumed from the folder's version.

id
string

id is the id of the rule type. This is mostly optional and is set by the server.

name
string

name is the name of the rule type.

displayName
string

display_name is the display name of the rule type.

shortFailureMessage
string

short_failure_message is the message to display when the evaluation fails.

object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

object (RuleTypeDefinition)

Definition defines the rule type. It encompases the schema and the data evaluation.

description
string

description is the description of the rule type.

guidance
string

guidance are instructions we give the user in case a rule fails.

object (v1Severity)

Severity defines the severity of the rule.

releasePhase
string (v1RuleTypeReleasePhase)
Default: "RULE_TYPE_RELEASE_PHASE_UNSPECIFIED"
Enum: "RULE_TYPE_RELEASE_PHASE_UNSPECIFIED" "RULE_TYPE_RELEASE_PHASE_ALPHA" "RULE_TYPE_RELEASE_PHASE_BETA" "RULE_TYPE_RELEASE_PHASE_GA" "RULE_TYPE_RELEASE_PHASE_DEPRECATED"

RuleTypeReleasePhase defines the release phase of the rule type.

Responses

Request samples

Content type
application/json
{
  • "ruleType": {
    }
}

Response samples

Content type
application/json
{
  • "ruleType": {
    }
}

RuleTypeService_UpdateRuleType

Request Body schema: application/json
required

UpdateRuleTypeRequest is the request to update a rule type.

object (v1RuleType)

RuleType defines rules that may or may not be user defined. The version is assumed from the folder's version.

id
string

id is the id of the rule type. This is mostly optional and is set by the server.

name
string

name is the name of the rule type.

displayName
string

display_name is the display name of the rule type.

shortFailureMessage
string

short_failure_message is the message to display when the evaluation fails.

object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

object (RuleTypeDefinition)

Definition defines the rule type. It encompases the schema and the data evaluation.

description
string

description is the description of the rule type.

guidance
string

guidance are instructions we give the user in case a rule fails.

object (v1Severity)

Severity defines the severity of the rule.

releasePhase
string (v1RuleTypeReleasePhase)
Default: "RULE_TYPE_RELEASE_PHASE_UNSPECIFIED"
Enum: "RULE_TYPE_RELEASE_PHASE_UNSPECIFIED" "RULE_TYPE_RELEASE_PHASE_ALPHA" "RULE_TYPE_RELEASE_PHASE_BETA" "RULE_TYPE_RELEASE_PHASE_GA" "RULE_TYPE_RELEASE_PHASE_DEPRECATED"

RuleTypeReleasePhase defines the release phase of the rule type.

Responses

Request samples

Content type
application/json
{
  • "ruleType": {
    }
}

Response samples

Content type
application/json
{
  • "ruleType": {
    }
}

RuleTypeService_GetRuleTypeByName

path Parameters
name
required
string.+

name is the name of the rule type.

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "ruleType": {
    }
}

RuleTypeService_GetRuleTypeById

path Parameters
id
required
string

id is the id of the rule type.

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "ruleType": {
    }
}

RuleTypeService_DeleteRuleType

path Parameters
id
required
string

id is the id of the rule type to be deleted.

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{ }

RuleTypeService_ListRuleTypes

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "ruleTypes": [
    ]
}

EvalResultsService

EvalResultsService_ListEvaluationHistory

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
entityType
Array of strings

List of entity types to retrieve.

entityName
Array of strings

List of entity names to retrieve.

profileName
Array of strings

List of profile names to retrieve.

status
Array of strings

List of evaluation statuses to retrieve.

remediation
Array of strings

List of remediation statuses to retrieve.

alert
Array of strings

List of alert statuses to retrieve.

from
string <date-time>

Timestamp representing the start time of the selection window.

to
string <date-time>

Timestamp representing the end time of the selection window.

cursor.cursor
string

cursor is the index to start from within the collection being retrieved. It's an opaque payload specified and interpreted on an per-rpc basis.

cursor.size
integer <int64>

size is the number of items to retrieve from the collection.

Responses

Response samples

Content type
application/json
{
  • "data": [
    ],
  • "page": {
    }
}

EvalResultsService_GetEvaluationHistory

path Parameters
id
required
string
query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "evaluation": {
    }
}

EvalResultsService_ListEvaluationResults

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
profile
string

ID can contain either a profile name or an ID

labelFilter
string

Filter profiles to only those matching the specified labels.

The default is to return all user-created profiles; the string "*" can be used to select all profiles, including system profiles. This syntax may be expanded in the future.

ruleName
Array of strings

If set, only return evaluation results for the named rules. If empty, return evaluation results for all rules

Responses

Response samples

Content type
application/json
{
  • "entities": [
    ]
}

PermissionsService

PermissionsService_AssignRole

Request Body schema: application/json
required
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

object (v1RoleAssignment)

Responses

Request samples

Content type
application/json
{
  • "context": {
    },
  • "roleAssignment": {
    }
}

Response samples

Content type
application/json
{
  • "roleAssignment": {
    },
  • "invitation": {
    }
}

PermissionsService_ListRoleAssignments

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "roleAssignments": [
    ],
  • "invitations": [
    ]
}

PermissionsService_RemoveRole

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
roleAssignment.role
string

role is the role that is assigned.

roleAssignment.subject
string

subject is the subject to which the role is assigned.

roleAssignment.displayName
string

display_name is the display name of the subject.

roleAssignment.project
string

project is the project in which the role is assigned.

roleAssignment.email
string

email is the email address of the subject used for invitations.

roleAssignment.firstName
string

first_name is the first name of the subject.

roleAssignment.lastName
string

last_name is the last name of the subject.

Responses

Response samples

Content type
application/json
{
  • "roleAssignment": {
    },
  • "invitation": {
    }
}

PermissionsService_ListRoles

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "roles": [
    ]
}

PermissionsService_UpdateRole

Request Body schema: application/json
required
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

subject
string (subject is the account to change permissions for. The account must already have permissions on the project)
roles
Array of strings

All subject roles are replaced with the following role assignments. Must be non-empty, use RemoveRole to remove permissions entirely from the project.

email
string (email is the email address of the subject used for updating invitations)

Responses

Request samples

Content type
application/json
{
  • "context": {
    },
  • "subject": "string",
  • "roles": [
    ],
  • "email": "string"
}

Response samples

Content type
application/json
{
  • "roleAssignments": [
    ],
  • "invitations": [
    ]
}

ProjectsService

ProjectsService_ListProjects

Responses

Response samples

Content type
application/json
{
  • "projects": [
    ]
}

ProjectsService_DeleteProject

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "projectId": "string"
}

ProjectsService_CreateProject

Request Body schema: application/json
required
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

name
string

name is the name of the project to create.

Responses

Request samples

Content type
application/json
{
  • "context": {
    },
  • "name": "string"
}

Response samples

Content type
application/json
{
  • "project": {
    }
}

ProjectsService_UpdateProject

Request Body schema: application/json
required
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

displayName
string

display_name is the display name of the project to update.

description
string

description is the description of the project to update.

Responses

Request samples

Content type
application/json
{
  • "context": {
    },
  • "displayName": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "project": {
    }
}

ProjectsService_PatchProject

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
Request Body schema: application/json
required

patch is the patch to apply to the project

displayName
string

display_name is the display name of the project to update.

description
string

description is the description of the project to update.

Responses

Request samples

Content type
application/json
{
  • "displayName": "string",
  • "description": "string"
}

Response samples

Content type
application/json
{
  • "project": {
    }
}

ProjectsService_CreateEntityReconciliationTask

Request Body schema: application/json
required
object (v1EntityTypedId)

EntiryTypeId is a message that carries an ID together with a type to uniquely identify an entity such as (repo, 1), (artifact, 2), ...

object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

Responses

Request samples

Content type
application/json
{
  • "entity": {
    },
  • "context": {
    }
}

Response samples

Content type
application/json
{ }

ProjectsService_ListChildProjects

path Parameters
context.projectId
required
string

project is the project ID

query Parameters
context.provider
string

name of the provider. Set to empty string when not applicable.

recursive
boolean

recursive is true if child projects should be listed recursively.

Responses

Response samples

Content type
application/json
{
  • "projects": [
    ]
}

ProvidersService

GetUnclaimedProviders returns a list of known provider configurations that this user could claim based on their identity. This is a read-only operation for use by clients which wish to present a menu of options.

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "providers": [
    ]
}

ProvidersService_ReconcileEntityRegistration

Request Body schema: application/json
required
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

entity
string

Responses

Request samples

Content type
application/json
{
  • "context": {
    },
  • "entity": "string"
}

Response samples

Content type
application/json
{ }

ProvidersService_ListProviderClasses

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "providerClasses": [
    ]
}

ProvidersService_ListProviders

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
limit
integer <int32>

limit is the maximum number of providers to return.

cursor
string

cursor is the cursor to use for the page of results, empty if at the beginning

Responses

Response samples

Content type
application/json
{
  • "providers": [
    ],
  • "cursor": "string"
}

ProvidersService_DeleteProvider

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "name": "string"
}

ProvidersService_CreateProvider

Request Body schema: application/json
required
object (v1Context)

Context defines the context in which a rule is evaluated. this normally refers to a combination of the provider, organization and project.

Removing the 'optional' keyword from the following two fields below will break buf compatibility checks.

object (v1Provider)

Responses

Request samples

Content type
application/json
{
  • "context": {
    },
  • "provider": {
    }
}

Response samples

Content type
application/json
{
  • "provider": {
    },
  • "authorization": {
    }
}

ProvidersService_PatchProvider

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string
Request Body schema: application/json
required
name
string

name is the name of the provider.

class
string

class is the name of the provider implementation, eg. 'github' or 'gh-app'.

project
string

project is the project where the provider is. This is ignored on input in favor of the context field in CreateProviderRequest.

version
string

version is the version of the provider.

implements
Array of strings (v1ProviderType)
Items Enum: "PROVIDER_TYPE_UNSPECIFIED" "PROVIDER_TYPE_GITHUB" "PROVIDER_TYPE_REST" "PROVIDER_TYPE_GIT" "PROVIDER_TYPE_OCI" "PROVIDER_TYPE_REPO_LISTER" "PROVIDER_TYPE_IMAGE_LISTER"

implements is the list of interfaces that the provider implements.

config
object

config is the configuration of the provider.

authFlows
Array of strings (v1AuthorizationFlow)
Items Enum: "AUTHORIZATION_FLOW_UNSPECIFIED" "AUTHORIZATION_FLOW_NONE" "AUTHORIZATION_FLOW_USER_INPUT" "AUTHORIZATION_FLOW_OAUTH2_AUTHORIZATION_CODE_FLOW" "AUTHORIZATION_FLOW_GITHUB_APP_FLOW"

auth_flows is the list of authorization flows that the provider supports.

object (v1ProviderParameter)
credentialsState
string

credentials_state is the state of the credentials for the provider. This is an output-only field. It may be: "set", "unset", "not_applicable".

Responses

Request samples

Content type
application/json
{
  • "name": "string",
  • "class": "string",
  • "project": "string",
  • "version": "string",
  • "implements": [
    ],
  • "config": { },
  • "authFlows": [
    ],
  • "parameters": {
    },
  • "credentialsState": "string"
}

Response samples

Content type
application/json
{
  • "provider": {
    }
}

ProvidersService_DeleteProviderByID

path Parameters
id
required
string

id is the id of the provider to delete

query Parameters
context.provider
string

name of the provider

context.project
string

ID of the project

context.retiredOrganization
string

Responses

Response samples

Content type
application/json
{
  • "id": "string"
}

ProvidersService_GetProvider

path Parameters
name
required
string

name is the name of the provider to get.

query Parameters
context.provider