# API Usage

Phenix APIs are used with [standard](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Authorization) HTTP Authorization headers.

Use HTTP Basic Authentication with your applicationId and secret. This `Authorization: Basic <string>` should be your `applicationId:secret`, not an authentication token from the edgeAuth library.

For example, in the header:

```
PUT /pcast/channel HTTP/1.1
Host: pcast.phenixrts.com
Accept: application/json
Authorization: Basic YXBwbGljYXRpb25JZDpzZWNyZXQ=
Content-Type: application/json
```

The string following `Authorization: Basic` is simply base64-encoded `applicationId:secret`.

base64 encoding is a reversible encoding. Always use **HTTPS** along with Basic Authentication.

To create an authorization string using your own applicationId and secret:

1. Concatenate your applicationId with a colon and your secret.
2. Base64 encode the resulting string.

For example, if your applicationId is `example.com` and your secret is `Not.a.real.secret007gaH.E-f)z4+9`, the concatenated string would be `example.com:Not.a.real.secret007gaH.E-f)z4+9`.

And the base64-encoded string would be:

`ZXhhbXBsZS5jb206Tm90LmEucmVhbC5zZWNyZXQwMDdnYUguRS1mKXo0Kzk=`.

When using Phenix APIs, your headers would include:

`Authorization: Basic ZXhhbXBsZS5jb206Tm90LmEucmVhbC5zZWNyZXQwMDdnYUguRS1mKXo0Kzk=`.
