# Push API: Permit Delete

<p class="callout info"><span data-colorid="h5go72n8lk">API access is a paid feature and must be granted by OPSCOM. Email your Account Executive to negotiate access. </span></p>

<span data-colorid="h5go72n8lk">The OPSCOM Controller provides a simple JSON based API to integrate with. Clients use this API to directly feed details about existing paid permits and their changes into OPSCOM from other systems such as Parking apps. </span>

Make sure you set the HTTP Content-Type header to be application/json.

## <span data-colorid="ofvesqd1kh">Making API Requests</span>

### Raw Request:

<div class="columnMacro conf-macro output-block" data-hasbody="true" data-macro-id="d82683ac-7548-4419-a8f9-4dd2f5a2e52e" data-macro-name="column" id="bkmrk-post-%2Fapi%2Foc-toma%2Fv1"><div class="code panel pdl conf-macro output-block" data-hasbody="true" data-macro-id="1fc64da1-381f-48e3-b00f-50af12c700e2" data-macro-name="code"><div class="codeContent panelContent pdl"><div><div class="syntaxhighlighter sh-midnight nogutter  text" id="bkmrk-post-%2Fapi%2Foc-toma%2Fv1-1"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="code"><div class="container" title="Hint: double-click to select code"><div class="line number1 index0 alt2">`POST /api/OC-TOMA/v1/permits/delete HTTP/1.1`</div><div class="line number2 index1 alt1">`Host: controller.operationscommander.io`</div><div class="line number3 index2 alt2">`Accept: application/json`</div><div class="line number4 index3 alt1">`Content-Type: application/json`</div><div class="line number5 index4 alt2">`Cache-Control: no-cache`</div><div class="line number6 index5 alt1"> </div><div class="line number7 index6 alt2">`{`</div><div class="line number8 index7 alt1">`    ``"apiToken": "YOUR-API-TOKEN",`</div><div class="line number9 index8 alt2">`    ``"referenceID": "PREVIOUS-REFERENCE-ID"`</div><div class="line number10 index9 alt1">`}`</div></div></td></tr></tbody></table>

</div></div></div></div></div>### JavaScript Request:

<div class="columnMacro conf-macro output-block" data-hasbody="true" data-macro-id="96733877-01a7-4c30-9e62-30b67dd186b6" data-macro-name="column" id="bkmrk-var%C2%A0request-%3D%C2%A0new%C2%A0xm"><div class="code panel pdl conf-macro output-block" data-hasbody="true" data-macro-id="7e14d279-ff31-4675-9b93-a0241dbe09e9" data-macro-name="code"><div class="codeContent panelContent pdl"><div><div class="syntaxhighlighter sh-midnight nogutter  js"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="code"><div class="container" title="Hint: double-click to select code"><div class="line number1 index0 alt2">`var` `request = ``new` `XMLHttpRequest();`</div><div class="line number2 index1 alt1"> </div><div class="line number3 index2 alt2">`request.open(``'POST'``, ``'<a href="https://controller.operationscommander.io/api/OC-TOMA/v1/permits/delete'">https://controller.operationscommander.io/api/OC-TOMA/v1/permits/delete'</a>``);`</div><div class="line number4 index3 alt1"> </div><div class="line number5 index4 alt2">`request.setRequestHeader(``'Content-Type'``, ``'application/json'``);`</div><div class="line number6 index5 alt1">`request.setRequestHeader(``'Accept'``, ``'application/json'``);`</div><div class="line number7 index6 alt2"> </div><div class="line number8 index7 alt1">`request.onreadystatechange = ``function` `() {`</div><div class="line number9 index8 alt2">`  ``if` `(``this``.readyState === 4) {`</div><div class="line number10 index9 alt1">`    ``console.log(``'Status:'``, ``this``.status);`</div><div class="line number11 index10 alt2">`    ``console.log(``'Headers:'``, ``this``.getAllResponseHeaders());`</div><div class="line number12 index11 alt1">`    ``console.log(``'Body:'``, ``this``.responseText);`</div><div class="line number13 index12 alt2">`  ``}`</div><div class="line number14 index13 alt1">`};`</div><div class="line number15 index14 alt2"> </div><div class="line number16 index15 alt1"> </div><div class="line number17 index16 alt2">`var` `body = {`</div><div class="line number18 index17 alt1">`    ``"apiToken"``: ``"YOUR-API-TOKEN"``,`</div><div class="line number19 index18 alt2">`    ``"referenceID"``: ``"PREVIOUS-REFERENCE-ID"`</div><div class="line number20 index19 alt1">`}`</div><div class="line number21 index20 alt2">`request.send(JSON.stringify(body));`</div></div></td></tr></tbody></table>

</div></div></div></div></div>## <span data-colorid="myfydoxup9">Request Object Attributes</span>

<table class="wrapped confluenceTable tablesorter tablesorter-default" id="bkmrk-attribute-type-limit" role="grid" style="width: 104.524%;"><tbody aria-live="polite" aria-relevant="all"><tr><td style="width: 9.77354%;">**Attribute**</td><td style="width: 8.81633%;">**Type**  
</td><td style="width: 25.2719%;">**Limits**

</td><td style="width: 9.41597%;">**Possible Names**  
</td><td style="width: 46.7223%;">**Description**</td></tr><tr role="row"><td class="confluenceTd" style="width: 9.77354%;">apiToken</td><td class="confluenceTd" style="width: 8.81633%;">String</td><td class="confluenceTd" style="width: 25.2719%;">50-character alphanumeric including dashes

</td><td class="confluenceTd" style="width: 9.41597%;">apiToken</td><td class="confluenceTd" style="width: 46.7223%;">**(Required)** Your supplied API Token.</td></tr><tr role="row"><td class="confluenceTd" style="width: 9.77354%;">Reference ID

</td><td class="confluenceTd" style="width: 8.81633%;">String</td><td class="confluenceTd" style="width: 25.2719%;">50-character alphanumeric including dashes</td><td class="confluenceTd" style="width: 9.41597%;">referenceid

referenceID

reference\_id

</td><td class="confluenceTd" style="width: 46.7223%;">**(Required)** This value is supplied to when the permit push api is successful.

e.g. 1a9b5375-cb75-4c71-9939-eeae550b09ac

</td></tr></tbody></table>

## Successful Response

The response will be a json object. The same reference id will be returned.

*Content-Type: application/json*

<div class="code panel pdl conf-macro output-block" data-hasbody="true" data-macro-id="96c00eaa-6dd9-4f65-aa36-dc5913e60e77" data-macro-name="code" id="bkmrk-%7B-%C2%A0%C2%A0%C2%A0%C2%A0%22status%22%3A%C2%A0%22suc"><div class="codeContent panelContent pdl"><div><div class="syntaxhighlighter sh-midnight nogutter  js" id="bkmrk-%7B-%C2%A0%C2%A0%C2%A0%C2%A0%22status%22%3A%C2%A0%22suc-1"><table border="0" cellpadding="0" cellspacing="0"><tbody><tr><td class="code"><div class="container" title="Hint: double-click to select code"><div class="line number1 index0 alt2">`{`</div><div class="line number2 index1 alt1">`    ``"status"``: ``"success"``,`</div><div class="line number3 index2 alt2">`    ``"reference_id"``: ``"1a9b5375-cb75-4c71-9939-eeae550b09ac"``,`</div><div class="line number4 index3 alt1">`    ``"InternalReferenceID"``: ``"1a9b5375-cb75-4c71-9939-eeae550b09ac"`</div><div class="line number5 index4 alt2">`}`</div></div></td></tr></tbody></table>

</div></div></div></div><div class="columnMacro conf-macro output-block" data-hasbody="true" data-macro-id="96733877-01a7-4c30-9e62-30b67dd186b6" data-macro-name="column" id="bkmrk-"><div class="code panel pdl conf-macro output-block" data-hasbody="true" data-macro-id="7e14d279-ff31-4675-9b93-a0241dbe09e9" data-macro-name="code"><div class="codeContent panelContent pdl"><div><div class="syntaxhighlighter sh-midnight nogutter  js" id="bkmrk--1"></div></div></div></div></div>