Theoauth-token object represents a VCS configuration which includes the OAuth connection and the associated OAuth token. This object is used when creating a workspace to identify which VCS connection to use.
List OAuth TokensList all the OAuth Tokens for a given OAuth Client
GET /oauth-clients/:oauth_client_id/oauth-tokens
Parameter Description :oauth_client_idThe ID of the OAuth Client
Query ParametersThis endpoint supports paginationwith standard URL query parameters . Remember to percent-encode[ as%5B and] as%5D if your tooling doesn't automatically encode URLs. If neither pagination query parameters are provided, the endpoint will not be paginated and will return all results.
Parameter Description page[number]Optional. If omitted, the endpoint will return the first page.page[size]Optional. If omitted, the endpoint will return 20 oauth tokens per page.
Sample Request
curl \ --header "Authorization: Bearer $TOKEN" \ https://app.terraform.io/api/v2/oauth-clients/oc-GhHqb5rkeK19mLB8/oauth-tokens Sample Response
{ "data" : [ { "id" : "ot-hmAyP66qk2AMVdbJ" , "type" : "oauth-tokens" , "attributes" : { "created-at" : "2017-11-02T06:37:49.284Z" , "service-provider-user" : "skierkowski" , "has-ssh-key" : false } , "relationships" : { "oauth-client" : { "data" : { "id" : "oc-GhHqb5rkeK19mLB8" , "type" : "oauth-clients" } , "links" : { "related" : "/api/v2/oauth-clients/oc-GhHqb5rkeK19mLB8" } } } , "links" : { "self" : "/api/v2/oauth-tokens/ot-hmAyP66qk2AMVdbJ" } } ] } Show an OAuth TokenGET /oauth-tokens/:id
Parameter Description :idThe ID of the OAuth token to show
Sample Request
curl \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/vnd.api+json" \ --request GET \ https://app.terraform.io/api/v2/oauth-tokens/ot-29t7xkUKiNC2XasL Sample Response
{ "data" : { "id" : "ot-29t7xkUKiNC2XasL" , "type" : "oauth-tokens" , "attributes" : { "created-at" : "2018-08-29T14:07:22.144Z" , "service-provider-user" : "EM26Jj0ikRsIFFh3fE5C" , "has-ssh-key" : false } , "relationships" : { "oauth-client" : { "data" : { "id" : "oc-WMipGbuW8q7xCRmJ" , "type" : "oauth-clients" } , "links" : { "related" : "/api/v2/oauth-clients/oc-WMipGbuW8q7xCRmJ" } } } , "links" : { "self" : "/api/v2/oauth-tokens/ot-29t7xkUKiNC2XasL" } } } Update an OAuth TokenPATCH /oauth-tokens/:id
Parameter Description :idThe ID of the OAuth token to update
Request BodyThis PATCH endpoint requires a JSON object with the following properties as a request payload.
Properties without a default value are required.
Key path Type Default Description data.typestring Must be"oauth-tokens". data.attributes.ssh-keystring Optional. The SSH key
Sample Payload
{ "data" : { "id" : "ot-29t7xkUKiNC2XasL" , "type" : "oauth-tokens" , "attributes" : { "ssh-key" : "..." } } } Sample Request
curl \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/vnd.api+json" \ --request PATCH \ --data @payload.json \ https://app.terraform.io/api/v2/oauth-tokens/ot-29t7xkUKiNC2XasL Sample Response
{ "data" : { "id" : "ot-29t7xkUKiNC2XasL" , "type" : "oauth-tokens" , "attributes" : { "created-at" : "2018-08-29T14:07:22.144Z" , "service-provider-user" : "EM26Jj0ikRsIFFh3fE5C" , "has-ssh-key" : false } , "relationships" : { "oauth-client" : { "data" : { "id" : "oc-WMipGbuW8q7xCRmJ" , "type" : "oauth-clients" } , "links" : { "related" : "/api/v2/oauth-clients/oc-WMipGbuW8q7xCRmJ" } } } , "links" : { "self" : "/api/v2/oauth-tokens/ot-29t7xkUKiNC2XasL" } } } Destroy an OAuth TokenDELETE /oauth-tokens/:id
Parameter Description :idThe ID of the OAuth Token to destroy
Status Response Reason 204 Empty response The OAuth Token was successfully destroyed 404 JSON API error object OAuth Token not found, or user unauthorized to perform action
Sample Request
curl \ --header "Authorization: Bearer $TOKEN" \ --header "Content-Type: application/vnd.api+json" \ --request DELETE \ https://app.terraform.io/api/v2/oauth-tokens/ot-29t7xkUKiNC2XasL