There are two types of connectors in PowerApps:
- tabular ones (those that you can use the name directly as a table, for example, as the Items property of a Gallery. For example:
MySharePointList
- "function" or "API" ones (not an official name, how I like to call them), in which you need to call a function to retrieve a value. For example:
Office365.GetEmails
Currently you can only create custom connectors in the second type, so you cannot, for example, have a custom connector where you would choose a table or some other value.
You can, however, create a custom connector that takes an API key, and when a maker needs to create a new connection, they will need to pass that value, and you can use that value in your API, even if not as a key.
For example, in the API created with the OpenAPI file listed below, it defines an API key called CustomValue
which is passed in the request header, so when you try to create a connection, it will ask you for that, as seen below.

Now every request made from that connection will have the value that you used to create the connection in the header, and it can be read from your custom API to implement your logic.
Hope this helps. You can also create a new feature request in the PowerApps Ideas board to enable this functionality without going through this workaround of using a (fake) security key.
OpenAPI Definition
{
"swagger": "2.0",
"info": {
"title": "StackOverflow53690242",
"description": "Custom connector that requires a parameter when adding to app",
"version": "1.0"
},
"host": "carlosfigueirapowerapps.azurewebsites.net",
"basePath": "/api/",
"schemes": [
"https"
],
"consumes": [],
"produces": [],
"paths": {
"/ConnectorWithParameter": {
"post": {
"responses": {
"default": {
"description": "default",
"schema": {
"type": "object",
"properties": {
"FullName": {
"type": "string",
"description": "FullName"
},
"CustomValue": {
"type": "string",
"description": "CustomValue"
}
}
}
}
},
"summary": "Test",
"description": "Test",
"operationId": "Test",
"parameters": [
{
"name": "body",
"in": "body",
"required": false,
"schema": {
"type": "object",
"properties": {
"FirstName": {
"type": "string",
"description": "FirstName"
},
"LastName": {
"type": "string",
"description": "LastName"
}
}
}
}
]
}
}
},
"definitions": {},
"parameters": {},
"responses": {},
"securityDefinitions": {
"api_key": {
"type": "apiKey",
"in": "header",
"name": "CustomValue"
}
},
"security": [],
"tags": []
}