Comments (4)
I'm running into a similar situation, with the API I am interacting with, I can POST /people
to create a user object, and I can refresh the data with GET /people/{id}
But the interface does updates with a POST /people
the same as create, but when an ID is included in the data payload, it's considered an update.
I'd love to be able to do something like the following with {id}
being rewritten to the actual ID value on the update call.
resource "restapi_object" "users" {
path = "/people"
data = jsonencode({
firstName = "John"
lastName = "Doe"
})
update_data = jsonencode({
id = "{id}"
firstName = "John"
lastName = "Doe"
})
}
from terraform-provider-restapi.
Actually just discovered that copy_keys provides functionality for exactly this purpose!
so the fix would be:
provider "restapi" {
uri = "https://dremio.xxx.com/api/v3"
debug = true
write_returns_object = true
create_method = "POST"
update_method = "PUT"
copy_keys = ["id"]
headers = {
"Content-Type" = "application/json"
"Authorization" = "Bearer ..."
}
}
from terraform-provider-restapi.
@ivank I am having the same request but I am really struggling with this option do you perhaps have piece of example code to see how this would work?
from terraform-provider-restapi.
Thanks @ivank, your post saved my life with this use case. Works perfectly for another use case as well with AzureDevops release/definitions's REST API.
I personnaly used the following configuration in the restapi provider
copy_keys = ["id", "revision"]
from terraform-provider-restapi.
Related Issues (20)
- "POST" not working as destroy method HOT 2
- How to build / test local changes to the provider. HOT 3
- import is not documented
- Add support to ignore changes in read-only attributes HOT 2
- Incorrect License Display in GitHub REST API
- How to update predefined resources (already created by default)? HOT 1
- Diff is not shown in case of manual changes outside of terraform
- Error while installing mastercard/restapi v1.18.0: error checking (signature: openpgp: key expired)
- Pulling in data from endpoint with no query parameters?
- Support for different Content-Type / Headers for each method
- Delete API not triggered on destroy (redux)
- [Feature Request] Moving all the parameters from the provider to restapi_object
- Multiple base URIs
- [curl] allow request body, content-type to be provided as strings
- Error: internal validation failed; object ID is not set, but may have been created; this should never happen HOT 1
- terraform import ignore query_string
- restapi_object data is not optional
- Read Data Support Breaks APIs that don't accept a body for GET method HOT 2
- HTTP Method Specific Headers
- Resource not recreated if not found with `read_search`
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from terraform-provider-restapi.