feat: fill out apis
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
All checks were successful
ci/woodpecker/push/woodpecker Pipeline was successful
This commit is contained in:
parent
5c53a95d3b
commit
f068352bf7
@ -14,31 +14,44 @@ package contributors.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
enum Role {
|
||||
ROLE_UNSPECIFIED = 0;
|
||||
ROLE_OWNER = 1;
|
||||
}
|
||||
|
||||
message Contributor {
|
||||
string id = 1;
|
||||
string product_id = 2;
|
||||
string email = 3;
|
||||
Role role = 4;
|
||||
}
|
||||
|
||||
message ListRequest {
|
||||
string product_id = 1;
|
||||
string product_id = 5;
|
||||
}
|
||||
|
||||
message ListResponse {}
|
||||
|
||||
message CreateRequest {
|
||||
string product_id = 1;
|
||||
message ListResponse {
|
||||
repeated Contributor contributors = 5;
|
||||
}
|
||||
|
||||
message CreateResponse {}
|
||||
message InviteRequest {
|
||||
Contributor contributor = 1;
|
||||
}
|
||||
|
||||
message InviteResponse {}
|
||||
|
||||
message UpdateRequest {
|
||||
string product_id = 1;
|
||||
string contributor_id = 2;
|
||||
Contributor contributor = 1;
|
||||
}
|
||||
|
||||
message UpdateResponse {}
|
||||
|
||||
message DeleteRequest {
|
||||
message RevokeRequest {
|
||||
string product_id = 1;
|
||||
string contributor_id = 2;
|
||||
}
|
||||
|
||||
message DeleteResponse {}
|
||||
message RevokeResponse {}
|
||||
|
||||
service ContributorService {
|
||||
rpc List(ListRequest) returns (ListResponse) {
|
||||
@ -47,21 +60,21 @@ service ContributorService {
|
||||
};
|
||||
};
|
||||
|
||||
rpc Create(CreateRequest) returns (CreateResponse) {
|
||||
rpc Invite(InviteRequest) returns (InviteResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/products/{product_id}/contributors"
|
||||
post: "/v1/products/{contributor.product_id}/contributors"
|
||||
body: "*"
|
||||
};
|
||||
};
|
||||
|
||||
rpc Update(UpdateRequest) returns (UpdateResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/products/{product_id}/contributors/{contributor_id}"
|
||||
post: "/v1/products/{contributor.product_id}/contributors/{contributor.id}"
|
||||
body: "*"
|
||||
};
|
||||
};
|
||||
|
||||
rpc Delete(DeleteRequest) returns (DeleteResponse) {
|
||||
rpc Revoke(RevokeRequest) returns (RevokeResponse) {
|
||||
option (google.api.http) = {
|
||||
delete: "/v1/products/{product_id}/contributors/{contributor_id}"
|
||||
};
|
||||
|
@ -14,11 +14,21 @@ package licenses.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
message License {
|
||||
string id = 1;
|
||||
string product_id = 2;
|
||||
string package_name = 3;
|
||||
}
|
||||
|
||||
message ListRequest {}
|
||||
|
||||
message ListResponse {}
|
||||
message ListResponse {
|
||||
repeated License licenses = 1;
|
||||
}
|
||||
|
||||
message PurchaseRequest {}
|
||||
message PurchaseRequest {
|
||||
License license = 1;
|
||||
}
|
||||
|
||||
message PurchaseResponse {}
|
||||
|
||||
|
@ -14,14 +14,22 @@ package packages.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
message ListRequest {
|
||||
string product_id = 1;
|
||||
message Package {
|
||||
string id = 1;
|
||||
string product_id = 2;
|
||||
string name = 3;
|
||||
}
|
||||
|
||||
message ListResponse {}
|
||||
message ListRequest {
|
||||
string product_id = 5;
|
||||
}
|
||||
|
||||
message ListResponse {
|
||||
repeated Package packages = 5;
|
||||
}
|
||||
|
||||
message CreateRequest {
|
||||
string product_id = 1;
|
||||
Package package = 1;
|
||||
}
|
||||
|
||||
message CreateResponse {}
|
||||
@ -31,11 +39,12 @@ message ReadRequest {
|
||||
string package_name = 2;
|
||||
}
|
||||
|
||||
message ReadResponse {}
|
||||
message ReadResponse {
|
||||
Package package = 1;
|
||||
}
|
||||
|
||||
message UpdateRequest {
|
||||
string product_id = 1;
|
||||
string package_name = 2;
|
||||
Package package = 1;
|
||||
}
|
||||
|
||||
message UpdateResponse {}
|
||||
@ -56,7 +65,7 @@ service PackageService {
|
||||
|
||||
rpc Create(CreateRequest) returns (CreateResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/products/{product_id}/packages"
|
||||
post: "/v1/products/{package.product_id}/packages"
|
||||
body: "*"
|
||||
};
|
||||
};
|
||||
@ -69,7 +78,7 @@ service PackageService {
|
||||
|
||||
rpc Update(UpdateRequest) returns (UpdateResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/products/{product_id}/packages/{package_name}"
|
||||
post: "/v1/products/{package.product_id}/packages/{package.name}"
|
||||
body: "*"
|
||||
};
|
||||
};
|
||||
|
@ -14,11 +14,21 @@ package products.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
message Product {
|
||||
string id = 1;
|
||||
string name = 2;
|
||||
string description = 3;
|
||||
}
|
||||
|
||||
message ListRequest {}
|
||||
|
||||
message ListResponse {}
|
||||
message ListResponse {
|
||||
repeated Product products = 5;
|
||||
}
|
||||
|
||||
message CreateRequest {}
|
||||
message CreateRequest {
|
||||
Product product = 1;
|
||||
}
|
||||
|
||||
message CreateResponse {}
|
||||
|
||||
@ -26,10 +36,12 @@ message ReadRequest {
|
||||
string product_id = 1;
|
||||
}
|
||||
|
||||
message ReadResponse {}
|
||||
message ReadResponse {
|
||||
Product product = 1;
|
||||
}
|
||||
|
||||
message UpdateRequest {
|
||||
string product_id = 1;
|
||||
Product product = 1;
|
||||
}
|
||||
|
||||
message UpdateResponse {}
|
||||
@ -62,7 +74,7 @@ service ProductService {
|
||||
|
||||
rpc Update(UpdateRequest) returns (UpdateResponse) {
|
||||
option (google.api.http) = {
|
||||
post: "/v1/products/{product_id}"
|
||||
post: "/v1/products/{product.id}"
|
||||
body: "*"
|
||||
};
|
||||
};
|
||||
|
720
swagger.json
720
swagger.json
@ -3,19 +3,31 @@
|
||||
"application/json"
|
||||
],
|
||||
"definitions": {
|
||||
"contributorsv1CreateResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"contributorsv1DeleteResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"contributorsv1ListResponse": {
|
||||
"properties": {
|
||||
"contributors": {
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1Contributor",
|
||||
"type": "object"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"contributorsv1UpdateResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"licensesv1ListResponse": {
|
||||
"properties": {
|
||||
"licenses": {
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1License",
|
||||
"type": "object"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"packagesv1CreateResponse": {
|
||||
@ -25,15 +37,34 @@
|
||||
"type": "object"
|
||||
},
|
||||
"packagesv1ListResponse": {
|
||||
"properties": {
|
||||
"packages": {
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1Package",
|
||||
"type": "object"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"packagesv1ReadResponse": {
|
||||
"properties": {
|
||||
"package": {
|
||||
"$ref": "#/definitions/v1Package"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"packagesv1UpdateResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"productsv1CreateRequest": {
|
||||
"properties": {
|
||||
"product": {
|
||||
"$ref": "#/definitions/v1Product"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"productsv1CreateResponse": {
|
||||
@ -43,9 +74,23 @@
|
||||
"type": "object"
|
||||
},
|
||||
"productsv1ListResponse": {
|
||||
"properties": {
|
||||
"products": {
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1Product",
|
||||
"type": "object"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"productsv1ReadResponse": {
|
||||
"properties": {
|
||||
"product": {
|
||||
"$ref": "#/definitions/v1Product"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"productsv1UpdateResponse": {
|
||||
@ -80,40 +125,240 @@
|
||||
"type": "object"
|
||||
},
|
||||
"tokensv1CreateRequest": {
|
||||
"properties": {
|
||||
"token": {
|
||||
"$ref": "#/definitions/v1Token"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"tokensv1CreateResponse": {
|
||||
"properties": {
|
||||
"token": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"tokensv1DeleteResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"tokensv1ListResponse": {
|
||||
"properties": {
|
||||
"tokens": {
|
||||
"items": {
|
||||
"$ref": "#/definitions/v1Token",
|
||||
"type": "object"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1AuthenticateRequest": {
|
||||
"properties": {
|
||||
"clientId": {
|
||||
"title": "required for a handful of workflows\ncan also come from the basic auth header",
|
||||
"type": "string"
|
||||
},
|
||||
"clientSecret": {
|
||||
"type": "string"
|
||||
},
|
||||
"code": {
|
||||
"title": "grant_type=authorization_code",
|
||||
"type": "string"
|
||||
},
|
||||
"codeVerifier": {
|
||||
"type": "string"
|
||||
},
|
||||
"grantType": {
|
||||
"title": "grant_type = client_credentials, refresh_token, password, authorization_code, license",
|
||||
"type": "string"
|
||||
},
|
||||
"license": {
|
||||
"title": "grant_type=license",
|
||||
"type": "string"
|
||||
},
|
||||
"password": {
|
||||
"type": "string"
|
||||
},
|
||||
"redirectUri": {
|
||||
"type": "string"
|
||||
},
|
||||
"refreshToken": {
|
||||
"title": "grant_type=refresh_token",
|
||||
"type": "string"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string"
|
||||
},
|
||||
"username": {
|
||||
"title": "grant_type=password",
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1AuthenticateResponse": {
|
||||
"properties": {
|
||||
"accessToken": {
|
||||
"type": "string"
|
||||
},
|
||||
"error": {
|
||||
"type": "string"
|
||||
},
|
||||
"errorDescription": {
|
||||
"type": "string"
|
||||
},
|
||||
"errorUri": {
|
||||
"type": "string"
|
||||
},
|
||||
"expiresIn": {
|
||||
"format": "int32",
|
||||
"type": "integer"
|
||||
},
|
||||
"refreshToken": {
|
||||
"type": "string"
|
||||
},
|
||||
"scope": {
|
||||
"type": "string"
|
||||
},
|
||||
"tokenType": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1CancelResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"v1Contributor": {
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": "string"
|
||||
},
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string"
|
||||
},
|
||||
"role": {
|
||||
"$ref": "#/definitions/v1Role"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1CurrentResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"v1InviteResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"v1License": {
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"packageName": {
|
||||
"type": "string"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1Package": {
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"productId": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1Product": {
|
||||
"properties": {
|
||||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1PurchaseRequest": {
|
||||
"properties": {
|
||||
"license": {
|
||||
"$ref": "#/definitions/v1License"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1PurchaseResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"v1RevokeResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"v1Role": {
|
||||
"default": "ROLE_UNSPECIFIED",
|
||||
"enum": [
|
||||
"ROLE_UNSPECIFIED",
|
||||
"ROLE_OWNER"
|
||||
],
|
||||
"type": "string"
|
||||
},
|
||||
"v1SignupRequest": {
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": "string"
|
||||
},
|
||||
"password": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
},
|
||||
"v1SignupResponse": {
|
||||
"type": "object"
|
||||
},
|
||||
"v1Token": {
|
||||
"properties": {
|
||||
"expiresAt": {
|
||||
"type": "string"
|
||||
},
|
||||
"expiresIn": {
|
||||
"type": "string"
|
||||
},
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
},
|
||||
"noExpiry": {
|
||||
"title": "one of",
|
||||
"type": "boolean"
|
||||
},
|
||||
"scopes": {
|
||||
"items": {
|
||||
"type": "string"
|
||||
},
|
||||
"type": "array"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"info": {
|
||||
@ -255,6 +500,273 @@
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{contributor.productId}/contributors": {
|
||||
"post": {
|
||||
"operationId": "ContributorService_Invite",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "contributor.productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"properties": {
|
||||
"contributor": {
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": "string"
|
||||
},
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"role": {
|
||||
"$ref": "#/definitions/v1Role"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/v1InviteResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"ContributorService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{contributor.productId}/contributors/{contributor.id}": {
|
||||
"post": {
|
||||
"operationId": "ContributorService_Update",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "contributor.productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "path",
|
||||
"name": "contributor.id",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"properties": {
|
||||
"contributor": {
|
||||
"properties": {
|
||||
"email": {
|
||||
"type": "string"
|
||||
},
|
||||
"role": {
|
||||
"$ref": "#/definitions/v1Role"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/contributorsv1UpdateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"ContributorService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{package.productId}/packages": {
|
||||
"post": {
|
||||
"operationId": "PackageService_Create",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "package.productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"properties": {
|
||||
"package": {
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/packagesv1CreateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"PackageService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{package.productId}/packages/{package.name}": {
|
||||
"post": {
|
||||
"operationId": "PackageService_Update",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "package.productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "path",
|
||||
"name": "package.name",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"properties": {
|
||||
"package": {
|
||||
"properties": {
|
||||
"id": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/packagesv1UpdateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"PackageService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{product.id}": {
|
||||
"post": {
|
||||
"operationId": "ProductService_Update",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "product.id",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"properties": {
|
||||
"product": {
|
||||
"properties": {
|
||||
"description": {
|
||||
"type": "string"
|
||||
},
|
||||
"name": {
|
||||
"type": "string"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
},
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/productsv1UpdateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"ProductService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{productId}": {
|
||||
"delete": {
|
||||
"operationId": "ProductService_Delete",
|
||||
@ -311,42 +823,6 @@
|
||||
"tags": [
|
||||
"ProductService"
|
||||
]
|
||||
},
|
||||
"post": {
|
||||
"operationId": "ProductService_Update",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/productsv1UpdateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"ProductService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{productId}/contributors": {
|
||||
@ -377,47 +853,11 @@
|
||||
"tags": [
|
||||
"ContributorService"
|
||||
]
|
||||
},
|
||||
"post": {
|
||||
"operationId": "ContributorService_Create",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/contributorsv1CreateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"ContributorService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{productId}/contributors/{contributorId}": {
|
||||
"delete": {
|
||||
"operationId": "ContributorService_Delete",
|
||||
"operationId": "ContributorService_Revoke",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
@ -436,49 +876,7 @@
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/contributorsv1DeleteResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"ContributorService"
|
||||
]
|
||||
},
|
||||
"post": {
|
||||
"operationId": "ContributorService_Update",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "path",
|
||||
"name": "contributorId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/contributorsv1UpdateResponse"
|
||||
"$ref": "#/definitions/v1RevokeResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
@ -521,42 +919,6 @@
|
||||
"tags": [
|
||||
"PackageService"
|
||||
]
|
||||
},
|
||||
"post": {
|
||||
"operationId": "PackageService_Create",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/packagesv1CreateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"PackageService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/products/{productId}/packages/{packageName}": {
|
||||
@ -627,48 +989,6 @@
|
||||
"tags": [
|
||||
"PackageService"
|
||||
]
|
||||
},
|
||||
"post": {
|
||||
"operationId": "PackageService_Update",
|
||||
"parameters": [
|
||||
{
|
||||
"in": "path",
|
||||
"name": "productId",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "path",
|
||||
"name": "packageName",
|
||||
"required": true,
|
||||
"type": "string"
|
||||
},
|
||||
{
|
||||
"in": "body",
|
||||
"name": "body",
|
||||
"required": true,
|
||||
"schema": {
|
||||
"type": "object"
|
||||
}
|
||||
}
|
||||
],
|
||||
"responses": {
|
||||
"200": {
|
||||
"description": "A successful response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/packagesv1UpdateResponse"
|
||||
}
|
||||
},
|
||||
"default": {
|
||||
"description": "An unexpected error response.",
|
||||
"schema": {
|
||||
"$ref": "#/definitions/rpcStatus"
|
||||
}
|
||||
}
|
||||
},
|
||||
"tags": [
|
||||
"PackageService"
|
||||
]
|
||||
}
|
||||
},
|
||||
"/v1/token": {
|
||||
|
@ -14,17 +14,73 @@ package tokens.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
message AuthenticateRequest {}
|
||||
message AuthenticateRequest {
|
||||
// grant_type = client_credentials, refresh_token, password, authorization_code, license
|
||||
string grant_type = 1;
|
||||
|
||||
message AuthenticateResponse {}
|
||||
// required for a handful of workflows
|
||||
// can also come from the basic auth header
|
||||
string client_id = 2;
|
||||
string client_secret = 3;
|
||||
|
||||
// grant_type=refresh_token
|
||||
string refresh_token = 4;
|
||||
|
||||
// grant_type=password
|
||||
string username = 5;
|
||||
string password = 6;
|
||||
|
||||
// grant_type=authorization_code
|
||||
string code = 7;
|
||||
string redirect_uri = 8;
|
||||
string code_verifier = 9;
|
||||
|
||||
// grant_type=license
|
||||
string license = 10;
|
||||
|
||||
// allow for room to add additional grant_type's
|
||||
|
||||
string scope = 20;
|
||||
}
|
||||
|
||||
message AuthenticateResponse {
|
||||
string access_token = 1;
|
||||
string token_type = 2;
|
||||
int32 expires_in = 3;
|
||||
string refresh_token = 4;
|
||||
string scope = 5;
|
||||
|
||||
// error = invalid_request, invalid_client, invalid_grant, invalid_scope, unauthorized_client, unsupported_grant_type
|
||||
|
||||
string error = 10;
|
||||
string error_description = 11;
|
||||
string error_uri = 12;
|
||||
}
|
||||
|
||||
message Token {
|
||||
string id = 1;
|
||||
string name = 2;
|
||||
repeated string scopes = 3;
|
||||
|
||||
// one of
|
||||
bool no_expiry = 4;
|
||||
string expires_at = 5;
|
||||
string expires_in = 6;
|
||||
}
|
||||
|
||||
message ListRequest {}
|
||||
|
||||
message ListResponse {}
|
||||
message ListResponse {
|
||||
repeated Token tokens = 5;
|
||||
}
|
||||
|
||||
message CreateRequest {}
|
||||
message CreateRequest {
|
||||
Token token = 1;
|
||||
}
|
||||
|
||||
message CreateResponse {}
|
||||
message CreateResponse {
|
||||
string token = 1;
|
||||
}
|
||||
|
||||
message DeleteRequest {
|
||||
string token_id = 1;
|
||||
|
@ -14,10 +14,15 @@ package users.v1;
|
||||
|
||||
import "google/api/annotations.proto";
|
||||
|
||||
message SignupRequest {}
|
||||
message SignupRequest {
|
||||
string email = 1;
|
||||
string password = 2;
|
||||
}
|
||||
|
||||
message SignupResponse {}
|
||||
|
||||
message CurrentRequest {}
|
||||
|
||||
message CurrentResponse {}
|
||||
|
||||
service UserService {
|
||||
|
Loading…
Reference in New Issue
Block a user