mirror of
https://github.com/fnproject/fn.git
synced 2022-10-28 21:29:17 +03:00
* add DateTime sans mgo * change all uses of strfmt.DateTime to common.DateTime, remove test strfmt usage * remove api tests, system-test dep on api test multiple reasons to remove the api tests: * awkward dependency with fn_go meant generating bindings on a branched fn to vendor those to test new stuff. this is at a minimum not at all intuitive, worth it, nor a fun way to spend the finite amount of time we have to live. * api tests only tested a subset of functionality that the server/ api tests already test, and we risk having tests where one tests some thing and the other doesn't. let's not. we have too many test suites as it is, and these pretty much only test that we updated the fn_go bindings, which is actually a hassle as noted above and the cli will pretty quickly figure out anyway. * fn_go relies on openapi, which relies on mgo, which is deprecated and we'd like to remove as a dependency. openapi is a _huge_ dep built in a NIH fashion, that cannot simply remove the mgo dep as users may be using it. we've now stolen their date time and otherwise killed usage of it in fn core, for fn_go it still exists but that's less of a problem. * update deps removals: * easyjson * mgo * go-openapi * mapstructure * fn_go * purell * go-validator also, had to lock docker. we shouldn't use docker on master anyway, they strongly advise against that. had no luck with latest version rev, so i locked it to what we were using before. until next time. the rest is just playing dep roulette, those end up removing a ton tho * fix exec test to work * account for john le cache
407 lines
11 KiB
JSON
407 lines
11 KiB
JSON
{
|
|
"auth": {
|
|
"oauth2": {
|
|
"scopes": {
|
|
"https://www.googleapis.com/auth/plus.login": {
|
|
"description": "Know the list of people in your circles, your age range, and language"
|
|
},
|
|
"https://www.googleapis.com/auth/plus.me": {
|
|
"description": "Know who you are on Google"
|
|
},
|
|
"https://www.googleapis.com/auth/userinfo.email": {
|
|
"description": "View your email address"
|
|
},
|
|
"https://www.googleapis.com/auth/userinfo.profile": {
|
|
"description": "View your basic profile info"
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"basePath": "/",
|
|
"baseUrl": "https://www.googleapis.com/",
|
|
"batchPath": "batch/oauth2/v1",
|
|
"description": "Obtains end-user authorization grants for use with other Google APIs.",
|
|
"discoveryVersion": "v1",
|
|
"documentationLink": "https://developers.google.com/accounts/docs/OAuth2",
|
|
"etag": "\"Zkyw9ACJZUvcYmlFaKGChzhmtnE/TkH1J9K6o9rjqi4wv2n2-vMkF44\"",
|
|
"icons": {
|
|
"x16": "https://www.gstatic.com/images/branding/product/1x/googleg_16dp.png",
|
|
"x32": "https://www.gstatic.com/images/branding/product/1x/googleg_32dp.png"
|
|
},
|
|
"id": "oauth2:v1",
|
|
"kind": "discovery#restDescription",
|
|
"methods": {
|
|
"getCertForOpenIdConnect": {
|
|
"httpMethod": "GET",
|
|
"id": "oauth2.getCertForOpenIdConnect",
|
|
"path": "oauth2/v1/certs",
|
|
"response": {
|
|
"$ref": "X509"
|
|
}
|
|
},
|
|
"getCertForOpenIdConnectRaw": {
|
|
"httpMethod": "GET",
|
|
"id": "oauth2.getCertForOpenIdConnectRaw",
|
|
"path": "oauth2/v1/raw_public_keys",
|
|
"response": {
|
|
"$ref": "Raw"
|
|
}
|
|
},
|
|
"getRobotJwk": {
|
|
"httpMethod": "GET",
|
|
"id": "oauth2.getRobotJwk",
|
|
"parameterOrder": [
|
|
"robotEmail"
|
|
],
|
|
"parameters": {
|
|
"robotEmail": {
|
|
"description": "The email of robot account.",
|
|
"location": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"path": "service_accounts/v1/jwk/{robotEmail}",
|
|
"response": {
|
|
"$ref": "Jwk"
|
|
}
|
|
},
|
|
"getRobotMetadataRaw": {
|
|
"httpMethod": "GET",
|
|
"id": "oauth2.getRobotMetadataRaw",
|
|
"parameterOrder": [
|
|
"robotEmail"
|
|
],
|
|
"parameters": {
|
|
"robotEmail": {
|
|
"description": "The email of robot account.",
|
|
"location": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"path": "service_accounts/v1/metadata/raw/{robotEmail}",
|
|
"response": {
|
|
"$ref": "Raw"
|
|
}
|
|
},
|
|
"getRobotMetadataX509": {
|
|
"httpMethod": "GET",
|
|
"id": "oauth2.getRobotMetadataX509",
|
|
"parameterOrder": [
|
|
"robotEmail"
|
|
],
|
|
"parameters": {
|
|
"robotEmail": {
|
|
"description": "The email of robot account.",
|
|
"location": "path",
|
|
"required": true,
|
|
"type": "string"
|
|
}
|
|
},
|
|
"path": "service_accounts/v1/metadata/x509/{robotEmail}",
|
|
"response": {
|
|
"$ref": "X509"
|
|
}
|
|
},
|
|
"tokeninfo": {
|
|
"description": "Get token info",
|
|
"httpMethod": "POST",
|
|
"id": "oauth2.tokeninfo",
|
|
"parameters": {
|
|
"access_token": {
|
|
"description": "The oauth2 access token",
|
|
"location": "query",
|
|
"type": "string"
|
|
},
|
|
"id_token": {
|
|
"description": "The ID token",
|
|
"location": "query",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"path": "oauth2/v1/tokeninfo",
|
|
"response": {
|
|
"$ref": "Tokeninfo"
|
|
}
|
|
}
|
|
},
|
|
"name": "oauth2",
|
|
"ownerDomain": "google.com",
|
|
"ownerName": "Google",
|
|
"parameters": {
|
|
"alt": {
|
|
"default": "json",
|
|
"description": "Data format for the response.",
|
|
"enum": [
|
|
"json"
|
|
],
|
|
"enumDescriptions": [
|
|
"Responses with Content-Type of application/json"
|
|
],
|
|
"location": "query",
|
|
"type": "string"
|
|
},
|
|
"fields": {
|
|
"description": "Selector specifying which fields to include in a partial response.",
|
|
"location": "query",
|
|
"type": "string"
|
|
},
|
|
"key": {
|
|
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
|
|
"location": "query",
|
|
"type": "string"
|
|
},
|
|
"oauth_token": {
|
|
"description": "OAuth 2.0 token for the current user.",
|
|
"location": "query",
|
|
"type": "string"
|
|
},
|
|
"prettyPrint": {
|
|
"default": "true",
|
|
"description": "Returns response with indentations and line breaks.",
|
|
"location": "query",
|
|
"type": "boolean"
|
|
},
|
|
"quotaUser": {
|
|
"description": "An opaque string that represents a user for quota purposes. Must not exceed 40 characters.",
|
|
"location": "query",
|
|
"type": "string"
|
|
},
|
|
"userIp": {
|
|
"description": "Deprecated. Please use quotaUser instead.",
|
|
"location": "query",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"protocol": "rest",
|
|
"resources": {
|
|
"userinfo": {
|
|
"methods": {
|
|
"get": {
|
|
"description": "Get user info",
|
|
"httpMethod": "GET",
|
|
"id": "oauth2.userinfo.get",
|
|
"path": "oauth2/v1/userinfo",
|
|
"response": {
|
|
"$ref": "Userinfoplus"
|
|
},
|
|
"scopes": [
|
|
"https://www.googleapis.com/auth/plus.login",
|
|
"https://www.googleapis.com/auth/plus.me",
|
|
"https://www.googleapis.com/auth/userinfo.email",
|
|
"https://www.googleapis.com/auth/userinfo.profile"
|
|
]
|
|
}
|
|
},
|
|
"resources": {
|
|
"v2": {
|
|
"resources": {
|
|
"me": {
|
|
"methods": {
|
|
"get": {
|
|
"description": "Get user info",
|
|
"httpMethod": "GET",
|
|
"id": "oauth2.userinfo.v2.me.get",
|
|
"path": "userinfo/v2/me",
|
|
"response": {
|
|
"$ref": "Userinfoplus"
|
|
},
|
|
"scopes": [
|
|
"https://www.googleapis.com/auth/plus.login",
|
|
"https://www.googleapis.com/auth/plus.me",
|
|
"https://www.googleapis.com/auth/userinfo.email",
|
|
"https://www.googleapis.com/auth/userinfo.profile"
|
|
]
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
},
|
|
"revision": "20180208",
|
|
"rootUrl": "https://www.googleapis.com/",
|
|
"schemas": {
|
|
"Jwk": {
|
|
"id": "Jwk",
|
|
"properties": {
|
|
"keys": {
|
|
"items": {
|
|
"properties": {
|
|
"alg": {
|
|
"default": "RS256",
|
|
"type": "string"
|
|
},
|
|
"e": {
|
|
"type": "string"
|
|
},
|
|
"kid": {
|
|
"type": "string"
|
|
},
|
|
"kty": {
|
|
"default": "RSA",
|
|
"type": "string"
|
|
},
|
|
"n": {
|
|
"type": "string"
|
|
},
|
|
"use": {
|
|
"default": "sig",
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"Raw": {
|
|
"id": "Raw",
|
|
"properties": {
|
|
"keyvalues": {
|
|
"items": {
|
|
"properties": {
|
|
"algorithm": {
|
|
"default": "RSA",
|
|
"type": "string"
|
|
},
|
|
"exponent": {
|
|
"type": "string"
|
|
},
|
|
"keyid": {
|
|
"type": "string"
|
|
},
|
|
"modulus": {
|
|
"type": "string"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"type": "array"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"Tokeninfo": {
|
|
"id": "Tokeninfo",
|
|
"properties": {
|
|
"access_type": {
|
|
"description": "The access type granted with this token. It can be offline or online.",
|
|
"type": "string"
|
|
},
|
|
"audience": {
|
|
"description": "Who is the intended audience for this token. In general the same as issued_to.",
|
|
"type": "string"
|
|
},
|
|
"email": {
|
|
"description": "The email address of the user. Present only if the email scope is present in the request.",
|
|
"type": "string"
|
|
},
|
|
"email_verified": {
|
|
"description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.",
|
|
"type": "boolean"
|
|
},
|
|
"expires_in": {
|
|
"description": "The expiry time of the token, as number of seconds left until expiry.",
|
|
"format": "int32",
|
|
"type": "integer"
|
|
},
|
|
"issued_at": {
|
|
"description": "The issue time of the token, as number of seconds.",
|
|
"format": "int32",
|
|
"type": "integer"
|
|
},
|
|
"issued_to": {
|
|
"description": "To whom was the token issued to. In general the same as audience.",
|
|
"type": "string"
|
|
},
|
|
"issuer": {
|
|
"description": "Who issued the token.",
|
|
"type": "string"
|
|
},
|
|
"nonce": {
|
|
"description": "Nonce of the id token.",
|
|
"type": "string"
|
|
},
|
|
"scope": {
|
|
"description": "The space separated list of scopes granted to this token.",
|
|
"type": "string"
|
|
},
|
|
"user_id": {
|
|
"description": "The obfuscated user id.",
|
|
"type": "string"
|
|
},
|
|
"verified_email": {
|
|
"description": "Boolean flag which is true if the email address is verified. Present only if the email scope is present in the request.",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"Userinfoplus": {
|
|
"id": "Userinfoplus",
|
|
"properties": {
|
|
"email": {
|
|
"description": "The user's email address.",
|
|
"type": "string"
|
|
},
|
|
"family_name": {
|
|
"description": "The user's last name.",
|
|
"type": "string"
|
|
},
|
|
"gender": {
|
|
"description": "The user's gender.",
|
|
"type": "string"
|
|
},
|
|
"given_name": {
|
|
"description": "The user's first name.",
|
|
"type": "string"
|
|
},
|
|
"hd": {
|
|
"description": "The hosted domain e.g. example.com if the user is Google apps user.",
|
|
"type": "string"
|
|
},
|
|
"id": {
|
|
"description": "The obfuscated ID of the user.",
|
|
"type": "string"
|
|
},
|
|
"link": {
|
|
"description": "URL of the profile page.",
|
|
"type": "string"
|
|
},
|
|
"locale": {
|
|
"description": "The user's preferred locale.",
|
|
"type": "string"
|
|
},
|
|
"name": {
|
|
"description": "The user's full name.",
|
|
"type": "string"
|
|
},
|
|
"picture": {
|
|
"description": "URL of the user's picture image.",
|
|
"type": "string"
|
|
},
|
|
"verified_email": {
|
|
"default": "true",
|
|
"description": "Boolean flag which is true if the email address is verified. Always verified because we only return the user's primary email address.",
|
|
"type": "boolean"
|
|
}
|
|
},
|
|
"type": "object"
|
|
},
|
|
"X509": {
|
|
"additionalProperties": {
|
|
"type": "string"
|
|
},
|
|
"id": "X509",
|
|
"type": "object"
|
|
}
|
|
},
|
|
"servicePath": "",
|
|
"title": "Google OAuth2 API",
|
|
"version": "v1"
|
|
} |