# ol.llx.ai.impl.oauth.openai-codex-jvm

## client-id

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/oauth/openai_codex_jvm.clj#L16-L17)

---

## token-url

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/oauth/openai_codex_jvm.clj#L19-L20)

---

## create-authorization-flow

```clojure
(create-authorization-flow)
(create-authorization-flow {:keys [originator redirect-uri]})
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/oauth/openai_codex_jvm.clj#L84-L105)

---

## start-local-oauth-server

```clojure
(start-local-oauth-server expected-state)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/oauth/openai_codex_jvm.clj#L115-L164)

---

## exchange-authorization-code

```clojure
(exchange-authorization-code code verifier)
(exchange-authorization-code code verifier redirect-uri)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/oauth/openai_codex_jvm.clj#L204-L212)

---

## refresh-openai-codex-token

```clojure
(refresh-openai-codex-token refresh-token)
```

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/oauth/openai_codex_jvm.clj#L214-L227)

---

## oauth-provider

[source,window=_blank](https://github.com/outskirtslabs/llx/blob/main/src/ol/llx/ai/impl/oauth/openai_codex_jvm.clj#L229-L244)
