Updated on 2022-02-21 GMT+08:00

Creating a Custom Authorizer

Function

This API is used to create a custom authorizer.

URI

The following table lists the HTTP/HTTPS request method and URI of the API.

Table 1 HTTP/HTTPS request method and URI

Request Method

URI

POST

/v1.0/apigw/authorizers

Request

Table 2 Parameter description

Parameter

Mandatory

Type

Description

name

Yes

String

Name of a custom authorizer

The name of a custom authorizer consists of 3–64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed.

type

Yes

String

Type of the custom authorizer, which can be:

  • FRONTEND
  • BACKEND

authorizer_type

Yes

String

Value: FUNC

authorizer_uri

Yes

String

Function URN

identities

No

List

Certification source

ttl

No

Integer

Cache duration

user_data

No

String

User data

Table 3 Parameter description of identities

Parameter

Mandatory

Type

Description

name

Yes

String

Parameter name

location

Yes

String

Parameter location, which can be:

  • HEADER
  • QUERY

Example request:

{
    "name":"Authorizer_9dlh",
    "type":"FRONTEND",
    "authorizer_type":"FUNC",
    "authorizer_uri":"urn:fss:regionexample:dbb5762c88f045c6a1427a952bcae284:function:default:test111",
    "ttl":10,
    "user_data":"aaaa",
    "identities":[
        {
            "name":"Authorization",
            "location":"HEADER"
        }
    ]
}

Response

Table 4 Parameter description

Parameter

Type

Description

id

String

ID of the custom authorizer

name

String

Name of the custom authorizer

type

String

Type of the custom authorizer, which can be:

  • FRONTEND
  • BACKEND

authorizer_type

String

Value: FUNC

authorizer_uri

String

Function URN

identities

Array

Certification source

ttl

Integer

Cache duration

user_data

String

User data

create_time

Time

Time when the custom authorizer is created

Table 5 Parameter description of identities

Parameter

Type

Description

name

String

Parameter name

location

String

Parameter location, which can be:

  • HEADER
  • QUERY

Example response:

{
    "name":"Authorizer_9dlh",
    "type":"FRONTEND",
    "authorizer_type":"FUNC",
    "authorizer_uri":"urn:fss:regionexample:dbb5762c88f045c6a1427a952bcae284:function:default:test111",
    "identities":[
        {
            "name":"Authorization",
            "location":"HEADER",
        }
    ],
    "ttl":10,
    "user_data":"aaaa",
    "id":"7345e3fe4047491ebd8ecb0acd665a4c",
    "create_time":"2020-01-19T11:48:56.576611862Z"
}

Status Codes

Table 6 Status codes

Status Code

Description

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

500

Server Internal Error